If the target requests it, use emptry spaces in the fixed and
callee-save stack area to allocate local stack objects.
AArch64: Change last callee-save reg stack object alignment instead of
size to leave a gap to take advantage of above change.
Differential D20220
[PEI, AArch64] Use empty spaces in stack area for local stack slot allocation. gberry on May 12 2016, 1:32 PM. Authored by
Details If the target requests it, use emptry spaces in the fixed and AArch64: Change last callee-save reg stack object alignment instead of
Diff Detail
Event TimelineComment Actions Hi Geoff, Couple of questions:
Cheers, Comment Actions Hi Quentin,
Comment Actions Hi Geoff, Thanks for your answer, we are on the same page then :). I’ll have a look at the patch shortly. Cheers,
Comment Actions Hi Quentin, Thanks for the review. I believe I've addressed all of the issues you raised, if not just let me know. @t.p.northover Are you okay with the AArch64 specific changes?
Comment Actions Thanks Geoff, the update looks good, just one missing thing. FWIW, the AArch64 changes looks good to me as well. Q.
Comment Actions Thanks Quentin, I'll address the issues you raised shortly.
Comment Actions Since I couldn't spot this in the code: in the scenario where there is one empty reallocate both of them to the empty slot or give up after it reallocated the first object? Thanks
Comment Actions Hi Gerolf, I'm not sure I understand exactly what you're asking, but this change will allocate multiple stack slots to free space in the fixed/CS area. It will assign later slots to this free area even if earlier slots were not assigned there. It will not assign multiple slots to overlapping regions of the fixed/CS area.
Comment Actions Thanks, Geoff. I take back my previous comment. I was worried that when A and B are allocated at stack offset x and this optimization changes x, it would only change it for A but not for B. But looking deeper into the code this is not the case.
Comment Actions Hi Geoff, LGTM. Did not mark it as accepted as you asked Tim to check the AArch64 part + I am not sure what you'd agreed with Gerolf :). Cheers,
Comment Actions I'm going to go ahead and commit this based on Quentin's review. @t.p.northover if you do take a look and have any objections, just let me know and I'll resolve them. |