From 293ecd7d19b72360bedb218499d7a604d254b5f4 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Wed, 26 May 1999 06:05:46 +0000 Subject: [PATCH] Check against frame_pointer_rtx not FRAME_POINTER_REGNUM From-SVN: r27165 --- gcc/ChangeLog | 7 +++++++ gcc/flow.c | 10 ++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9bd4023c410..1617a788ba2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +Wed May 26 06:05:10 1999 Nick Clifton + + * 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 * arm.h (NEED_PLT_GOT): Fix mistake in last change. diff --git a/gcc/flow.c b/gcc/flow.c index a519ea8db8c..be1f8d0e23d 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -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