[llvm] [GISel][RISCV]Implement indirect parameter passing (PR #95429)
Sergei Barannikov via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 17 12:57:50 PDT 2024
================
@@ -802,11 +847,16 @@ bool CallLowering::handleAssignments(ValueHandler &Handler,
Register StackAddr = Handler.getStackAddress(
MemTy.getSizeInBytes(), VA.getLocMemOffset(), MPO, Flags);
+ // Finish the handling of indirect passing from the passers
+ // (OutgoingParameterHandler) side.
+ // This branch is needed, so the pointer to the value is loaded onto the
+ // stack.
+ if (IndirectParameterPassingHandled) {
----------------
s-barannikov wrote:
Also, it looks like StackAddr created just above should be different for Indirect case (MemTy should be replaced by PointerTy). It should affect the size of the stack object created for the pointer. (Unfortunately, stack objects are not verified by autogenerated checks.)
https://github.com/llvm/llvm-project/pull/95429
More information about the llvm-commits
mailing list