diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2011-09-18 22:00:52 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2011-09-18 22:00:52 +0000 |
commit | 3903f804302c66b3e06238799577a36cfe403a42 (patch) | |
tree | 6bbc4c576014143611b0cbd0aedb5e2f20c1f765 /gcc/config/rs6000/rs6000.md | |
parent | e0cdd8d4c204592661f161e9be8009355488c46f (diff) | |
download | gcc-3903f804302c66b3e06238799577a36cfe403a42.zip gcc-3903f804302c66b3e06238799577a36cfe403a42.tar.gz gcc-3903f804302c66b3e06238799577a36cfe403a42.tar.bz2 |
re PR target/50091 (-fstack-check generates wrong assembly)
PR target/50091
* config/rs6000/rs6000.md (probe_stack): Use explicit operand.
* config/rs6000/rs6000.c (output_probe_stack_range): Likewise.
Co-Authored-By: Iain Sandoe <developer@sandoe-acoustics.co.uk>
From-SVN: r178944
Diffstat (limited to 'gcc/config/rs6000/rs6000.md')
-rw-r--r-- | gcc/config/rs6000/rs6000.md | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 818456f..3db67a53 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -13049,7 +13049,11 @@ [(set (match_operand 0 "memory_operand" "=m") (unspec [(const_int 0)] UNSPEC_PROBE_STACK))] "" - "{st%U0%X0|stw%U0%X0} 0,%0" + "* +{ + operands[1] = gen_rtx_REG (Pmode, 0); + return \"{st%U0%X0|stw%U0%X0} %1,%0\"; +}" [(set_attr "type" "store") (set_attr "length" "4")]) |