Skip to content

Commit 2b63077

Browse files
authored
[llvm] Remove br i1 undef from CodeGen/X86 tests (llvm#121733)
This PR removes tests with `br i1 undef` under `llvm/tests/CodeGen/X86`. There will be more PRs in the future for this directory. Replacing `undef` with a new function argument doesn't work in some of the tests, instead, I've replaced them with `poison`.
1 parent f99b190 commit 2b63077

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+238
-243
lines changed

llvm/test/CodeGen/X86/2011-06-03-x87chain.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ entry:
3030
ret float %conv
3131
}
3232

33-
define void @PR17495() {
33+
define void @PR17495(i1 %arg) {
3434
entry:
35-
br i1 undef, label %while.end, label %while.body
35+
br i1 %arg, label %while.end, label %while.body
3636

3737
while.body: ; preds = %while.body, %entry
3838
%x.1.copyload = load i24, ptr undef, align 1

llvm/test/CodeGen/X86/2020_12_02_decrementing_loop.ll

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ failure: ; preds = %backedge
165165
unreachable
166166
}
167167

168-
define void @test_04() {
168+
define void @test_04(i32 %arg) {
169169
; CHECK-LABEL: test_04:
170170
; CHECK: ## %bb.0: ## %bb
171171
; CHECK-NEXT: ud2
@@ -175,7 +175,7 @@ bb:
175175
bb1: ; preds = %bb10, %bb
176176
%tmp = phi i64 [ 1, %bb ], [ %tmp2, %bb10 ]
177177
%tmp2 = add nuw nsw i64 %tmp, 1
178-
br i1 undef, label %bb21, label %bb7
178+
br i1 poison, label %bb21, label %bb7
179179

180180
bb7: ; preds = %bb1
181181
%tmp8 = add nsw i64 %tmp, -1
@@ -187,7 +187,7 @@ bb10: ; preds = %bb16
187187
br label %bb1
188188

189189
bb11: ; preds = %bb16, %bb7
190-
switch i32 undef, label %bb19 [
190+
switch i32 %arg, label %bb19 [
191191
i32 0, label %bb17
192192
i32 1, label %bb16
193193
i32 2, label %bb15
@@ -205,7 +205,7 @@ bb15: ; preds = %bb11
205205
unreachable
206206

207207
bb16: ; preds = %bb11
208-
br i1 undef, label %bb10, label %bb11
208+
br i1 poison, label %bb10, label %bb11
209209

210210
bb17: ; preds = %bb11
211211
unreachable

llvm/test/CodeGen/X86/AMX/amx-combine-undef.ll

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ define void @undef_2phi(ptr%buf) {
55
; CHECK-LABEL: @undef_2phi(
66
; CHECK-NEXT: entry:
77
; CHECK-NEXT: [[TMP0:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
8-
; CHECK-NEXT: br i1 undef, label [[L1:%.*]], label [[L2:%.*]]
8+
; CHECK-NEXT: br i1 poison, label [[L1:%.*]], label [[L2:%.*]]
99
; CHECK: l1:
1010
; CHECK-NEXT: [[T1:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
11-
; CHECK-NEXT: br i1 undef, label [[L2]], label [[L3:%.*]]
11+
; CHECK-NEXT: br i1 poison, label [[L2]], label [[L3:%.*]]
1212
; CHECK: l2:
1313
; CHECK-NEXT: [[TMP1:%.*]] = phi x86_amx [ [[TMP0]], [[ENTRY:%.*]] ], [ [[T1]], [[L1]] ]
14-
; CHECK-NEXT: br i1 undef, label [[L3]], label [[EXIT:%.*]]
14+
; CHECK-NEXT: br i1 poison, label [[L3]], label [[EXIT:%.*]]
1515
; CHECK: l3:
1616
; CHECK-NEXT: [[TMP2:%.*]] = phi x86_amx [ [[TMP1]], [[L2]] ], [ [[T1]], [[L1]] ]
1717
; CHECK-NEXT: call void @llvm.x86.tilestored64.internal(i16 8, i16 32, ptr [[BUF:%.*]], i64 1024, x86_amx [[TMP2]])
@@ -20,16 +20,16 @@ define void @undef_2phi(ptr%buf) {
2020
; CHECK-NEXT: ret void
2121
;
2222
entry:
23-
br i1 undef, label %l1, label %l2
23+
br i1 poison, label %l1, label %l2
2424

2525
l1:
2626
%t1 = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
2727
%t2 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t1)
28-
br i1 undef, label %l2, label %l3
28+
br i1 poison, label %l2, label %l3
2929

3030
l2:
31-
%t3 = phi <256 x i32> [ undef, %entry ], [ %t2, %l1 ]
32-
br i1 undef, label %l3, label %exit
31+
%t3 = phi <256 x i32> [ poison, %entry ], [ %t2, %l1 ]
32+
br i1 poison, label %l3, label %exit
3333

3434
l3:
3535
%t4 = phi <256 x i32> [ %t3, %l2], [ %t2, %l1 ]
@@ -45,10 +45,10 @@ define void @foo_undef(ptr%buf) {
4545
; CHECK-LABEL: @foo_undef(
4646
; CHECK-NEXT: entry:
4747
; CHECK-NEXT: [[TMP0:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
48-
; CHECK-NEXT: br i1 undef, label [[L1:%.*]], label [[L2:%.*]]
48+
; CHECK-NEXT: br i1 poison, label [[L1:%.*]], label [[L2:%.*]]
4949
; CHECK: l1:
5050
; CHECK-NEXT: [[T1:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
51-
; CHECK-NEXT: br i1 undef, label [[L2]], label [[EXIT:%.*]]
51+
; CHECK-NEXT: br i1 poison, label [[L2]], label [[EXIT:%.*]]
5252
; CHECK: l2:
5353
; CHECK-NEXT: [[TMP1:%.*]] = phi x86_amx [ [[TMP0]], [[ENTRY:%.*]] ], [ [[T1]], [[L1]] ]
5454
; CHECK-NEXT: call void @llvm.x86.tilestored64.internal(i16 8, i16 32, ptr [[BUF:%.*]], i64 1024, x86_amx [[TMP1]])
@@ -57,15 +57,15 @@ define void @foo_undef(ptr%buf) {
5757
; CHECK-NEXT: ret void
5858
;
5959
entry:
60-
br i1 undef, label %l1, label %l2
60+
br i1 poison, label %l1, label %l2
6161

6262
l1:
6363
%t1 = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
6464
%t2 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t1)
65-
br i1 undef, label %l2, label %exit
65+
br i1 poison, label %l2, label %exit
6666

6767
l2:
68-
%t3 = phi <256 x i32> [ undef, %entry ], [ %t2, %l1 ]
68+
%t3 = phi <256 x i32> [ poison, %entry ], [ %t2, %l1 ]
6969
%t4 = call x86_amx @llvm.x86.cast.vector.to.tile.v256i32(<256 x i32> %t3)
7070
call void @llvm.x86.tilestored64.internal(i16 8, i16 32, ptr %buf, i64 1024, x86_amx %t4)
7171
br label %exit
@@ -78,10 +78,10 @@ define void @foo_zero(ptr%buf) {
7878
; CHECK-LABEL: @foo_zero(
7979
; CHECK-NEXT: entry:
8080
; CHECK-NEXT: [[TMP0:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
81-
; CHECK-NEXT: br i1 undef, label [[L1:%.*]], label [[L2:%.*]]
81+
; CHECK-NEXT: br i1 poison, label [[L1:%.*]], label [[L2:%.*]]
8282
; CHECK: l1:
8383
; CHECK-NEXT: [[T1:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
84-
; CHECK-NEXT: br i1 undef, label [[L2]], label [[EXIT:%.*]]
84+
; CHECK-NEXT: br i1 poison, label [[L2]], label [[EXIT:%.*]]
8585
; CHECK: l2:
8686
; CHECK-NEXT: [[TMP1:%.*]] = phi x86_amx [ [[TMP0]], [[ENTRY:%.*]] ], [ [[T1]], [[L1]] ]
8787
; CHECK-NEXT: call void @llvm.x86.tilestored64.internal(i16 8, i16 32, ptr [[BUF:%.*]], i64 1024, x86_amx [[TMP1]])
@@ -90,12 +90,12 @@ define void @foo_zero(ptr%buf) {
9090
; CHECK-NEXT: ret void
9191
;
9292
entry:
93-
br i1 undef, label %l1, label %l2
93+
br i1 poison, label %l1, label %l2
9494

9595
l1:
9696
%t1 = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
9797
%t2 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t1)
98-
br i1 undef, label %l2, label %exit
98+
br i1 poison, label %l2, label %exit
9999

100100
l2:
101101
%t3 = phi <256 x i32> [ zeroinitializer, %entry ], [ %t2, %l1 ]
@@ -112,14 +112,14 @@ define void @foo_vrow(ptr%buf, i16 %row) {
112112
; CHECK-NEXT: entry:
113113
; CHECK-NEXT: [[TMP0:%.*]] = alloca <256 x i32>, align 64
114114
; CHECK-NEXT: [[TMP1:%.*]] = alloca <256 x i32>, align 64
115-
; CHECK-NEXT: br i1 undef, label [[L1:%.*]], label [[L2:%.*]]
115+
; CHECK-NEXT: br i1 poison, label [[L1:%.*]], label [[L2:%.*]]
116116
; CHECK: l1:
117117
; CHECK-NEXT: [[T1:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 [[ROW:%.*]], i16 32)
118118
; CHECK-NEXT: call void @llvm.x86.tilestored64.internal(i16 [[ROW]], i16 32, ptr [[TMP1]], i64 32, x86_amx [[T1]])
119119
; CHECK-NEXT: [[TMP3:%.*]] = load <256 x i32>, ptr [[TMP1]], align 1024
120-
; CHECK-NEXT: br i1 undef, label [[L2]], label [[EXIT:%.*]]
120+
; CHECK-NEXT: br i1 poison, label [[L2]], label [[EXIT:%.*]]
121121
; CHECK: l2:
122-
; CHECK-NEXT: [[T3:%.*]] = phi <256 x i32> [ undef, [[ENTRY:%.*]] ], [ [[TMP3]], [[L1]] ]
122+
; CHECK-NEXT: [[T3:%.*]] = phi <256 x i32> [ poison, [[ENTRY:%.*]] ], [ [[TMP3]], [[L1]] ]
123123
; CHECK-NEXT: store <256 x i32> [[T3]], ptr [[TMP0]], align 1024
124124
; CHECK-NEXT: [[TMP5:%.*]] = call x86_amx @llvm.x86.tileloadd64.internal(i16 [[ROW]], i16 32, ptr [[TMP0]], i64 32)
125125
; CHECK-NEXT: call void @llvm.x86.tilestored64.internal(i16 [[ROW]], i16 32, ptr [[BUF:%.*]], i64 1024, x86_amx [[TMP5]])
@@ -128,15 +128,15 @@ define void @foo_vrow(ptr%buf, i16 %row) {
128128
; CHECK-NEXT: ret void
129129
;
130130
entry:
131-
br i1 undef, label %l1, label %l2
131+
br i1 poison, label %l1, label %l2
132132

133133
l1:
134134
%t1 = call x86_amx @llvm.x86.tilezero.internal(i16 %row, i16 32)
135135
%t2 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t1)
136-
br i1 undef, label %l2, label %exit
136+
br i1 poison, label %l2, label %exit
137137

138138
l2:
139-
%t3 = phi <256 x i32> [ undef, %entry ], [ %t2, %l1 ]
139+
%t3 = phi <256 x i32> [ poison, %entry ], [ %t2, %l1 ]
140140
%t4 = call x86_amx @llvm.x86.cast.vector.to.tile.v256i32(<256 x i32> %t3)
141141
call void @llvm.x86.tilestored64.internal(i16 %row, i16 32, ptr %buf, i64 1024, x86_amx %t4)
142142
br label %exit
@@ -150,13 +150,13 @@ define void @foo_vcol(ptr%buf, i16 %col) {
150150
; CHECK-NEXT: entry:
151151
; CHECK-NEXT: [[TMP0:%.*]] = alloca <256 x i32>, align 64
152152
; CHECK-NEXT: [[TMP1:%.*]] = alloca <256 x i32>, align 64
153-
; CHECK-NEXT: br i1 undef, label [[L1:%.*]], label [[L2:%.*]]
153+
; CHECK-NEXT: br i1 poison, label [[L1:%.*]], label [[L2:%.*]]
154154
; CHECK: l1:
155155
; CHECK-NEXT: [[T1:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 [[COL:%.*]])
156156
; CHECK-NEXT: [[TMP3:%.*]] = sext i16 [[COL]] to i64
157157
; CHECK-NEXT: call void @llvm.x86.tilestored64.internal(i16 8, i16 [[COL]], ptr [[TMP1]], i64 [[TMP3]], x86_amx [[T1]])
158158
; CHECK-NEXT: [[TMP4:%.*]] = load <256 x i32>, ptr [[TMP1]], align 1024
159-
; CHECK-NEXT: br i1 undef, label [[L2]], label [[EXIT:%.*]]
159+
; CHECK-NEXT: br i1 poison, label [[L2]], label [[EXIT:%.*]]
160160
; CHECK: l2:
161161
; CHECK-NEXT: [[T3:%.*]] = phi <256 x i32> [ zeroinitializer, [[ENTRY:%.*]] ], [ [[TMP4]], [[L1]] ]
162162
; CHECK-NEXT: store <256 x i32> [[T3]], ptr [[TMP0]], align 1024
@@ -168,12 +168,12 @@ define void @foo_vcol(ptr%buf, i16 %col) {
168168
; CHECK-NEXT: ret void
169169
;
170170
entry:
171-
br i1 undef, label %l1, label %l2
171+
br i1 poison, label %l1, label %l2
172172

173173
l1:
174174
%t1 = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 %col)
175175
%t2 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t1)
176-
br i1 undef, label %l2, label %exit
176+
br i1 poison, label %l2, label %exit
177177

178178
l2:
179179
%t3 = phi <256 x i32> [ zeroinitializer, %entry ], [ %t2, %l1 ]
@@ -189,29 +189,29 @@ define void @noshape(ptr%buf) {
189189
; CHECK-LABEL: @noshape(
190190
; CHECK-NEXT: entry:
191191
; CHECK-NEXT: [[TMP0:%.*]] = alloca <256 x i32>, align 64
192-
; CHECK-NEXT: br i1 undef, label [[L1:%.*]], label [[L2:%.*]]
192+
; CHECK-NEXT: br i1 poison, label [[L1:%.*]], label [[L2:%.*]]
193193
; CHECK: l1:
194194
; CHECK-NEXT: [[T1:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
195195
; CHECK-NEXT: call void @llvm.x86.tilestored64.internal(i16 8, i16 32, ptr [[TMP0]], i64 32, x86_amx [[T1]])
196196
; CHECK-NEXT: [[TMP2:%.*]] = load <256 x i32>, ptr [[TMP0]], align 1024
197-
; CHECK-NEXT: br i1 undef, label [[L2]], label [[EXIT:%.*]]
197+
; CHECK-NEXT: br i1 poison, label [[L2]], label [[EXIT:%.*]]
198198
; CHECK: l2:
199-
; CHECK-NEXT: [[T3:%.*]] = phi <256 x i32> [ undef, [[ENTRY:%.*]] ], [ [[TMP2]], [[L1]] ]
199+
; CHECK-NEXT: [[T3:%.*]] = phi <256 x i32> [ poison, [[ENTRY:%.*]] ], [ [[TMP2]], [[L1]] ]
200200
; CHECK-NEXT: store <256 x i32> [[T3]], ptr [[BUF:%.*]], align 1024
201201
; CHECK-NEXT: br label [[EXIT]]
202202
; CHECK: exit:
203203
; CHECK-NEXT: ret void
204204
;
205205
entry:
206-
br i1 undef, label %l1, label %l2
206+
br i1 poison, label %l1, label %l2
207207

208208
l1:
209209
%t1 = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
210210
%t2 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t1)
211-
br i1 undef, label %l2, label %exit
211+
br i1 poison, label %l2, label %exit
212212

213213
l2:
214-
%t3 = phi <256 x i32> [ undef, %entry ], [ %t2, %l1 ]
214+
%t3 = phi <256 x i32> [ poison, %entry ], [ %t2, %l1 ]
215215
%t4 = call x86_amx @llvm.x86.cast.vector.to.tile.v256i32(<256 x i32> %t3)
216216
%t5 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t4)
217217
store <256 x i32> %t5, ptr %buf
@@ -225,30 +225,30 @@ define void @noshape2(ptr%buf) {
225225
; CHECK-LABEL: @noshape2(
226226
; CHECK-NEXT: entry:
227227
; CHECK-NEXT: [[TMP0:%.*]] = alloca <256 x i32>, align 64
228-
; CHECK-NEXT: br i1 undef, label [[L1:%.*]], label [[L2:%.*]]
228+
; CHECK-NEXT: br i1 poison, label [[L1:%.*]], label [[L2:%.*]]
229229
; CHECK: l1:
230230
; CHECK-NEXT: [[T1:%.*]] = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
231231
; CHECK-NEXT: call void @llvm.x86.tilestored64.internal(i16 8, i16 32, ptr [[TMP0]], i64 32, x86_amx [[T1]])
232232
; CHECK-NEXT: [[TMP2:%.*]] = load <256 x i32>, ptr [[TMP0]], align 1024
233-
; CHECK-NEXT: br i1 undef, label [[L2]], label [[EXIT:%.*]]
233+
; CHECK-NEXT: br i1 poison, label [[L2]], label [[EXIT:%.*]]
234234
; CHECK: l2:
235-
; CHECK-NEXT: [[T3:%.*]] = phi <256 x i32> [ undef, [[ENTRY:%.*]] ], [ [[TMP2]], [[L1]] ]
235+
; CHECK-NEXT: [[T3:%.*]] = phi <256 x i32> [ poison, [[ENTRY:%.*]] ], [ [[TMP2]], [[L1]] ]
236236
; CHECK-NEXT: [[T6:%.*]] = call <256 x i32> @llvm.abs.v256i32(<256 x i32> [[T3]], i1 true)
237237
; CHECK-NEXT: store <256 x i32> [[T6]], ptr [[BUF:%.*]], align 1024
238238
; CHECK-NEXT: br label [[EXIT]]
239239
; CHECK: exit:
240240
; CHECK-NEXT: ret void
241241
;
242242
entry:
243-
br i1 undef, label %l1, label %l2
243+
br i1 poison, label %l1, label %l2
244244

245245
l1:
246246
%t1 = call x86_amx @llvm.x86.tilezero.internal(i16 8, i16 32)
247247
%t2 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t1)
248-
br i1 undef, label %l2, label %exit
248+
br i1 poison, label %l2, label %exit
249249

250250
l2:
251-
%t3 = phi <256 x i32> [ undef, %entry ], [ %t2, %l1 ]
251+
%t3 = phi <256 x i32> [ poison, %entry ], [ %t2, %l1 ]
252252
%t4 = call x86_amx @llvm.x86.cast.vector.to.tile.v256i32(<256 x i32> %t3)
253253
%t5 = call <256 x i32> @llvm.x86.cast.tile.to.vector.v256i32(x86_amx %t4)
254254
%t6 = call <256 x i32> @llvm.abs.v256i32(<256 x i32> %t5, i1 1)

0 commit comments

Comments
 (0)