From 7b0957a710e21a7213256dbfb8509d42ef601680 Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Fri, 24 Sep 1993 19:45:44 +0000 Subject: [PATCH] global.c: (global_alloc): Make sure that it is always possible to eliminate... * global.c: (global_alloc): Make sure that it is always possible to eliminate FRAME_POINTER_REGNUM into HARD_FRAME_POINTER_REGNUM. From-SVN: r5458 --- gcc/global.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gcc/global.c b/gcc/global.c index 967526e..1a9158a 100644 --- a/gcc/global.c +++ b/gcc/global.c @@ -302,10 +302,14 @@ global_alloc (file) SET_HARD_REG_BIT (eliminable_regset, eliminables[i].from); if (! CAN_ELIMINATE (eliminables[i].from, eliminables[i].to) - || (eliminables[i].from == FRAME_POINTER_REGNUM + || (eliminables[i].from == HARD_FRAME_POINTER_REGNUM && (! flag_omit_frame_pointer || FRAME_POINTER_REQUIRED))) SET_HARD_REG_BIT (no_global_alloc_regs, eliminables[i].from); } +#if FRAME_POINTER_REGNUM != HARD_FRAME_POINTER_REGNUM + if (!flag_omit_frame_pointer || FRAME_POINTER_REQUIRED) + SET_HARD_REG_BIT (no_global_alloc_regs, HARD_FRAME_POINTER_REGNUM); +#endif #else SET_HARD_REG_BIT (eliminable_regset, FRAME_POINTER_REGNUM); -- 2.7.4