* cse.c (cse_insn): Don't lose REG_NON_LOCAL_GOTO note.

From-SVN: r77877
This commit is contained in:
Richard Henderson 2004-02-16 01:39:54 -08:00 committed by Richard Henderson
parent 1472042a4a
commit 9dcb4381bc
2 changed files with 15 additions and 1 deletions

View File

@ -1,3 +1,7 @@
2004-02-16 Richard Henderson <rth@redhat.com>
* cse.c (cse_insn): Don't lose REG_NON_LOCAL_GOTO note.
2004-02-15 Kazu Hirata <kazu@cs.umass.edu>
* config/h8300/h8300.md: Remove unnecessary parallels from

View File

@ -5719,10 +5719,20 @@ cse_insn (rtx insn, rtx libcall_insn)
and hope for the best. */
if (n_sets == 1)
{
rtx new = emit_jump_insn_after (gen_jump (XEXP (src, 0)), insn);
rtx new, note;
new = emit_jump_insn_after (gen_jump (XEXP (src, 0)), insn);
JUMP_LABEL (new) = XEXP (src, 0);
LABEL_NUSES (XEXP (src, 0))++;
/* Make sure to copy over REG_NON_LOCAL_GOTO. */
note = find_reg_note (insn, REG_NON_LOCAL_GOTO, 0);
if (note)
{
XEXP (note, 1) = NULL_RTX;
REG_NOTES (new) = note;
}
delete_insn (insn);
insn = new;