aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1993-10-11 07:02:09 +0000
committerRichard Stallman <rms@gnu.org>1993-10-11 07:02:09 +0000
commitb803fb99f3fe1ebfc4ddad51c83358256aa28c37 (patch)
tree39bdc519a92b4d385e6f07830a94cf150da27581 /gcc
parentf1c7ce822f2e4d06d5b2a74291b7621bc7610741 (diff)
downloadgcc-b803fb99f3fe1ebfc4ddad51c83358256aa28c37.zip
gcc-b803fb99f3fe1ebfc4ddad51c83358256aa28c37.tar.gz
gcc-b803fb99f3fe1ebfc4ddad51c83358256aa28c37.tar.bz2
(jump_optimize): Use regno_last_note_uid when deciding
From-SVN: r5727
Diffstat (limited to 'gcc')
-rw-r--r--gcc/jump.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/jump.c b/gcc/jump.c
index 7b8094c..f26170f 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -540,7 +540,10 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan)
if (set && GET_CODE (SET_DEST (set)) == REG
&& REGNO (SET_DEST (set)) >= FIRST_PSEUDO_REGISTER
&& regno_first_uid[REGNO (SET_DEST (set))] == INSN_UID (insn)
- && regno_last_uid[REGNO (SET_DEST (set))] == INSN_UID (insn)
+ /* We use regno_last_note_uid so as not to delete the setting
+ of a reg that's used in notes. A subsequent optimization
+ might arrange to use that reg for real. */
+ && regno_last_note_uid[REGNO (SET_DEST (set))] == INSN_UID (insn)
&& ! side_effects_p (SET_SRC (set)))
delete_insn (insn);
}