[llvm] [ARM64EC] Fix thunks for vector args (PR #96003)

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 18 16:55:34 PDT 2024


================
@@ -414,8 +416,7 @@ Function *AArch64Arm64ECCallLowering::buildExitThunk(FunctionType *FT,
     // with an attribute.)
     //
     // The first argument is the called function, stored in x9.
-    if (Arg.getType()->isArrayTy() || Arg.getType()->isStructTy() ||
-        DL.getTypeStoreSize(Arg.getType()) > 8) {
+    if (Arg.getType() != X64ArgType) {
----------------
efriedma-quic wrote:

If the translation here is going to get more complicated, maybe we should consider making getThunkType explicitly return whether the argument is supposed to be passed indirectly, rather than trying to infer it like this.

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


More information about the llvm-commits mailing list