@@ -118,31 +118,27 @@ define dso_local void @sspFunc() #0 {
118118; CHECK-NEXT: // %bb.0: // %entry
119119; CHECK-NEXT: sub sp, sp, #32
120120; CHECK-NEXT: .seh_stackalloc 32
121- ; CHECK-NEXT: str x19, [sp, #16] // 8-byte Spill
122- ; CHECK-NEXT: .seh_save_reg x19, 16
123- ; CHECK-NEXT: str x30, [sp, #24] // 8-byte Spill
124- ; CHECK-NEXT: .seh_save_reg x30, 24
121+ ; CHECK-NEXT: str x30, [sp, #16] // 8-byte Spill
122+ ; CHECK-NEXT: .seh_save_reg x30, 16
125123; CHECK-NEXT: .seh_endprologue
126- ; CHECK-NEXT: adrp x19, .refptr.__stack_chk_guard
127- ; CHECK-NEXT: mov x9, sp
124+ ; CHECK-NEXT: adrp x8, .refptr.__stack_chk_guard
128125; CHECK-NEXT: add x0, sp, #7
129- ; CHECK-NEXT: ldr x19 , [x19 , :lo12:.refptr.__stack_chk_guard]
130- ; CHECK-NEXT: ldr x8, [x19 ]
131- ; CHECK-NEXT: eor x8, x8, x9
126+ ; CHECK-NEXT: ldr x8 , [x8 , :lo12:.refptr.__stack_chk_guard]
127+ ; CHECK-NEXT: ldr x8, [x8 ]
128+ ; CHECK-NEXT: sub x8, sp, x8
132129; CHECK-NEXT: str x8, [sp, #8]
133130; CHECK-NEXT: bl ptrUser
131+ ; CHECK-NEXT: adrp x8, .refptr.__stack_chk_guard
132+ ; CHECK-NEXT: ldr x8, [x8, :lo12:.refptr.__stack_chk_guard]
134133; CHECK-NEXT: ldr x9, [sp, #8]
135- ; CHECK-NEXT: mov x8, sp
136- ; CHECK-NEXT: ldr x10, [x19]
137- ; CHECK-NEXT: eor x8, x9, x8
138- ; CHECK-NEXT: cmp x10, x8
134+ ; CHECK-NEXT: ldr x8, [x8]
135+ ; CHECK-NEXT: sub x8, sp, x8
136+ ; CHECK-NEXT: cmp x8, x9
139137; CHECK-NEXT: b.ne .LBB6_2
140138; CHECK-NEXT: // %bb.1: // %entry
141139; CHECK-NEXT: .seh_startepilogue
142- ; CHECK-NEXT: ldr x30, [sp, #24] // 8-byte Reload
143- ; CHECK-NEXT: .seh_save_reg x30, 24
144- ; CHECK-NEXT: ldr x19, [sp, #16] // 8-byte Reload
145- ; CHECK-NEXT: .seh_save_reg x19, 16
140+ ; CHECK-NEXT: ldr x30, [sp, #16] // 8-byte Reload
141+ ; CHECK-NEXT: .seh_save_reg x30, 16
146142; CHECK-NEXT: add sp, sp, #32
147143; CHECK-NEXT: .seh_stackalloc 32
148144; CHECK-NEXT: .seh_endepilogue
0 commit comments