[cfe-commits] Alignment of return from __builtin_alloca
mcrosier at apple.com
Thu Jun 7 17:46:26 PDT 2012
On Jun 7, 2012, at 5:22 PM, Jakob Stoklund Olesen wrote:
> On Jun 7, 2012, at 4:33 PM, Chandler Carruth <chandlerc at google.com> wrote:
>> However, it does seem like this should be no more than an 'and' instruction in the worst case (we don't have known alignment of the stack).
> Realigning the stack requires the function to have a frame pointer, so frame pointer elimination is no longer possible. If you have dynamically sized allocas, a reserved base pointer register is also necessary.
> Reserving 2 out of 7 registers on x86 can have quite the performance impact.
> Base pointer support is quite new, BTW.
Very new: http://llvm.org/viewvc/llvm-project?rev=158087&view=rev
> Previously, we simply refused to compile functions that required stack realignment and dynamic allocas.
Actually, clang was silently miscompiling the code. :/
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the cfe-commits