[PATCH] D35006: [AArch64] Implement support for windows style vararg functions

Tim Northover via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 6 18:04:47 PDT 2017


t.p.northover added a comment.

I've thought some more and it seems pretty clear now that the difference is exactly that extra GPRSaveSize in FrameLowering. That needs to be incorporated into LLVM's view of the stack size and layout.

I think just using the correct offset in CreateFixedObject will do it for the size (though this is a pretty hazy memory from when I looked in detail multiple years ago so take it with a pinch of salt). That leaves the layout as the real problem: you can probably skip the emitFrameOffset but you need to convince FrameLowering to leave a gap before storing the callee-saved registers instead.


https://reviews.llvm.org/D35006





More information about the llvm-commits mailing list