[llvm] [BOLT][AArch64] Preserve tail-call annotation on local trampolines (PR #228105)
Alexandros Lamprineas via llvm-commits
llvm-commits at lists.llvm.org
Sat Oct 3 08:18:54 PDT 2026
labrinea wrote:
> This fixes tail-call trampolines, but the same path can also create trampolines for external branches introduced by #227275. Their `ExternalBranch` annotation should be propagated too.
>
> Additionally, `SymbolTrampolines` is keyed only by target symbol. A tail call and an external branch to the same target could therefore reuse one trampoline. The unsafe case is an external branch reusing a tail-call trampoline, allowing an `x16`/`x17`-clobbering long thunk. The cache should also distinguish the exit classification, or use separate maps.
One thing at a time. #227275 hasn't landed yet, it's only a proposal for now.
https://github.com/llvm/llvm-project/pull/228105
More information about the llvm-commits
mailing list