[llvm] [BOLT][AArch64] Handle OpNegateRAState to enable optimizing binaries with pac-ret hardening (PR #120064)

Paschalis Mpeis via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 9 09:05:54 PDT 2025


https://github.com/paschalis-mpeis commented:

Hey Gergely,

Nice refactor. Thanks for the docs, and the work!

Two unresolved topics remain: complexities ([link](https://github.com/llvm/llvm-project/pull/120064#discussion_r1916593521)), and the flag ([link](https://github.com/llvm/llvm-project/pull/120064#discussion_r2088438363)).

For the flag, we went with a negative `disallow-pacret`, which is off by default.

Q1) Do we anticipate additional modes, eg refuse to emit a binary on CFI inconsistencies? If so, we could rename to something like:
`-update-branch-protection={yes|strict|no}`

Q2) Running this by default increases the risk of breakage. I recommend we proceed, monitor, and revert if needed.

Any objections, or other concerns? It'd be great if Meta could take a look; and we can discuss tomorrow during Office Hours.

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


More information about the llvm-commits mailing list