1
- ; RUN: llc -mtriple=x86_64-linux-android < %s | FileCheck -check-prefix=CHECK-X86-64 %s
2
- ; RUN: llc -mtriple=i686-linux-android < %s | FileCheck -check-prefix=CHECK-X86-32 %s
1
+ ; RUN: llc -mtriple=x86_64-linux-android < %s | FileCheck -check-prefix=CHECK-X64 %s
2
+ ; RUN: llc -mtriple=i686-linux-android < %s | FileCheck -check-prefix=CHECK-X86 %s
3
+ ; RUN: llc -mtriple=x86_64-linux-gnux32 < %s | FileCheck -check-prefix=CHECK-X32 %s
3
4
4
5
define i32 @foo () local_unnamed_addr #0 {
5
6
@@ -14,40 +15,60 @@ define i32 @foo() local_unnamed_addr #0 {
14
15
15
16
attributes #0 = {"probe-stack" ="inline-asm" }
16
17
17
- ; CHECK-X86-64-LABEL: foo:
18
- ; CHECK-X86-64: # %bb.0:
19
- ; CHECK-X86-64-NEXT: movq %rsp, %r11
20
- ; CHECK-X86-64-NEXT: subq $69632, %r11 # imm = 0x11000
21
- ; CHECK-X86-64-NEXT: .LBB0_1:
22
- ; CHECK-X86-64-NEXT: subq $4096, %rsp # imm = 0x1000
23
- ; CHECK-X86-64-NEXT: movq $0, (%rsp)
24
- ; CHECK-X86-64-NEXT: cmpq %r11, %rsp
25
- ; CHECK-X86-64-NEXT: jne .LBB0_1
26
- ; CHECK-X86-64-NEXT:# %bb.2:
27
- ; CHECK-X86-64-NEXT: subq $2248, %rsp
28
- ; CHECK-X86-64-NEXT: .cfi_def_cfa_offset 71888
29
- ; CHECK-X86-64-NEXT: movl $1, 264(%rsp)
30
- ; CHECK-X86-64-NEXT: movl $1, 28664(%rsp)
31
- ; CHECK-X86-64-NEXT: movl -128(%rsp), %eax
32
- ; CHECK-X86-64-NEXT: addq $71880, %rsp # imm = 0x118C8
33
- ; CHECK-X86-64-NEXT: .cfi_def_cfa_offset 8
34
- ; CHECK-X86-64-NEXT: retq
18
+ ; CHECK-X64-LABEL: foo:
19
+ ; CHECK-X64: # %bb.0:
20
+ ; CHECK-X64-NEXT: movq %rsp, %r11
21
+ ; CHECK-X64-NEXT: subq $69632, %r11 # imm = 0x11000
22
+ ; CHECK-X64-NEXT: .LBB0_1:
23
+ ; CHECK-X64-NEXT: subq $4096, %rsp # imm = 0x1000
24
+ ; CHECK-X64-NEXT: movq $0, (%rsp)
25
+ ; CHECK-X64-NEXT: cmpq %r11, %rsp
26
+ ; CHECK-X64-NEXT: jne .LBB0_1
27
+ ; CHECK-X64-NEXT:# %bb.2:
28
+ ; CHECK-X64-NEXT: subq $2248, %rsp
29
+ ; CHECK-X64-NEXT: .cfi_def_cfa_offset 71888
30
+ ; CHECK-X64-NEXT: movl $1, 264(%rsp)
31
+ ; CHECK-X64-NEXT: movl $1, 28664(%rsp)
32
+ ; CHECK-X64-NEXT: movl -128(%rsp), %eax
33
+ ; CHECK-X64-NEXT: addq $71880, %rsp # imm = 0x118C8
34
+ ; CHECK-X64-NEXT: .cfi_def_cfa_offset 8
35
+ ; CHECK-X64-NEXT: retq
36
+
37
+ ; CHECK-X86-LABEL: foo:
38
+ ; CHECK-X86: # %bb.0:
39
+ ; CHECK-X86-NEXT: movl %esp, %eax
40
+ ; CHECK-X86-NEXT: subl $69632, %eax # imm = 0x11000
41
+ ; CHECK-X86-NEXT: .LBB0_1: # =>This Inner Loop Header: Depth=1
42
+ ; CHECK-X86-NEXT: subl $4096, %esp # imm = 0x1000
43
+ ; CHECK-X86-NEXT: movl $0, (%esp)
44
+ ; CHECK-X86-NEXT: cmpl %eax, %esp
45
+ ; CHECK-X86-NEXT: jne .LBB0_1
46
+ ; CHECK-X86-NEXT:# %bb.2:
47
+ ; CHECK-X86-NEXT: subl $2380, %esp
48
+ ; CHECK-X86-NEXT: .cfi_def_cfa_offset 72016
49
+ ; CHECK-X86-NEXT: movl $1, 392(%esp)
50
+ ; CHECK-X86-NEXT: movl $1, 28792(%esp)
51
+ ; CHECK-X86-NEXT: movl (%esp), %eax
52
+ ; CHECK-X86-NEXT: addl $72012, %esp # imm = 0x1194C
53
+ ; CHECK-X86-NEXT: .cfi_def_cfa_offset 4
54
+ ; CHECK-X86-NEXT: retl
55
+
56
+ ; CHECK-X32-LABEL: foo:
57
+ ; CHECK-X32: # %bb.0:
58
+ ; CHECK-X32-NEXT: movl %esp, %r11d
59
+ ; CHECK-X32-NEXT: subl $69632, %r11d # imm = 0x11000
60
+ ; CHECK-X32-NEXT: .LBB0_1: # =>This Inner Loop Header: Depth=1
61
+ ; CHECK-X32-NEXT: subl $4096, %esp # imm = 0x1000
62
+ ; CHECK-X32-NEXT: movq $0, (%esp)
63
+ ; CHECK-X32-NEXT: cmpl %r11d, %esp
64
+ ; CHECK-X32-NEXT: jne .LBB0_1
65
+ ; CHECK-X32-NEXT:# %bb.2:
66
+ ; CHECK-X32-NEXT: subl $2248, %esp
67
+ ; CHECK-X32-NEXT: .cfi_def_cfa_offset 71888
68
+ ; CHECK-X32-NEXT: movl $1, 264(%esp)
69
+ ; CHECK-X32-NEXT: movl $1, 28664(%esp)
70
+ ; CHECK-X32-NEXT: movl -128(%esp), %eax
71
+ ; CHECK-X32-NEXT: addl $71880, %esp # imm = 0x118C8
72
+ ; CHECK-X32-NEXT: .cfi_def_cfa_offset 8
73
+ ; CHECK-X32-NEXT: retq
35
74
36
- ; CHECK-X86-32-LABEL: foo:
37
- ; CHECK-X86-32: # %bb.0:
38
- ; CHECK-X86-32-NEXT: movl %esp, %r11d
39
- ; CHECK-X86-32-NEXT: subl $69632, %r11d # imm = 0x11000
40
- ; CHECK-X86-32-NEXT: .LBB0_1: # =>This Inner Loop Header: Depth=1
41
- ; CHECK-X86-32-NEXT: subl $4096, %esp # imm = 0x1000
42
- ; CHECK-X86-32-NEXT: movl $0, (%esp)
43
- ; CHECK-X86-32-NEXT: cmpl %r11d, %esp
44
- ; CHECK-X86-32-NEXT: jne .LBB0_1
45
- ; CHECK-X86-32-NEXT:# %bb.2:
46
- ; CHECK-X86-32-NEXT: subl $2380, %esp
47
- ; CHECK-X86-32-NEXT: .cfi_def_cfa_offset 72016
48
- ; CHECK-X86-32-NEXT: movl $1, 392(%esp)
49
- ; CHECK-X86-32-NEXT: movl $1, 28792(%esp)
50
- ; CHECK-X86-32-NEXT: movl (%esp), %eax
51
- ; CHECK-X86-32-NEXT: addl $72012, %esp # imm = 0x1194C
52
- ; CHECK-X86-32-NEXT: .cfi_def_cfa_offset 4
53
- ; CHECK-X86-32-NEXT: retl
0 commit comments