[libunwind] [libunwind] Add GCS support for AArch64 (PR #99335)

Daniel Kiss via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 5 08:04:42 PDT 2024


================
@@ -680,7 +680,7 @@ DEFINE_LIBUNWIND_FUNCTION(__libunwind_Registers_arm64_jumpto)
   ldr    x16,     [x0, #0x0F8]
   ldp    x0, x1,  [x0, #0x000]  // restore x0,x1
   mov    sp,x16                 // restore sp
-  ret    x30                    // jump to pc
----------------
DanielKristofKiss wrote:

If the application is compiled with BTI then `br x30` will cause an exception as it jumps to a non landing pad instruction.
(We only generate landing pads for `return-twice` locations but a normal `catch` block won't get it)

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


More information about the cfe-commits mailing list