1 ; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
3 define void @nop_test() {
5 ; CHECK-LABEL: nop_test:
15 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
16 ; CHECK-NEXT: brcl 0, [[LAB]]
20 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
21 ; CHECK-NEXT: brcl 0, [[LAB]]
26 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
27 ; CHECK-NEXT: brcl 0, [[LAB]]
32 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
33 ; CHECK-NEXT: brcl 0, [[LAB]]
34 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
35 ; CHECK-NEXT: brcl 0, [[LAB]]
39 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
40 ; CHECK-NEXT: brcl 0, [[LAB]]
41 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
42 ; CHECK-NEXT: brcl 0, [[LAB]]
47 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
48 ; CHECK-NEXT: brcl 0, [[LAB]]
49 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
50 ; CHECK-NEXT: brcl 0, [[LAB]]
55 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
56 ; CHECK-NEXT: brcl 0, [[LAB]]
57 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
58 ; CHECK-NEXT: brcl 0, [[LAB]]
59 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
60 ; CHECK-NEXT: brcl 0, [[LAB]]
64 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
65 ; CHECK-NEXT: brcl 0, [[LAB]]
66 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
67 ; CHECK-NEXT: brcl 0, [[LAB]]
68 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
69 ; CHECK-NEXT: brcl 0, [[LAB]]
74 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
75 ; CHECK-NEXT: brcl 0, [[LAB]]
76 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
77 ; CHECK-NEXT: brcl 0, [[LAB]]
78 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
79 ; CHECK-NEXT: brcl 0, [[LAB]]
84 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
85 ; CHECK-NEXT: brcl 0, [[LAB]]
86 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
87 ; CHECK-NEXT: brcl 0, [[LAB]]
88 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
89 ; CHECK-NEXT: brcl 0, [[LAB]]
90 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
91 ; CHECK-NEXT: brcl 0, [[LAB]]
95 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
96 ; CHECK-NEXT: brcl 0, [[LAB]]
97 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
98 ; CHECK-NEXT: brcl 0, [[LAB]]
99 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
100 ; CHECK-NEXT: brcl 0, [[LAB]]
101 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
102 ; CHECK-NEXT: brcl 0, [[LAB]]
107 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
108 ; CHECK-NEXT: brcl 0, [[LAB]]
109 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
110 ; CHECK-NEXT: brcl 0, [[LAB]]
111 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
112 ; CHECK-NEXT: brcl 0, [[LAB]]
113 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
114 ; CHECK-NEXT: brcl 0, [[LAB]]
119 ; CHECK-NEXT: [[LAB:.Ltmp[0-9]+]]:
120 ; CHECK-NEXT: brcl 0, [[LAB]]
121 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
122 ; CHECK-NEXT: brcl 0, [[LAB]]
123 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
124 ; CHECK-NEXT: brcl 0, [[LAB]]
125 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
126 ; CHECK-NEXT: brcl 0, [[LAB]]
127 ; CHECK: [[LAB:.Ltmp[0-9]+]]:
128 ; CHECK-NEXT: brcl 0, [[LAB]]
130 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 0, i32 0)
131 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 2, i32 2)
132 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 4, i32 4)
133 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 6, i32 6)
134 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 8, i32 8)
135 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 10, i32 10)
136 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 12, i32 12)
137 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 14, i32 14)
138 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 16, i32 16)
139 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 18, i32 18)
140 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 20, i32 20)
141 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 22, i32 22)
142 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 24, i32 24)
143 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 26, i32 26)
144 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 28, i32 28)
145 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 30, i32 30)
146 ; Add an extra stackmap with a zero-length shadow to thwart the shadow
147 ; optimization. This will force all bytes of the previous shadow to be
149 tail call void (i64, i32, ...) @llvm.experimental.stackmap(i64 31, i32 0)
153 declare void @llvm.experimental.stackmap(i64, i32, ...)