aboutsummaryrefslogtreecommitdiff
path: root/gcc/reload.c
diff options
context:
space:
mode:
authorJ"orn Rennecke <amylaar@cygnus.co.uk>1998-07-07 00:18:02 +0000
committerJeff Law <law@gcc.gnu.org>1998-07-06 18:18:02 -0600
commit1b4d8b2b5cd9ba736a378fe89513b535ca75cb26 (patch)
treeab47a0f313355257a9ecb6f7343917c2961a0ddb /gcc/reload.c
parent27da1b4d5a1c30a60a38f725f2119fda88854d88 (diff)
downloadgcc-1b4d8b2b5cd9ba736a378fe89513b535ca75cb26.zip
gcc-1b4d8b2b5cd9ba736a378fe89513b535ca75cb26.tar.gz
gcc-1b4d8b2b5cd9ba736a378fe89513b535ca75cb26.tar.bz2
reload.c (find_equiv_reg): If need_stable_sp is set, check if stack pointer is changed directly.
* reload.c (find_equiv_reg): If need_stable_sp is set, check if stack pointer is changed directly. From-SVN: r20984
Diffstat (limited to 'gcc/reload.c')
-rw-r--r--gcc/reload.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/reload.c b/gcc/reload.c
index ab04ae3..828be56 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -6220,6 +6220,8 @@ find_equiv_reg (goal, insn, class, other, reload_reg_p, goalreg, mode)
if (goal_mem_addr_varies
&& reg_overlap_mentioned_for_reload_p (dest, goal))
return 0;
+ if (xregno == STACK_POINTER_REGNUM && need_stable_sp)
+ return 0;
}
else if (goal_mem && GET_CODE (dest) == MEM
&& ! push_operand (dest, GET_MODE (dest)))