[compiler-rt] [flang] [llvm] [AArch64] fix trampoline implementation: use X15 (PR #126743)

Jameson Nash via llvm-commits llvm-commits at lists.llvm.org
Tue May 20 12:39:37 PDT 2025


================
@@ -1,35 +1,26 @@
-; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+;; Testing that nest uses x15 on all calling conventions (except Arm64EC)
----------------
vtjnash wrote:

> The trampoline is allocated on the stack.

There is nothing about the spec or implementation of trampoline that requires that to be true. In fact, it is much more useful if users such as flang doesn't implement it that way, since macOS prohibits that implementation and I would assume that Windows does as well since XP (https://en.wikipedia.org/wiki/Executable-space_protection#Windows). I therefore don't think it is relevant that arm64ec trampolines cannot be allocated on the stack, since most OS now prohibit that as the implementation anyways.

Exit thunk is the arm64ec implementation term for when the runtime changes back from the aarch64ec to x86_64.

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


More information about the llvm-commits mailing list