[PATCH] D73209: [AIX] Implement caller arguments passed in stack memory
Zarko Todorovski via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 29 08:25:58 PST 2020
ZarkoCA added inline comments.
================
Comment at: llvm/lib/Target/PowerPC/PPCISelLowering.cpp:7061
+ const unsigned NumBytes = std::max(LinkageSize + MinParameterSaveAreaSize,
+ CCInfo.getNextStackOffset());
----------------
cebowleratibm wrote:
> ZarkoCA wrote:
> > Does the value given by `CCInfo.getNextStackOffset()` account for the linkage save area? I've found that it doesn't and only gives the size of the PSA when working on the callee side.
> LowerCall_AIX does:
>
> CCInfo.AllocateStack(LinkageSize, PtrByteSize);
> CCInfo.AnalyzeCallOperands(Outs, CC_AIX);
>
> It needs to be done this way so that any stack arguments will get the correct stack offset. When AnalyzeCallOperands is done, the stack offset accounts for the linkage save area.
>
> LowerFormalArguments_AIX should also AllocateStack the linkage save area as well. I think this can be done with the next patch for the callee work.
Got it, missed the part `CCInfo.AllocateStack(LinkageSize, PtrByteSize);` of the code previously.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D73209/new/
https://reviews.llvm.org/D73209
More information about the llvm-commits
mailing list