[PATCH] D125419: [Arm64EC 7/?] clang side of Arm64EC varargs ABI.

Eli Friedman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 2 13:54:34 PDT 2022


efriedma added inline comments.


================
Comment at: clang/lib/CodeGen/TargetInfo.cpp:2457
+                    /*IsVectorCall=*/false, /*IsRegCall=*/false);
+  }
+
----------------
rjmccall wrote:
> Hmm.  Doesn't EC ABI lowering need to preserve this same state, or else you'll get incompatibilities when you exhaust SSE registers?
> 
> Should you just be calling over to this at a higher-level point, like in `computeInfo`?
If both IsVectorCall and IsRegCall are false, WinX86_64ABIInfo doesn't use FreeSSERegs, so we don't need to preserve its state.  There isn't any other relevant state to preserve.

Return values follow the Arm64 ABI rules, not the x64 rules, so using computeInfo() as an entry point doesn't really make sense.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D125419



More information about the cfe-commits mailing list