aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephane Carrez <stcarrez@worldnet.fr>2000-03-23 00:05:12 +0100
committerRichard Henderson <rth@gcc.gnu.org>2000-03-22 15:05:12 -0800
commit5d64361bdcda957ce1bb002593d3fb2c0de7df3d (patch)
treeb95c435742f995411de347cbf399ff9cd389d453
parent124906f908a85c2eded9af01cb3e8dbbc1e0f81a (diff)
downloadgcc-5d64361bdcda957ce1bb002593d3fb2c0de7df3d.zip
gcc-5d64361bdcda957ce1bb002593d3fb2c0de7df3d.tar.gz
gcc-5d64361bdcda957ce1bb002593d3fb2c0de7df3d.tar.bz2
regmove.c (combine_stack_adjustments_for_block): Check that the stack pointer is a valid memory address.
* regmove.c (combine_stack_adjustments_for_block): Check that the stack pointer is a valid memory address. From-SVN: r32691
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/regmove.c1
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 820a0da..9fe40d1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-03-21 Stephane Carrez <stcarrez@worldnet.fr>
+
+ * regmove.c (combine_stack_adjustments_for_block): Check that
+ the stack pointer is a valid memory address.
+
Wed Mar 22 11:44:50 MET 2000 Jan Hubicka <jh@suse.cz>
* calls.c: re-install Mar 16 emit_library_call merge.
diff --git a/gcc/regmove.c b/gcc/regmove.c
index 8e59c69..932e850 100644
--- a/gcc/regmove.c
+++ b/gcc/regmove.c
@@ -2361,6 +2361,7 @@ combine_stack_adjustments_for_block (bb)
&& GET_CODE (XEXP (dest, 0)) == PRE_DEC
&& XEXP (XEXP (dest, 0), 0) == stack_pointer_rtx
&& ! reg_mentioned_p (stack_pointer_rtx, src)
+ && memory_address_p (GET_MODE (dest), stack_pointer_rtx)
&& validate_change (insn, &SET_DEST (set),
change_address (dest, VOIDmode,
stack_pointer_rtx), 0))