[llvm] [RISCV][GlobalISel] Lower calls to variadic functions (PR #68271)

Michael Maitland via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 4 16:13:09 PDT 2023


michaelmaitland wrote:

In ISelLowering it looks like we do give some care to varargs.

* If all registers are allocated, then all varargs must be passed on the stack and don't need to save any argregs
* record the frame index of the first variable argument which is a value necessary to VASTART.
* if saving an odd number of registers then create an extra stack slot to ensure that the frame pointer is correctly aligned
* copy the integer register that may have been used for passing varargs to the vararg save area

Why don't we need this in GISel?

https://github.com/llvm/llvm-project/pull/68271


More information about the llvm-commits mailing list