diff options
author | J"orn Rennecke <amylaar@cygnus.co.uk> | 1998-07-09 10:06:18 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 1998-07-09 11:06:18 +0100 |
commit | 930176e7428909c810999ab767ac367cfc444a36 (patch) | |
tree | 3719354d34552cb42706792ce211dd8c60c93359 /gcc | |
parent | 1eb6762bcca0bc9c3035f788a435e014fb2757d3 (diff) | |
download | gcc-930176e7428909c810999ab767ac367cfc444a36.zip gcc-930176e7428909c810999ab767ac367cfc444a36.tar.gz gcc-930176e7428909c810999ab767ac367cfc444a36.tar.bz2 |
reload.c (find_equiv_reg): If need_stable_sp is set, check if stack pointer is changed directly in a PARALLEL.
* reload.c (find_equiv_reg): If need_stable_sp is set,
check if stack pointer is changed directly in a PARALLEL.
From-SVN: r21033
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/reload.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e93fe29..e359a9c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Thu Jul 9 18:01:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk> + + * reload.c (find_equiv_reg): If need_stable_sp is set, + check if stack pointer is changed directly in a PARALLEL. + Thu Jul 9 10:38:14 1998 Jeffrey A Law (law@cygnus.com) * jump.c (duplicate_loop_exit_test): Fix thinko. diff --git a/gcc/reload.c b/gcc/reload.c index 0b76bb7..1461cad 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -6272,6 +6272,8 @@ find_equiv_reg (goal, insn, class, other, reload_reg_p, goalreg, mode) && 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))) |