summaryrefslogtreecommitdiff
path: root/gcc/regmove.c
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 /gcc/regmove.c
parent124906f908a85c2eded9af01cb3e8dbbc1e0f81a (diff)
downloadgcc-5d64361bdcda957ce1bb002593d3fb2c0de7df3d.tar.gz
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
Diffstat (limited to 'gcc/regmove.c')
-rw-r--r--gcc/regmove.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/regmove.c b/gcc/regmove.c
index 8e59c69ce77..932e8503fce 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))