[llvm] [aarch64] Mix the frame pointer with the stack cookie when protecting the stack (PR #197346)

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Mon May 25 19:48:13 PDT 2026


================
@@ -15,12 +15,15 @@ define void @caller() sspreq {
 ; CHECK-NEXT:    adrp x8, __security_cookie
 ; CHECK-NEXT:    add x0, sp, #4
 ; CHECK-NEXT:    ldr x8, [x8, :lo12:__security_cookie]
+; CHECK-NEXT:    sub x8, sp, x8
 ; CHECK-NEXT:    str x8, [sp, #8]
 ; CHECK-NEXT:    bl callee
-; CHECK-NEXT:    adrp x8, __security_cookie
 ; CHECK-NEXT:    ldr x9, [sp, #8]
-; CHECK-NEXT:    ldr x8, [x8, :lo12:__security_cookie]
-; CHECK-NEXT:    cmp x8, x9
+; CHECK-NEXT:    adrp x10, __security_cookie
+; CHECK-NEXT:    mov x8, sp
----------------
efriedma-quic wrote:

It also seems to be introducing other side-effects... why is this having much wider impact than the original change in #161114?

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


More information about the llvm-commits mailing list