diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2016-01-15 14:41:10 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2016-01-15 14:41:10 +0000 |
commit | a00fe3b787de1916bed415c57024d49bbe81cb1c (patch) | |
tree | fa57a9eddd888c9241714cfcc44471d4d36211f8 /libgomp/ChangeLog | |
parent | aea40b08771af69bb9b5e582e6147c3154e56abe (diff) | |
download | gcc-a00fe3b787de1916bed415c57024d49bbe81cb1c.zip gcc-a00fe3b787de1916bed415c57024d49bbe81cb1c.tar.gz gcc-a00fe3b787de1916bed415c57024d49bbe81cb1c.tar.bz2 |
PR 69246: Invalid REG_ARGS_SIZE for sibcalls
The problem in this PR was that we were treating a sibcall as popping
arguments, leading to a negative REG_ARGS_SIZE.
It doesn't really make sense to treat sibcalls as popping since
(a) they're deallocating the caller's stack, not ours, and
(b) there are no optabs for popping sibcalls (any more).
Tested on x86_64-linux-gnu.
gcc/
PR middle-end/69246
* calls.c (emit_call_1): Force n_popped to zero for sibcalls.
gcc/testsuite/
PR middle-end/69246
* gcc.target/i386/pr69246.c: New test.
From-SVN: r232428
Diffstat (limited to 'libgomp/ChangeLog')
0 files changed, 0 insertions, 0 deletions