[Bug rtl-optimization/67226] Incorrect code generated for tail call, where parameters are structs passed by value, -O2 is used, and target is ARM
ktkachov at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Nov 26 11:40:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67226
--- Comment #9 from ktkachov at gcc dot gnu.org ---
Author: ktkachov
Date: Thu Nov 26 11:40:16 2015
New Revision: 230937
URL: https://gcc.gnu.org/viewcvs?rev=230937&root=gcc&view=rev
Log:
[calls.c] PR rtl-optimization/67226: Take into account pretend_args_size when
checking stack offsets for sibcall optimisation
Backport from mainline
2015-11-26 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Bernd Schmidt <bschmidt@redhat.com>
PR rtl-optimization/67226
* calls.c (store_one_arg): Take into account
crtl->args.pretend_args_size when checking for overlap between
arg->value and argblock + arg->locate.offset during sibcall
optimization.
* gcc.c-torture/execute/pr67226.c: New test.
Added:
branches/gcc-4_9-branch/gcc/testsuite/gcc.c-torture/execute/pr67226.c
Modified:
branches/gcc-4_9-branch/gcc/ChangeLog
branches/gcc-4_9-branch/gcc/calls.c
branches/gcc-4_9-branch/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list