[clang] [amdgpu] Pass variadic arguments without splitting (PR #94083)
Matt Arsenault via cfe-commits
cfe-commits at lists.llvm.org
Fri May 31 23:36:20 PDT 2024
================
@@ -197,12 +202,20 @@ ABIArgInfo AMDGPUABIInfo::classifyKernelArgumentType(QualType Ty) const {
return ABIArgInfo::getDirect(LTy, 0, nullptr, false);
}
-ABIArgInfo AMDGPUABIInfo::classifyArgumentType(QualType Ty,
+ABIArgInfo AMDGPUABIInfo::classifyArgumentType(QualType Ty, bool Variadic,
unsigned &NumRegsLeft) const {
assert(NumRegsLeft <= MaxNumRegsForArgsRet && "register estimate underflow");
Ty = useFirstFieldIfTransparentUnion(Ty);
+ if (Variadic) {
----------------
arsenm wrote:
Wouldn't we still want to follow the isAggregateTypeForABI rules? Large structs should still go through byref?
https://github.com/llvm/llvm-project/pull/94083
More information about the cfe-commits
mailing list