diff options
author | Wilco Dijkstra <wdijkstr@arm.com> | 2017-07-26 10:49:17 +0000 |
---|---|---|
committer | Wilco Dijkstra <wilco@gcc.gnu.org> | 2017-07-26 10:49:17 +0000 |
commit | e17114487df7f90d8e015efad697a3cc93845b90 (patch) | |
tree | 9f02cf54fd2ecd11c81775e3027fc7f58fa5b76d /gcc/tree.c | |
parent | 108c3c88d7273be093ff1431760bff5774381ac1 (diff) | |
download | gcc-e17114487df7f90d8e015efad697a3cc93845b90.zip gcc-e17114487df7f90d8e015efad697a3cc93845b90.tar.gz gcc-e17114487df7f90d8e015efad697a3cc93845b90.tar.bz2 |
Fix PR46932: Block auto increment on frame pointer
Block auto increment on frame pointer references. This is never
beneficial since the SFP expands into SP+C or FP+C during register
allocation. The generated code for the testcase is now as expected:
str x30, [sp, -32]!
strb w0, [sp, 31]
add x0, sp, 31
bl foo3
ldr x30, [sp], 32
ret
gcc/
PR middle-end/46932
* auto-inc-dec.c (parse_add_or_inc): Block autoinc on sfp.
gcc/testsuite/
PR middle-end/46932
* gcc.dg/pr46932.c: New testcase.
From-SVN: r250564
Diffstat (limited to 'gcc/tree.c')
0 files changed, 0 insertions, 0 deletions