Skip to content

Commit ead9ad2

Browse files
authored
[llvm] Remove br i1 undef from some regression tests [NFC] (#116739)
This PR removes tests with br i1 undef under `llvm/tests/Transforms/JumpThreading, LCSSA, LICM, LoopDeletion, LoopIdiom`.
1 parent 752dbd6 commit ead9ad2

Some content is hidden

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

41 files changed

+278
-247
lines changed

llvm/test/Transforms/JumpThreading/PR33357-lvi-recursion.ll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
define void @f(i32 %p1) {
1313
bb0:
1414
%0 = icmp eq i32 %p1, 0
15-
br i1 undef, label %bb6, label %bb1
15+
br i1 true, label %bb6, label %bb1
1616

1717
bb1:
1818
br label %bb2

llvm/test/Transforms/JumpThreading/basic.ll

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,11 @@ F2:
6060
}
6161

6262

63-
; Undef handling.
6463
define i32 @test3(i1 %cond) {
6564
; CHECK-LABEL: @test3(
6665
; CHECK-NEXT: T1:
6766
; CHECK-NEXT: ret i32 42
68-
br i1 undef, label %T1, label %F1
67+
br i1 true, label %T1, label %F1
6968

7069
T1:
7170
ret i32 42

llvm/test/Transforms/JumpThreading/crash.ll

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ return:
239239
}
240240

241241
; PR6119
242-
define i32 @test8(i32 %action) nounwind {
242+
define i32 @test8(i32 %action, i1 %arg) nounwind {
243243
entry:
244244
switch i32 %action, label %lor.rhs [
245245
i32 1, label %if.then
@@ -257,14 +257,14 @@ lor.end: ; preds = %lor.rhs, %entry
257257
br i1 %cmp103, label %for.cond, label %if.then
258258

259259
for.cond: ; preds = %for.body, %lor.end
260-
br i1 undef, label %if.then, label %for.body
260+
br i1 %arg, label %if.then, label %for.body
261261

262262
for.body: ; preds = %for.cond
263263
br label %for.cond
264264
}
265265

266266
; PR6119
267-
define i32 @test9(i32 %action) nounwind {
267+
define i32 @test9(i32 %action, i1 %arg) nounwind {
268268
entry:
269269
switch i32 %action, label %lor.rhs [
270270
i32 1, label %if.then
@@ -283,14 +283,14 @@ lor.end: ; preds = %lor.rhs, %entry
283283
br i1 %cmp103, label %for.cond, label %if.then
284284

285285
for.cond: ; preds = %for.body, %lor.end
286-
br i1 undef, label %if.then, label %for.body
286+
br i1 %arg, label %if.then, label %for.body
287287

288288
for.body: ; preds = %for.cond
289289
br label %for.cond
290290
}
291291

292292
; PR6119
293-
define i32 @test10(i32 %action, i32 %type) nounwind {
293+
define i32 @test10(i32 %action, i32 %type, i1 %arg) nounwind {
294294
entry:
295295
%cmp2 = icmp eq i32 %type, 0 ; <i1> [#uses=1]
296296
switch i32 %action, label %lor.rhs [
@@ -311,7 +311,7 @@ lor.end: ; preds = %lor.rhs, %entry
311311
br i1 %cmp103, label %for.cond, label %if.then
312312

313313
for.cond: ; preds = %for.body, %lor.end
314-
br i1 undef, label %if.then, label %for.body
314+
br i1 %arg, label %if.then, label %for.body
315315

316316
for.body: ; preds = %for.cond
317317
br label %for.cond
@@ -391,7 +391,7 @@ if.end: ; preds = %land.end69
391391
}
392392

393393
; PR7647
394-
define void @test15() nounwind {
394+
define void @test15(i1 %arg) nounwind {
395395
entry:
396396
ret void
397397

@@ -420,7 +420,7 @@ lbl_709:
420420
br label %if.end949
421421

422422
for.cond603: ; preds = %for.body607, %if.end336
423-
br i1 undef, label %for.cond603, label %if.end949
423+
br i1 %arg, label %for.cond603, label %if.end949
424424

425425
if.end949: ; preds = %for.cond603, %lbl_709, %for.cond111
426426
%l_678.2 = phi i64 [ %l_678.5, %for.cond111 ], [ undef, %lbl_709 ], [ 5, %for.cond603 ] ; <i64> [#uses=1]
@@ -430,7 +430,7 @@ for.body1016: ; preds = %for.cond1012
430430
br label %for.body1016
431431

432432
for.cond1035: ; preds = %for.inc1055, %if.then1026
433-
br i1 undef, label %for.cond1040, label %lbl_664
433+
br i1 %arg, label %for.cond1040, label %lbl_664
434434

435435
for.cond1040: ; preds = %for.body1044, %for.cond1035
436436
ret void
@@ -461,9 +461,9 @@ if.end:
461461
ret void
462462
}
463463

464-
define void @test17() {
464+
define void @test17(i1 %arg) {
465465
entry:
466-
br i1 undef, label %bb269.us.us, label %bb269.us.us.us
466+
br i1 %arg, label %bb269.us.us, label %bb269.us.us.us
467467

468468
bb269.us.us.us:
469469
%indvar = phi i64 [ %indvar.next, %bb287.us.us.us ], [ 0, %entry ]

llvm/test/Transforms/JumpThreading/ddt-crash.ll

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ bb11:
6666
ret void
6767
}
6868

69-
define void @spam(ptr %arg) {
69+
define void @spam(ptr %arg, i1 %arg2) {
7070
; CHECK-LABEL: @spam(
7171
; CHECK-NEXT: bb:
7272
; CHECK-NEXT: [[TMP:%.*]] = load i8, ptr undef, align 8
@@ -87,9 +87,11 @@ define void @spam(ptr %arg) {
8787
; CHECK-NEXT: i8 0, label [[BB11]]
8888
; CHECK-NEXT: i8 1, label [[BB10:%.*]]
8989
; CHECK-NEXT: i8 2, label [[BB10]]
90-
; CHECK-NEXT: i8 3, label [[BB8]]
91-
; CHECK-NEXT: i8 4, label [[BB8]]
90+
; CHECK-NEXT: i8 3, label [[BB7:%.*]]
91+
; CHECK-NEXT: i8 4, label [[BB7]]
9292
; CHECK-NEXT: ]
93+
; CHECK: bb7:
94+
; CHECK-NEXT: br i1 [[ARG2:%.*]], label [[BB8]], label [[BB10]]
9395
; CHECK: bb8:
9496
; CHECK-NEXT: [[TMP9:%.*]] = icmp eq ptr undef, [[ARG:%.*]]
9597
; CHECK-NEXT: br i1 [[TMP9]], label [[BB10]], label [[BB2]]
@@ -175,7 +177,7 @@ bb6:
175177
br label %bb7
176178

177179
bb7:
178-
br i1 undef, label %bb8, label %bb10
180+
br i1 %arg2, label %bb8, label %bb10
179181

180182
bb8:
181183
%tmp9 = icmp eq ptr undef, %arg

llvm/test/Transforms/JumpThreading/ddt-crash4.ll

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
@global = external global i64, align 8
55

6-
define void @f() {
6+
define void @f(i1 %arg) {
77
; CHECK-LABEL: @f(
88
; CHECK-NEXT: bb:
99
; CHECK-NEXT: br label [[BB1:%.*]]
@@ -15,12 +15,28 @@ define void @f() {
1515
; CHECK-NEXT: [[TMP4:%.*]] = load i64, ptr @global, align 8
1616
; CHECK-NEXT: [[TMP5:%.*]] = icmp eq i64 [[TMP4]], 0
1717
; CHECK-NEXT: br i1 [[TMP5]], label [[BB23:%.*]], label [[BB23]]
18-
; CHECK: bb23:
18+
; CHECK: bb10:
19+
; CHECK-NEXT: [[TMP11:%.*]] = load i64, ptr @global, align 8
20+
; CHECK-NEXT: [[TMP12:%.*]] = icmp slt i64 [[TMP11]], 5
21+
; CHECK-NEXT: br i1 [[TMP12]], label [[BB14:%.*]], label [[BB17:%.*]]
22+
; CHECK: bb14:
23+
; CHECK-NEXT: br i1 [[ARG:%.*]], label [[BB15:%.*]], label [[BB10:%.*]]
24+
; CHECK: bb15:
25+
; CHECK-NEXT: unreachable
26+
; CHECK: bb17:
1927
; CHECK-NEXT: br label [[BB26:%.*]]
28+
; CHECK: bb18:
29+
; CHECK-NEXT: br i1 [[ARG]], label [[BB23]], label [[BB14]]
30+
; CHECK: bb21:
31+
; CHECK-NEXT: br label [[BB26]]
32+
; CHECK: bb23:
33+
; CHECK-NEXT: br i1 [[ARG]], label [[BB24:%.*]], label [[BB14]]
34+
; CHECK: bb24:
35+
; CHECK-NEXT: br i1 [[ARG]], label [[BB28:%.*]], label [[BB21:%.*]]
2036
; CHECK: bb26:
2137
; CHECK-NEXT: br label [[BB1]]
2238
; CHECK: bb27:
23-
; CHECK-NEXT: br label [[BB26]]
39+
; CHECK-NEXT: br label [[BB24]]
2440
;
2541
bb:
2642
br label %bb1
@@ -52,7 +68,7 @@ bb13:
5268
br label %bb14
5369

5470
bb14:
55-
br i1 undef, label %bb15, label %bb16
71+
br i1 %arg, label %bb15, label %bb16
5672

5773
bb15:
5874
unreachable
@@ -64,10 +80,10 @@ bb17:
6480
br label %bb18
6581

6682
bb18:
67-
br i1 undef, label %bb22, label %bb13
83+
br i1 %arg, label %bb22, label %bb13
6884

6985
bb19:
70-
br i1 undef, label %bb20, label %bb21
86+
br i1 %arg, label %bb20, label %bb21
7187

7288
bb20:
7389
unreachable
@@ -79,10 +95,10 @@ bb22:
7995
br label %bb23
8096

8197
bb23:
82-
br i1 undef, label %bb24, label %bb13
98+
br i1 %arg, label %bb24, label %bb13
8399

84100
bb24:
85-
br i1 undef, label %bb26, label %bb25
101+
br i1 %arg, label %bb26, label %bb25
86102

87103
bb25:
88104
br label %bb19

llvm/test/Transforms/JumpThreading/landing-pad.ll

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ entry:
6363
ret void
6464
}
6565

66-
define void @_Z3fn1v() uwtable personality ptr @__gxx_personality_v0 {
66+
define void @_Z3fn1v(i1 %arg) uwtable personality ptr @__gxx_personality_v0 {
6767
; CHECK-LABEL: @_Z3fn1v(
6868
; CHECK-NEXT: entry:
6969
; CHECK-NEXT: [[CALL:%.*]] = call noalias ptr @_Znwm()
@@ -93,6 +93,8 @@ define void @_Z3fn1v() uwtable personality ptr @__gxx_personality_v0 {
9393
; CHECK-NEXT: [[TMP3:%.*]] = load i32, ptr [[_REF_I_I_I]], align 4
9494
; CHECK-NEXT: [[TOBOOL_I_I_I:%.*]] = icmp eq i32 [[TMP3]], 0
9595
; CHECK-NEXT: br i1 [[TOBOOL_I_I_I]], label [[_ZN1BI1DED1EV_EXIT:%.*]], label [[DELETE_NOTNULL_I_I_I:%.*]]
96+
; CHECK: if.then.i.i.i:
97+
; CHECK-NEXT: br i1 [[ARG:%.*]], label [[_ZN1BI1DED1EV_EXIT]], label [[DELETE_NOTNULL_I_I_I1:%.*]]
9698
; CHECK: delete.notnull.i.i.i:
9799
; CHECK-NEXT: call void @_ZdlPv()
98100
; CHECK-NEXT: unreachable
@@ -138,7 +140,7 @@ lpad1: ; preds = %_ZN1DC1Ev.exit, %_Z
138140
br i1 %tobool.i.i.i, label %_ZN1BI1DED1Ev.exit, label %if.then.i.i.i
139141

140142
if.then.i.i.i: ; preds = %lpad1
141-
br i1 undef, label %_ZN1BI1DED1Ev.exit, label %delete.notnull.i.i.i
143+
br i1 %arg, label %_ZN1BI1DED1Ev.exit, label %delete.notnull.i.i.i
142144

143145
delete.notnull.i.i.i: ; preds = %if.then.i.i.i
144146
call void @_ZdlPv() #9
@@ -191,14 +193,16 @@ entry:
191193

192194
declare void @_ZN1D16deleteKeyPressedEv()
193195

194-
define void @_ZN1BI1DED1Ev(ptr nocapture readonly %this) unnamed_addr uwtable align 2 {
196+
define void @_ZN1BI1DED1Ev(ptr nocapture readonly %this, i1 %arg) unnamed_addr uwtable align 2 {
195197
; CHECK-LABEL: @_ZN1BI1DED1Ev(
196198
; CHECK-NEXT: entry:
197199
; CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[THIS:%.*]], align 8
198200
; CHECK-NEXT: [[_REF_I_I:%.*]] = getelementptr inbounds [[CLASS_D:%.*]], ptr [[TMP0]], i64 0, i32 0, i32 0, i32 1, i32 0, i32 0
199201
; CHECK-NEXT: [[TMP1:%.*]] = load i32, ptr [[_REF_I_I]], align 4
200202
; CHECK-NEXT: [[TOBOOL_I_I:%.*]] = icmp eq i32 [[TMP1]], 0
201203
; CHECK-NEXT: br i1 [[TOBOOL_I_I]], label [[_ZN1BI1DED2EV_EXIT:%.*]], label [[DELETE_NOTNULL_I_I:%.*]]
204+
; CHECK: if.then.i.i:
205+
; CHECK-NEXT: br i1 [[ARG:%.*]], label [[_ZN1BI1DED2EV_EXIT]], label [[DELETE_NOTNULL_I_I1:%.*]]
202206
; CHECK: delete.notnull.i.i:
203207
; CHECK-NEXT: call void @_ZdlPv()
204208
; CHECK-NEXT: unreachable
@@ -213,7 +217,7 @@ entry:
213217
br i1 %tobool.i.i, label %_ZN1BI1DED2Ev.exit, label %if.then.i.i
214218

215219
if.then.i.i: ; preds = %entry
216-
br i1 undef, label %_ZN1BI1DED2Ev.exit, label %delete.notnull.i.i
220+
br i1 %arg, label %_ZN1BI1DED2Ev.exit, label %delete.notnull.i.i
217221

218222
delete.notnull.i.i: ; preds = %if.then.i.i
219223
call void @_ZdlPv() #9
@@ -225,14 +229,16 @@ _ZN1BI1DED2Ev.exit: ; preds = %entry, %if.then.i.i
225229

226230
declare hidden void @__clang_call_terminate()
227231

228-
define void @_ZN1BI1DED2Ev(ptr nocapture readonly %this) unnamed_addr uwtable align 2 {
232+
define void @_ZN1BI1DED2Ev(ptr nocapture readonly %this, i1 %arg) unnamed_addr uwtable align 2 {
229233
; CHECK-LABEL: @_ZN1BI1DED2Ev(
230234
; CHECK-NEXT: entry:
231235
; CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[THIS:%.*]], align 8
232236
; CHECK-NEXT: [[_REF_I:%.*]] = getelementptr inbounds [[CLASS_D:%.*]], ptr [[TMP0]], i64 0, i32 0, i32 0, i32 1, i32 0, i32 0
233237
; CHECK-NEXT: [[TMP1:%.*]] = load i32, ptr [[_REF_I]], align 4
234238
; CHECK-NEXT: [[TOBOOL_I:%.*]] = icmp eq i32 [[TMP1]], 0
235239
; CHECK-NEXT: br i1 [[TOBOOL_I]], label [[_ZN1AI1CE5DEREFEV_EXIT:%.*]], label [[DELETE_NOTNULL_I:%.*]]
240+
; CHECK: if.then.i:
241+
; CHECK-NEXT: br i1 [[ARG:%.*]], label [[_ZN1AI1CE5DEREFEV_EXIT]], label [[DELETE_NOTNULL_I1:%.*]]
236242
; CHECK: delete.notnull.i:
237243
; CHECK-NEXT: call void @_ZdlPv()
238244
; CHECK-NEXT: unreachable
@@ -247,7 +253,7 @@ entry:
247253
br i1 %tobool.i, label %_ZN1AI1CE5derefEv.exit, label %if.then.i
248254

249255
if.then.i: ; preds = %entry
250-
br i1 undef, label %_ZN1AI1CE5derefEv.exit, label %delete.notnull.i
256+
br i1 %arg, label %_ZN1AI1CE5derefEv.exit, label %delete.notnull.i
251257

252258
delete.notnull.i: ; preds = %if.then.i
253259
call void @_ZdlPv() #9
@@ -257,12 +263,14 @@ _ZN1AI1CE5derefEv.exit: ; preds = %entry, %if.then.i
257263
ret void
258264
}
259265

260-
define void @_ZN1AI1CE5derefEv(ptr nocapture readonly %this) nounwind uwtable align 2 {
266+
define void @_ZN1AI1CE5derefEv(ptr nocapture readonly %this, i1 %arg) nounwind uwtable align 2 {
261267
; CHECK-LABEL: @_ZN1AI1CE5derefEv(
262268
; CHECK-NEXT: entry:
263269
; CHECK-NEXT: [[TMP0:%.*]] = load i32, ptr [[THIS:%.*]], align 4
264270
; CHECK-NEXT: [[TOBOOL:%.*]] = icmp eq i32 [[TMP0]], 0
265271
; CHECK-NEXT: br i1 [[TOBOOL]], label [[IF_END:%.*]], label [[DELETE_NOTNULL:%.*]]
272+
; CHECK: if.then:
273+
; CHECK-NEXT: br i1 [[ARG:%.*]], label [[IF_END]], label [[DELETE_NOTNULL1:%.*]]
266274
; CHECK: delete.notnull:
267275
; CHECK-NEXT: call void @_ZdlPv()
268276
; CHECK-NEXT: unreachable
@@ -275,7 +283,7 @@ entry:
275283
br i1 %tobool, label %if.end, label %if.then
276284

277285
if.then: ; preds = %entry
278-
br i1 undef, label %if.end, label %delete.notnull
286+
br i1 %arg, label %if.end, label %delete.notnull
279287

280288
delete.notnull: ; preds = %if.then
281289
call void @_ZdlPv() #9

llvm/test/Transforms/JumpThreading/pr22086.ll

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,15 @@
33

44

55

6-
define void @f() {
7-
; CHECK-LABEL: define void @f() {
6+
define void @f(i1 %arg) {
7+
; CHECK-LABEL: define void @f(
8+
; CHECK-SAME: i1 [[ARG:%.*]]) {
89
; CHECK-NEXT: [[ENTRY:.*:]]
9-
; CHECK-NEXT: br label %[[LOR_RHS:.*]]
10+
; CHECK-NEXT: br label %[[FOR_COND1:.*]]
11+
; CHECK: [[FOR_COND1]]:
12+
; CHECK-NEXT: br i1 [[ARG]], label %[[LOR_RHS:.*]], label %[[LOR_RHS]]
1013
; CHECK: [[LOR_RHS]]:
11-
; CHECK-NEXT: br label %[[LOR_RHS]]
14+
; CHECK-NEXT: br label %[[FOR_COND1]]
1215
;
1316
entry:
1417
br label %for.cond1
@@ -23,7 +26,7 @@ if.end16:
2326

2427
for.cond1:
2528
%g.1 = phi i32 [ 0, %entry ], [ 0, %lor.rhs ], [ %g.3, %if.end16 ]
26-
br i1 undef, label %lor.rhs, label %if.end16
29+
br i1 %arg, label %lor.rhs, label %if.end16
2730

2831
lor.rhs:
2932
br label %for.cond1

llvm/test/Transforms/JumpThreading/pr9331.ll

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,16 @@ entry:
1313

1414
for.cond2: ; preds = %for.inc46, %lor.end, %entry
1515
%p_44.addr.1 = phi i8 [ %p_44.addr.1, %lor.end ], [ %p_44, %entry ], [ %p_44.addr.1, %for.inc46 ]
16-
br i1 undef, label %for.inc46, label %for.body5
16+
br i1 true, label %for.inc46, label %for.body5
1717

1818
for.body5: ; preds = %for.cond2
19-
br i1 undef, label %lbl_465, label %if.then9
19+
br i1 false, label %lbl_465, label %if.then9
2020

2121
if.then9: ; preds = %for.body5
2222
br label %return
2323

2424
lbl_465: ; preds = %lbl_465, %for.body5
25-
%tobool19 = icmp eq i8 undef, 0
26-
br i1 %tobool19, label %if.end21, label %lbl_465
25+
br i1 true, label %if.end21, label %lbl_465
2726

2827
if.end21: ; preds = %lbl_465
2928
%conv23 = zext i8 %p_44.addr.1 to i64

llvm/test/Transforms/JumpThreading/preserving-debugloc-br.ll

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,10 @@ lor.rhs: ; preds = %entry
2424
br label %lor.end, !dbg !10
2525

2626
lor.end: ; preds = %lor.rhs, %entry
27-
%cmp103 = xor i1 undef, undef, !dbg !11
28-
br i1 %cmp103, label %for.cond, label %if.then, !dbg !12
27+
br i1 false, label %for.cond, label %if.then, !dbg !12
2928

3029
for.cond: ; preds = %for.body, %lor.end
31-
br i1 undef, label %if.then, label %for.body, !dbg !13
30+
br i1 false, label %if.then, label %for.body, !dbg !13
3231

3332
for.body: ; preds = %for.cond
3433
br label %for.cond, !dbg !14

0 commit comments

Comments
 (0)