aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1999-10-21 04:59:40 +0000
committerJeff Law <law@gcc.gnu.org>1999-10-20 22:59:40 -0600
commit0ecba966187c6b806ed4573b39708c83501b601e (patch)
treee1cb9e1439c0404eefd7f8f106451534a4b5cfd7
parentab34d5f5c611595e84f58e01e343a9e9cf9fd10e (diff)
local-alloc.c (update_equiv_regs): Check the correct insn for pre-existing REG_EQUIV notes.
* local-alloc.c (update_equiv_regs): Check the correct insn for pre-existing REG_EQUIV notes. Fix the sparc tetex bug. From-SVN: r30110
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/local-alloc.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 587dbbca168..3084634761b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Wed Oct 20 22:57:58 1999 Jeffrey A Law (law@cygnus.com)
+
+ * local-alloc.c (update_equiv_regs): Check the correct insn
+ for pre-existing REG_EQUIV notes.
+
Tue Oct 19 02:03:00 1999 Jeffrey A Law (law@cygnus.com)
Revert this change. Gavin's patch to operand_equal_p is a better fix.
diff --git a/gcc/local-alloc.c b/gcc/local-alloc.c
index d1df595c4c1..2fc3aec4977 100644
--- a/gcc/local-alloc.c
+++ b/gcc/local-alloc.c
@@ -759,7 +759,8 @@ update_equiv_regs ()
&& REG_N_SETS (regno) == 1
&& reg_equiv_init_insns[regno] != 0
&& reg_equiv_init_insns[regno] != const0_rtx
- && ! find_reg_note (insn, REG_EQUIV, NULL_RTX)
+ && ! find_reg_note (XEXP (reg_equiv_init_insns[regno], 0),
+ REG_EQUIV, NULL_RTX)
&& ! contains_replace_regs (XEXP (dest, 0), reg_equiv_replace))
{
rtx init_insn = XEXP (reg_equiv_init_insns[regno], 0);