[llvm] [AArch64] Emit async PAuth epilogue CFI for outlined functions (PR #189924)

Gergely Bálint via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 10 01:08:43 PDT 2026


https://github.com/bgergely0 approved this pull request.

Hi Amina,

I tried this with my original BOLT test case, and now the same codegen is correct at the outlined function.
For context: this in a build of clang-19, where we have an `autiasp` followed by an outlined block. This autiasp should have the `.cfi_negate_ra_state`. Without this patch, it did not, now it does.
```
 73cbea8: f94013f3      ldr     x19, [sp, #0x20]
 73cbeac: 9100c3ff      add     sp, sp, #0x30
 73cbeb0: d50323bf      autiasp
// needs a negate-ra-state here.
 73cbeb4: 1402bd9f      b       0x747b530 <OUTLINED_FUNCTION_0>
 73cbeb8: 949e1516      bl      0x9b51310 <__stack_chk_fail at plt>
```

The test case modified also makes sense to me. 

One thing I'm not sure about is _why_ actually the change does what it does (why it influences outlined functions).

Approving, but it would be great if someone else with more experience around this part could also check it before merging.

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


More information about the llvm-commits mailing list