calls.c
161 KB
-
PR 69246: Invalid REG_ARGS_SIZE for sibcalls · a00fe3b7
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
Richard Sandiford committed