[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:33 PDT 2024


================
@@ -396,10 +397,11 @@ Function *AArch64Arm64ECCallLowering::buildExitThunk(FunctionType *FT,
     // pointer.
     if (DL.getTypeStoreSize(RetTy) > 8) {
       Args.push_back(IRB.CreateAlloca(RetTy));
+      X64TyOffset++;
     }
   }
 
-  for (auto &Arg : make_range(F->arg_begin() + 1, F->arg_end())) {
+  for (auto [Arg, X64ArgType] : llvm::zip_equal(make_range(F->arg_begin() + 1, F->arg_end()), make_range(X64Ty->param_begin() + X64TyOffset, X64Ty->param_end()))) {
----------------
efriedma-quic wrote:

How did you convince clang-format that this is the best way to write this?

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


More information about the llvm-commits mailing list