diff options
author | Doug Evans <dje@gnu.org> | 1993-09-24 19:42:16 +0000 |
---|---|---|
committer | Doug Evans <dje@gnu.org> | 1993-09-24 19:42:16 +0000 |
commit | b37f453b2a825e6d8d1dbb4b9fef5edbba9a5f8d (patch) | |
tree | c655b999f47720d97bf58326ab8ac7489269d5bf | |
parent | 73a187c146fc166d75bbcacccfb8470b455fdfca (diff) | |
download | gcc-b37f453b2a825e6d8d1dbb4b9fef5edbba9a5f8d.zip gcc-b37f453b2a825e6d8d1dbb4b9fef5edbba9a5f8d.tar.gz gcc-b37f453b2a825e6d8d1dbb4b9fef5edbba9a5f8d.tar.bz2 |
function.c: (instantiate_virtual_regs_1...
* function.c: (instantiate_virtual_regs_1, case MEM): references to
MEM via the hard frame pointer shouldn't be copied.
From-SVN: r5456
-rw-r--r-- | gcc/function.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/function.c b/gcc/function.c index 1a3a375..f023d4fb 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -2604,12 +2604,18 @@ instantiate_virtual_regs_1 (loc, object, extra_insns) #if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM || temp == arg_pointer_rtx #endif +#if HARD_FRAME_POINTER_REGNUM != FRAME_POINTER_REGNUM + || temp == hard_frame_pointer_rtx +#endif || temp == frame_pointer_rtx) return 1; if (GET_CODE (temp) == PLUS && CONSTANT_ADDRESS_P (XEXP (temp, 1)) && (XEXP (temp, 0) == frame_pointer_rtx +#if HARD_FRAME_POINTER_REGNUM != FRAME_POINTER_REGNUM + || XEXP (temp, 0) == hard_frame_pointer_rtx +#endif #if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM || XEXP (temp, 0) == arg_pointer_rtx #endif |