[PATCH] D93750: [RISCV] Frame handling for RISC-V V extension.

Hsiangkai Wang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 6 06:49:48 PST 2021


HsiangKai added a comment.

In D93750#2478380 <https://reviews.llvm.org/D93750#2478380>, @jrtc27 wrote:

> One thing I don't understand is why RVV incoming/outgoing arguments need their own stack slots. I assume they're just passed indirectly, so why do we need to distinguish between arguments and locals rather than just treat them like anything else that ends up being passed indirectly?

It seems the existing logic in https://github.com/llvm/llvm-project/blob/4e0e79dd349a208384449fd8dcdc9bf1644ee0f3/llvm/lib/Target/RISCV/RISCVISelLowering.cpp#L3154.

In current RISC-V implementation, if the argument is passed indirectly, it will create a temporary frame object and pass the address of the temporary frame object.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D93750/new/

https://reviews.llvm.org/D93750



More information about the llvm-commits mailing list