|
1 | 1 | ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5 |
2 | 2 | ; RUN: llc < %s -mtriple=aarch64-w64-mingw32 | FileCheck %s --check-prefixes=CHECK,CHECK-SD |
3 | | -; RUN: llc < %s -mtriple=aarch64-w64-mingw32 -global-isel | FileCheck %s --check-prefixes=CHECK,CHECK-GI |
| 3 | +; RUN: llc < %s -mtriple=aarch64-w64-mingw32 -global-isel | FileCheck %s --check-prefixes=CHECK-GI |
4 | 4 |
|
5 | 5 | @var = external local_unnamed_addr global i32, align 4 |
6 | 6 | @dsolocalvar = external dso_local local_unnamed_addr global i32, align 4 |
@@ -82,25 +82,31 @@ define dso_local void @sspFunc() #0 { |
82 | 82 | ; CHECK-NEXT: // %bb.0: // %entry |
83 | 83 | ; CHECK-NEXT: sub sp, sp, #32 |
84 | 84 | ; CHECK-NEXT: .seh_stackalloc 32 |
85 | | -; CHECK-NEXT: str x30, [sp, #16] // 8-byte Folded Spill |
86 | | -; CHECK-NEXT: .seh_save_reg x30, 16 |
| 85 | +; CHECK-NEXT: str x19, [sp, #16] // 8-byte Folded Spill |
| 86 | +; CHECK-NEXT: .seh_save_reg x19, 16 |
| 87 | +; CHECK-NEXT: str x30, [sp, #24] // 8-byte Folded Spill |
| 88 | +; CHECK-NEXT: .seh_save_reg x30, 24 |
87 | 89 | ; CHECK-NEXT: .seh_endprologue |
88 | | -; CHECK-NEXT: adrp x8, .refptr.__stack_chk_guard |
| 90 | +; CHECK-NEXT: adrp x19, .refptr.__stack_chk_guard |
| 91 | +; CHECK-NEXT: mov x9, sp |
89 | 92 | ; CHECK-NEXT: add x0, sp, #7 |
90 | | -; CHECK-NEXT: ldr x8, [x8, :lo12:.refptr.__stack_chk_guard] |
91 | | -; CHECK-NEXT: ldr x8, [x8] |
| 93 | +; CHECK-NEXT: ldr x19, [x19, :lo12:.refptr.__stack_chk_guard] |
| 94 | +; CHECK-NEXT: ldr x8, [x19] |
| 95 | +; CHECK-NEXT: eor x8, x8, x9 |
92 | 96 | ; CHECK-NEXT: str x8, [sp, #8] |
93 | 97 | ; CHECK-NEXT: bl ptrUser |
94 | | -; CHECK-NEXT: adrp x8, .refptr.__stack_chk_guard |
95 | | -; CHECK-NEXT: ldr x8, [x8, :lo12:.refptr.__stack_chk_guard] |
96 | 98 | ; CHECK-NEXT: ldr x9, [sp, #8] |
97 | | -; CHECK-NEXT: ldr x8, [x8] |
98 | | -; CHECK-NEXT: cmp x8, x9 |
| 99 | +; CHECK-NEXT: mov x8, sp |
| 100 | +; CHECK-NEXT: ldr x10, [x19] |
| 101 | +; CHECK-NEXT: eor x8, x9, x8 |
| 102 | +; CHECK-NEXT: cmp x10, x8 |
99 | 103 | ; CHECK-NEXT: b.ne .LBB6_2 |
100 | 104 | ; CHECK-NEXT: // %bb.1: // %entry |
101 | 105 | ; CHECK-NEXT: .seh_startepilogue |
102 | | -; CHECK-NEXT: ldr x30, [sp, #16] // 8-byte Folded Reload |
103 | | -; CHECK-NEXT: .seh_save_reg x30, 16 |
| 106 | +; CHECK-NEXT: ldr x30, [sp, #24] // 8-byte Folded Reload |
| 107 | +; CHECK-NEXT: .seh_save_reg x30, 24 |
| 108 | +; CHECK-NEXT: ldr x19, [sp, #16] // 8-byte Folded Reload |
| 109 | +; CHECK-NEXT: .seh_save_reg x19, 16 |
104 | 110 | ; CHECK-NEXT: add sp, sp, #32 |
105 | 111 | ; CHECK-NEXT: .seh_stackalloc 32 |
106 | 112 | ; CHECK-NEXT: .seh_endepilogue |
|
0 commit comments