[compiler-rt] [flang] [llvm] [AArch64] fix trampoline implementation: use X15 (PR #126743)
Eli Friedman via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 16 15:34:45 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:
Right, the x15 thing isn't a fundamental limitation; it's just a bit complicated to generate the correct code, and the author of the preservenonecc code didn't want to try to implement it.
For the x9 thing, see #99434 .
https://github.com/llvm/llvm-project/pull/126743
More information about the llvm-commits
mailing list