On 07/13/2015 11:03 AM, Uros Bizjak wrote:
This is rtl-optimization part of a two-part patch series.
As discussed in the PR, we have to prcompute register parameters
before stack alignment is performed, otherwise eventual call to
__tls_get_addr can be called with unaligned stack. When compiling the
testcase from the PR, anti_adjust_stack is called just before
precompute starts expanding function parameters.
The solution is to move precomputation before stack pointer is adjusted.
2015-07-13 Uros Bizjak <ubiz...@gmail.com>
PR rtl-optimization/58066
* calls.c (expand_call): Precompute register parameters before stack
alignment is performed.
Patch was bootstrapped and regression tested on x86_64-linux-gnu
{,-m32} for all default languages, obj-c++ and go.
OK for mainline?
OK once a comment is added indicating why we have to precompute before
the anti-adjust-stack.
jeff