[compiler-rt] [flang] [llvm] [AArch64] fix trampoline implementation: use X15 (PR #126743)
Eli Friedman via llvm-commits
llvm-commits at lists.llvm.org
Tue May 13 14:00:05 PDT 2025
================
@@ -523,6 +537,7 @@ def CC_AArch64_Preserve_None : CallingConv<[
// We can pass arguments in all general registers, except:
// - X8, used for sret
// - X16/X17, used by the linker as IP0/IP1
+ // - X15, the nest register and used by Windows for stack allocation
----------------
efriedma-quic wrote:
We prefer intrinsics use standardized attributes/semantics to avoid scattering special cases all over, but we do have checks for specific intrinsics in certain cases.
For constructs which could have well-defined semantics on some other backend, but can't be lowered by some particular backend (like weird calling conventions), we usually just have the backend report an error, though.
https://github.com/llvm/llvm-project/pull/126743
More information about the llvm-commits
mailing list