This patch handles vector type and tuple type arguments
calling convention. Vector type arguments can be passed
directly by register or by reference, however tuple type
arguments are split into multiple vector type arguments,
all of these arguments should be either passed by references
or passed by registers.
Details
Details
- Reviewers
lhtin kito-cheng asb craig.topper reames
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
RVVArgDispatcher is the class used to compute and maximize the register usage by using the vector argument information placed in std::vector<RVVArgInfo>, it's both used by frontend and backend.
Currently I'm not sure where is the better file to place this class, so I just place it in RISCVTargetParser.h.