summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/cse.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4af2b9288dc..e7a93937b1c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2003-11-27 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * cse.c (cse_set_around_loop): When changing a constant load
+ to a register -register copy, add a REG_EQUAL note.
+
2003-11-27 Randolph Chung <tausq@debian.org>
John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
diff --git a/gcc/cse.c b/gcc/cse.c
index 7612a5a7ed5..faaf187b32c 100644
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -6676,6 +6676,10 @@ cse_set_around_loop (rtx x, rtx insn, rtx loop_start)
}
else
{
+ if (CONSTANT_P (SET_SRC (set))
+ && ! find_reg_equal_equiv_note (insn))
+ set_unique_reg_note (insn, REG_EQUAL,
+ SET_SRC (set));
if (control_flow_insn_p (p))
/* p can cause a control flow transfer so it
is the last insn of a basic block. We can't