aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJ"orn Rennecke <joern.rennecke@superh.com>2003-11-27 21:45:26 +0000
committerJoern Rennecke <amylaar@gcc.gnu.org>2003-11-27 21:45:26 +0000
commitf3ea0706841c3e1fa9d4e7d3e238c05d6306188d (patch)
tree2d746e7a8a20d3c0e9cbb9a75fe5860b8165a125
parenta3d4c92f8a6d06118358fda1fe17f948acb94d21 (diff)
downloadgcc-f3ea0706841c3e1fa9d4e7d3e238c05d6306188d.zip
gcc-f3ea0706841c3e1fa9d4e7d3e238c05d6306188d.tar.gz
gcc-f3ea0706841c3e1fa9d4e7d3e238c05d6306188d.tar.bz2
cse.c (cse_set_around_loop): When changing a constant load to a register -register copy, add a REG_EQUAL note.
* cse.c (cse_set_around_loop): When changing a constant load to a register -register copy, add a REG_EQUAL note. From-SVN: r74007
-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 4af2b92..e7a9393 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 7612a5a..faaf187 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