Check against frame_pointer_rtx not FRAME_POINTER_REGNUM
authornickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 26 May 1999 06:05:46 +0000 (06:05 +0000)
committernickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 26 May 1999 06:05:46 +0000 (06:05 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27165 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/flow.c

index 9bd4023..1617a78 100644 (file)
@@ -1,3 +1,10 @@
+Wed May 26 06:05:10 1999  Nick Clifton  <nickc@cygnus.com>
+
+       * flow.c (insn_dead_p): Check against frame_pointer_rtx not
+       FRAME_POINTER_REGNUM. 
+       (mark_set_1): Ditto.
+       (mark_used_regs): Ditto.
+
 Wed May 26 02:19:31 1999  Philip Blundell  <pb@nexus.co.uk>
 
        * arm.h (NEED_PLT_GOT): Fix mistake in last change.
index a519ea8..be1f8d0 100644 (file)
@@ -2957,7 +2957,7 @@ insn_dead_p (x, needed, call_ok, notes)
          /* Don't delete insns to set global regs.  */
          if ((regno < FIRST_PSEUDO_REGISTER && global_regs[regno])
              /* Make sure insns to set frame pointer aren't deleted.  */
-             || regno == FRAME_POINTER_REGNUM
+             || r == frame_pointer_rtx
 #if FRAME_POINTER_REGNUM != HARD_FRAME_POINTER_REGNUM
              || regno == HARD_FRAME_POINTER_REGNUM
 #endif
@@ -3268,7 +3268,8 @@ mark_set_1 (needed, dead, x, insn, significant)
     mem_set_list = gen_rtx_EXPR_LIST (VOIDmode, reg, mem_set_list);
 
   if (GET_CODE (reg) == REG
-      && (regno = REGNO (reg), regno != FRAME_POINTER_REGNUM)
+      && reg != frame_pointer_rtx
+      && (regno = REGNO (reg), 1)
 #if FRAME_POINTER_REGNUM != HARD_FRAME_POINTER_REGNUM
       && regno != HARD_FRAME_POINTER_REGNUM
 #endif
@@ -3733,7 +3734,7 @@ mark_used_regs (needed, live, x, final, insn)
 #if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM
                || (regno == ARG_POINTER_REGNUM && fixed_regs[regno])
 #endif
-               || regno == FRAME_POINTER_REGNUM)
+               || (x == frame_pointer_rtx))
              {
                /* If this is a register we are going to try to eliminate,
                   don't mark it live here.  If we are successful in
@@ -3909,7 +3910,8 @@ mark_used_regs (needed, live, x, final, insn)
        if ((GET_CODE (testreg) == PARALLEL
             && GET_MODE (testreg) == BLKmode)
            || (GET_CODE (testreg) == REG
-               && (regno = REGNO (testreg), regno != FRAME_POINTER_REGNUM)
+               && testreg != frame_pointer_rtx
+               && (regno = REGNO (testreg), 1)
 #if FRAME_POINTER_REGNUM != HARD_FRAME_POINTER_REGNUM
                && regno != HARD_FRAME_POINTER_REGNUM
 #endif