[llvm] Revert "[AArch64] Correct position of CFI Instruction for Pointer Authentication (#121559) (PR #137795)

Peter Smith via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 29 06:55:43 PDT 2025


smithp35 wrote:

I've raised https://github.com/ARM-software/abi-aa/issues/327 to cover the problem with `.cfi_negate_ra_state_with_pc`. The intention is that we'll propose a replacement for `.cfi_negate_ra_state_with_pc` and then deprecate it.

The consensus among the people discussing the ABI was that it was worth replacing `.cfi_negate_ra_state_with_pc` rather than attempting to fix it up. I did offer to change the ABI description as in your second bullet point [1] although there wasn't much enthusiasm for that given that it would be soon deprecated.

I don't have a strong preference on whether the revert is for both directives or just `.cfi_negate_ra_state` . My understanding is that due to lack of hardware there is unlikely to be existing code in production that uses `.cfi_negate_ra_state_with_pc` but there is for `.cfi_negate_ra_state`

[1] 
>Change the ABI to make it clear that the unwind opcode must be associated with the PC of the instruction after the PAC instruction. Then commit this revert along with a libunwind change to apply a 4-byte offset to the captured PC, so that exception unwinding continues to work




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


More information about the llvm-commits mailing list