Skip to content

Commit 88383ac

Browse files
committed
Run update_llc_test_checks.py on tailcc-ssp.ll
1 parent 1606794 commit 88383ac

File tree

1 file changed

+36
-14
lines changed

1 file changed

+36
-14
lines changed

llvm/test/CodeGen/X86/tailcc-ssp.ll

Lines changed: 36 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@ declare void @h(ptr, i64, ptr)
66

77
define tailcc void @tailcall_frame(ptr %0, i64 %1) sspreq {
88
; WINDOWS-LABEL: tailcall_frame:
9-
; WINDOWS-NEXT: .seh_proc tailcall_frame
10-
; WINDOWS-NEXT: # %bb.0:
9+
; WINDOWS: # %bb.0:
1110
; WINDOWS-NEXT: subq $56, %rsp
1211
; WINDOWS-NEXT: .seh_stackalloc 56
1312
; WINDOWS-NEXT: .seh_endprologue
@@ -68,7 +67,7 @@ define void @tailcall_unrelated_frame() sspreq {
6867
; WINDOWS-NEXT: xorq %rsp, %rax
6968
; WINDOWS-NEXT: movq %rax, {{[0-9]+}}(%rsp)
7069
; WINDOWS-NEXT: callq bar
71-
; WINDOWS-NEXT: movq 32(%rsp), %rax
70+
; WINDOWS-NEXT: movq {{[0-9]+}}(%rsp), %rax
7271
; WINDOWS-NEXT: xorq %rsp, %rax
7372
; WINDOWS-NEXT: movq __security_cookie(%rip), %rcx
7473
; WINDOWS-NEXT: cmpq %rax, %rcx
@@ -79,7 +78,7 @@ define void @tailcall_unrelated_frame() sspreq {
7978
; WINDOWS-NEXT: .seh_endepilogue
8079
; WINDOWS-NEXT: jmp bar # TAILCALL
8180
; WINDOWS-NEXT: .LBB1_1:
82-
; WINDOWS-NEXT: movq 32(%rsp), %rcx
81+
; WINDOWS-NEXT: movq {{[0-9]+}}(%rsp), %rcx
8382
; WINDOWS-NEXT: xorq %rsp, %rcx
8483
; WINDOWS-NEXT: callq __security_check_cookie
8584
; WINDOWS-NEXT: int3
@@ -110,28 +109,51 @@ define void @tailcall_unrelated_frame() sspreq {
110109
declare void @callee()
111110
define void @caller() sspreq {
112111
; WINDOWS-LABEL: caller:
113-
; WINDOWS: callq callee
114-
; WINDOWS: callq callee
115-
; WINDOWS: cmpq %rax, %rcx
112+
; WINDOWS: # %bb.0:
113+
; WINDOWS-NEXT: subq $40, %rsp
114+
; WINDOWS-NEXT: .seh_stackalloc 40
115+
; WINDOWS-NEXT: .seh_endprologue
116+
; WINDOWS-NEXT: movq __security_cookie(%rip), %rax
117+
; WINDOWS-NEXT: xorq %rsp, %rax
118+
; WINDOWS-NEXT: movq %rax, {{[0-9]+}}(%rsp)
119+
; WINDOWS-NEXT: callq callee
120+
; WINDOWS-NEXT: callq callee
121+
; WINDOWS-NEXT: movq {{[0-9]+}}(%rsp), %rax
122+
; WINDOWS-NEXT: xorq %rsp, %rax
123+
; WINDOWS-NEXT: movq __security_cookie(%rip), %rcx
124+
; WINDOWS-NEXT: cmpq %rax, %rcx
116125
; WINDOWS-NEXT: jne .LBB2_2
117126
; WINDOWS-NEXT: # %bb.1:
118127
; WINDOWS-NEXT: .seh_startepilogue
119128
; WINDOWS-NEXT: addq $40, %rsp
120129
; WINDOWS-NEXT: .seh_endepilogue
121130
; WINDOWS-NEXT: retq
122131
; WINDOWS-NEXT: .LBB2_2:
123-
; WINDOWS-NEXT: movq 32(%rsp), %rcx
132+
; WINDOWS-NEXT: movq {{[0-9]+}}(%rsp), %rcx
124133
; WINDOWS-NEXT: xorq %rsp, %rcx
125134
; WINDOWS-NEXT: callq __security_check_cookie
126135
; WINDOWS-NEXT: int3
127136
; WINDOWS-NEXT: .seh_endproc
128-
137+
;
129138
; LINUX-LABEL: caller:
130-
; LINUX: callq callee@PLT
131-
; LINUX: callq callee@PLT
132-
; LINUX: cmpq
133-
; LINUX: jne
134-
; LINUX: callq __stack_chk_fail@PLT
139+
; LINUX: # %bb.0:
140+
; LINUX-NEXT: pushq %rax
141+
; LINUX-NEXT: .cfi_def_cfa_offset 16
142+
; LINUX-NEXT: movq %fs:40, %rax
143+
; LINUX-NEXT: movq %rax, (%rsp)
144+
; LINUX-NEXT: callq callee@PLT
145+
; LINUX-NEXT: callq callee@PLT
146+
; LINUX-NEXT: movq %fs:40, %rax
147+
; LINUX-NEXT: cmpq (%rsp), %rax
148+
; LINUX-NEXT: jne .LBB2_2
149+
; LINUX-NEXT: # %bb.1: # %SP_return
150+
; LINUX-NEXT: popq %rax
151+
; LINUX-NEXT: .cfi_def_cfa_offset 8
152+
; LINUX-NEXT: retq
153+
; LINUX-NEXT: .LBB2_2: # %CallStackCheckFailBlk
154+
; LINUX-NEXT: .cfi_def_cfa_offset 16
155+
; LINUX-NEXT: callq __stack_chk_fail@PLT
156+
135157

136158
tail call void @callee()
137159
call void @callee()

0 commit comments

Comments
 (0)