Skip to content

Commit bcab090

Browse files
committed
Remove br i1 undef in LoopVectorize directory
1 parent 00f3494 commit bcab090

File tree

10 files changed

+53
-53
lines changed

10 files changed

+53
-53
lines changed

llvm/test/Transforms/LoopVectorize/2012-10-20-infloop.ll

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,25 +20,25 @@ for.body: ; preds = %for.body, %entry
2020
%indvars.iv47 = phi i64 [ 0, %entry ], [ %indvars.iv.next48, %for.body ]
2121
%0 = phi i32 [ 1, %entry ], [ 0, %for.body ]
2222
%indvars.iv.next48 = add i64 %indvars.iv47, 1
23-
br i1 undef, label %for.end, label %for.body
23+
br i1 false, label %for.end, label %for.body
2424

2525
for.end: ; preds = %for.body
2626
unreachable
2727
}
2828

2929
;PR14701
30-
define void @start_model_rare() nounwind uwtable ssp {
30+
define void @start_model_rare(i1 %arg) nounwind uwtable ssp {
3131
entry:
32-
br i1 undef, label %return, label %if.end
32+
br i1 false, label %return, label %if.end
3333

3434
if.end: ; preds = %entry
35-
br i1 undef, label %cond.false, label %cond.true
35+
br i1 true, label %cond.false, label %cond.true
3636

3737
cond.true: ; preds = %if.end
3838
unreachable
3939

4040
cond.false: ; preds = %if.end
41-
br i1 undef, label %cond.false28, label %cond.true20
41+
br i1 true, label %cond.false28, label %cond.true20
4242

4343
cond.true20: ; preds = %cond.false
4444
unreachable
@@ -49,7 +49,7 @@ cond.false28: ; preds = %cond.false
4949
for.body40: ; preds = %for.inc50, %cond.false28
5050
%indvars.iv123 = phi i64 [ 3, %cond.false28 ], [ %indvars.iv.next124, %for.inc50 ]
5151
%step.0121 = phi i32 [ 1, %cond.false28 ], [ %step.1, %for.inc50 ]
52-
br i1 undef, label %if.then46, label %for.inc50
52+
br i1 %arg, label %if.then46, label %for.inc50
5353

5454
if.then46: ; preds = %for.body40
5555
%inc47 = add nsw i32 %step.0121, 1

llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-cg-bug.ll

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,15 @@ target triple = "x86_64-unknown-linux-gnu"
3535
; This test was originally vectorized, but now SCEV is smart enough to prove
3636
; that its trip count is 1, so it gets ignored by vectorizer.
3737
; Function Attrs: uwtable
38-
define void @test_01() {
38+
define void @test_01(i1 %arg) {
3939
br label %.outer
4040

4141
; <label>:1: ; preds = %2
4242
ret void
4343

4444
; <label>:2: ; preds = %._crit_edge.loopexit
4545
%3 = add nsw i32 %.ph, -2
46-
br i1 undef, label %1, label %.outer
46+
br i1 %arg, label %1, label %.outer
4747

4848
.outer: ; preds = %2, %0
4949
%.ph = phi i32 [ %3, %2 ], [ 336, %0 ]
@@ -65,7 +65,7 @@ define void @test_01() {
6565
br i1 %14, label %._crit_edge.loopexit, label %6
6666

6767
._crit_edge.loopexit: ; preds = %._crit_edge.loopexit, %6
68-
br i1 undef, label %2, label %._crit_edge.loopexit
68+
br i1 %arg, label %2, label %._crit_edge.loopexit
6969
}
7070

7171
; After trip count is increased, the test gets vectorized.
@@ -74,15 +74,15 @@ define void @test_01() {
7474
; CHECK: store <4 x i32>
7575

7676
; Function Attrs: uwtable
77-
define void @test_02() {
77+
define void @test_02(i1 %arg) {
7878
br label %.outer
7979

8080
; <label>:1: ; preds = %2
8181
ret void
8282

8383
; <label>:2: ; preds = %._crit_edge.loopexit
8484
%3 = add nsw i32 %.ph, -2
85-
br i1 undef, label %1, label %.outer
85+
br i1 %arg, label %1, label %.outer
8686

8787
.outer: ; preds = %2, %0
8888
%.ph = phi i32 [ %3, %2 ], [ 336, %0 ]
@@ -104,5 +104,5 @@ define void @test_02() {
104104
br i1 %14, label %._crit_edge.loopexit, label %6
105105

106106
._crit_edge.loopexit: ; preds = %._crit_edge.loopexit, %6
107-
br i1 undef, label %2, label %._crit_edge.loopexit
107+
br i1 %arg, label %2, label %._crit_edge.loopexit
108108
}

llvm/test/Transforms/LoopVectorize/X86/pr39160.ll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128-ni:1"
44
target triple = "x86_64-unknown-linux-gnu"
55

66
; Make sure that we can compile the test without crash.
7-
define void @barney(ptr %dst) {
7+
define void @barney(ptr %dst, i1 %arg) {
88

99
; CHECK-LABEL: @barney(
1010
; CHECK: middle.block:
@@ -28,13 +28,13 @@ bb19: ; preds = %bb36, %bb5
2828
br label %bb50
2929

3030
bb33: ; preds = %bb62
31-
br i1 undef, label %bb18, label %bb36
31+
br i1 %arg, label %bb18, label %bb36
3232

3333
bb36: ; preds = %bb33
3434
br label %bb19
3535

3636
bb46: ; preds = %bb50
37-
br i1 undef, label %bb48, label %bb59
37+
br i1 %arg, label %bb48, label %bb59
3838

3939
bb48: ; preds = %bb46
4040
%tmp49 = add i32 %tmp52, 14

llvm/test/Transforms/LoopVectorize/X86/rauw-bug.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ target triple = "x86_64-apple-macosx"
1313
; radar://15498655
1414

1515
; CHECK: reduced
16-
define void @reduced() {
16+
define void @reduced(i1 %arg) {
1717
entry:
18-
br i1 undef, label %while.body, label %while.cond63.preheader.while.end76_crit_edge
18+
br i1 %arg, label %while.body, label %while.cond63.preheader.while.end76_crit_edge
1919

2020
while.cond63.preheader.while.end76_crit_edge:
2121
ret void

llvm/test/Transforms/LoopVectorize/X86/reduction-crash.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f3
44
target triple = "i386-apple-darwin"
55

66
; PR15344
7-
define void @test1(ptr nocapture %arg, i32 %arg1) nounwind {
7+
define void @test1(ptr nocapture %arg, i32 %arg1, i1 %arg2) nounwind {
88
; CHECK-LABEL: @test1(
99
; CHECK: preheader
1010
; CHECK: insertelement <2 x double> zeroinitializer, double %tmp, i32 0
@@ -15,7 +15,7 @@ bb:
1515

1616
bb2: ; preds = %bb
1717
%tmp = load double, ptr null, align 8
18-
br i1 undef, label %bb3, label %bb12
18+
br i1 %arg2, label %bb3, label %bb12
1919

2020
bb3: ; preds = %bb3, %bb2
2121
%tmp4 = phi double [ %tmp9, %bb3 ], [ %tmp, %bb2 ]

llvm/test/Transforms/LoopVectorize/if-conv-crash.ll

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,19 @@ target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f3
44

55
define fastcc void @DD_dump() nounwind uwtable ssp {
66
entry:
7-
br i1 undef, label %lor.lhs.false, label %if.end25
7+
br i1 true, label %lor.lhs.false, label %if.end25
88

99
lor.lhs.false: ; preds = %entry
10-
br i1 undef, label %if.end21, label %if.else
10+
br i1 false, label %if.end21, label %if.else
1111

1212
if.else: ; preds = %lor.lhs.false
13-
br i1 undef, label %num_q.exit, label %while.body.i.preheader
13+
br i1 false, label %num_q.exit, label %while.body.i.preheader
1414

1515
while.body.i.preheader: ; preds = %if.else
1616
br label %while.body.i
1717

1818
while.body.i: ; preds = %if.end.i, %while.body.i.preheader
19-
switch i8 undef, label %if.end.i [
19+
switch i8 0, label %if.end.i [
2020
i8 39, label %if.then.i
2121
i8 92, label %if.then.i
2222
]
@@ -25,7 +25,7 @@ if.then.i: ; preds = %while.body.i, %whil
2525
br label %if.end.i
2626

2727
if.end.i: ; preds = %if.then.i, %while.body.i
28-
br i1 undef, label %num_q.exit, label %while.body.i
28+
br i1 false, label %num_q.exit, label %while.body.i
2929

3030
num_q.exit: ; preds = %if.end.i, %if.else
3131
unreachable

llvm/test/Transforms/LoopVectorize/incorrect-dom-info.ll

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
66
@PL_utf8skip = external constant [0 x i8]
77

88
; Function Attrs: nounwind ssp uwtable
9-
define void @Perl_pp_quotemeta() #0 {
9+
define void @Perl_pp_quotemeta(i1 %arg) #0 {
1010
%len = alloca i64, align 8
11-
br i1 undef, label %2, label %1
11+
br i1 %arg, label %2, label %1
1212

1313
; <label>:1 ; preds = %0
1414
br label %3
@@ -17,31 +17,31 @@ define void @Perl_pp_quotemeta() #0 {
1717
br label %3
1818

1919
; <label>:3 ; preds = %2, %1
20-
br i1 undef, label %34, label %4
20+
br i1 %arg, label %34, label %4
2121

2222
; <label>:4 ; preds = %3
23-
br i1 undef, label %5, label %6
23+
br i1 %arg, label %5, label %6
2424

2525
; <label>:5 ; preds = %4
2626
br label %6
2727

2828
; <label>:6 ; preds = %5, %4
29-
br i1 undef, label %7, label %8
29+
br i1 %arg, label %7, label %8
3030

3131
; <label>:7 ; preds = %6
3232
br label %8
3333

3434
; <label>:8 ; preds = %7, %6
35-
br i1 undef, label %.preheader, label %9
35+
br i1 %arg, label %.preheader, label %9
3636

3737
.preheader: ; preds = %9, %8
38-
br i1 undef, label %.loopexit, label %.lr.ph
38+
br i1 %arg, label %.loopexit, label %.lr.ph
3939

4040
; <label>:9 ; preds = %8
41-
br i1 undef, label %thread-pre-split.preheader, label %.preheader
41+
br i1 %arg, label %thread-pre-split.preheader, label %.preheader
4242

4343
thread-pre-split.preheader: ; preds = %9
44-
br i1 undef, label %thread-pre-split._crit_edge, label %.lr.ph21
44+
br i1 %arg, label %thread-pre-split._crit_edge, label %.lr.ph21
4545

4646
.thread-pre-split.loopexit_crit_edge: ; preds = %19
4747
%scevgep.sum = xor i64 %umax, -1
@@ -55,15 +55,15 @@ thread-pre-split.loopexit: ; preds = %11, %.thread-pre-sp
5555
.lr.ph21: ; preds = %26, %thread-pre-split.loopexit, %thread-pre-split.preheader
5656
%d.020 = phi ptr [ undef, %26 ], [ %d.1.lcssa, %thread-pre-split.loopexit ], [ undef, %thread-pre-split.preheader ]
5757
%10 = phi i64 [ %28, %26 ], [ undef, %thread-pre-split.loopexit ], [ undef, %thread-pre-split.preheader ]
58-
br i1 undef, label %11, label %22
58+
br i1 %arg, label %11, label %22
5959

6060
; <label>:11 ; preds = %.lr.ph21
6161
%12 = getelementptr inbounds [0 x i8], ptr @PL_utf8skip, i64 0, i64 undef
6262
%13 = load i8, ptr %12, align 1
6363
%14 = zext i8 %13 to i64
6464
%15 = icmp ugt i64 %14, %10
6565
%. = select i1 %15, i64 %10, i64 %14
66-
br i1 undef, label %thread-pre-split.loopexit, label %.lr.ph28
66+
br i1 %arg, label %thread-pre-split.loopexit, label %.lr.ph28
6767

6868
.lr.ph28: ; preds = %11
6969
%16 = xor i64 %10, -1
@@ -79,45 +79,45 @@ thread-pre-split.loopexit: ; preds = %11, %.thread-pre-sp
7979
br i1 %21, label %.thread-pre-split.loopexit_crit_edge, label %19
8080

8181
; <label>:22 ; preds = %.lr.ph21
82-
br i1 undef, label %26, label %23
82+
br i1 %arg, label %26, label %23
8383

8484
; <label>:23 ; preds = %22
85-
br i1 undef, label %26, label %24
85+
br i1 %arg, label %26, label %24
8686

8787
; <label>:24 ; preds = %23
88-
br i1 undef, label %26, label %25
88+
br i1 %arg, label %26, label %25
8989

9090
; <label>:25 ; preds = %24
9191
br label %26
9292

9393
; <label>:26 ; preds = %25, %24, %23, %22
9494
%27 = load i64, ptr %len, align 8
9595
%28 = add i64 %27, -1
96-
br i1 undef, label %thread-pre-split._crit_edge, label %.lr.ph21
96+
br i1 %arg, label %thread-pre-split._crit_edge, label %.lr.ph21
9797

9898
thread-pre-split._crit_edge: ; preds = %26, %thread-pre-split.loopexit, %thread-pre-split.preheader
9999
br label %.loopexit
100100

101101
.lr.ph: ; preds = %33, %.preheader
102-
br i1 undef, label %29, label %thread-pre-split5
102+
br i1 %arg, label %29, label %thread-pre-split5
103103

104104
; <label>:29 ; preds = %.lr.ph
105-
br i1 undef, label %33, label %30
105+
br i1 %arg, label %33, label %30
106106

107107
; <label>:30 ; preds = %29
108-
br i1 undef, label %33, label %31
108+
br i1 %arg, label %33, label %31
109109

110110
thread-pre-split5: ; preds = %.lr.ph
111-
br i1 undef, label %33, label %31
111+
br i1 %arg, label %33, label %31
112112

113113
; <label>:31 ; preds = %thread-pre-split5, %30
114-
br i1 undef, label %33, label %32
114+
br i1 %arg, label %33, label %32
115115

116116
; <label>:32 ; preds = %31
117117
br label %33
118118

119119
; <label>:33 ; preds = %32, %31, %thread-pre-split5, %30, %29
120-
br i1 undef, label %.loopexit, label %.lr.ph
120+
br i1 %arg, label %.loopexit, label %.lr.ph
121121

122122
.loopexit: ; preds = %33, %thread-pre-split._crit_edge, %.preheader
123123
br label %35
@@ -126,7 +126,7 @@ thread-pre-split5: ; preds = %.lr.ph
126126
br label %35
127127

128128
; <label>:35 ; preds = %34, %.loopexit
129-
br i1 undef, label %37, label %36
129+
br i1 %arg, label %37, label %36
130130

131131
; <label>:36 ; preds = %35
132132
br label %37

llvm/test/Transforms/LoopVectorize/nsw-crash.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
target datalayout =
44
"e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
55

6-
define void @test() {
6+
define void @test(i1 %arg) {
77
entry:
8-
br i1 undef, label %while.end, label %while.body.lr.ph
8+
br i1 %arg, label %while.end, label %while.body.lr.ph
99

1010
while.body.lr.ph:
1111
br label %while.body

llvm/test/Transforms/LoopVectorize/pr36311.ll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,16 @@ $test = comdat any
1313
declare i32 @__gxx_personality_v0(...)
1414

1515
; Function Attrs: uwtable
16-
define dso_local void @test() local_unnamed_addr #0 comdat align 2 personality ptr @__gxx_personality_v0 {
16+
define dso_local void @test(i1 %arg) local_unnamed_addr #0 comdat align 2 personality ptr @__gxx_personality_v0 {
1717
entry:
1818
br label %for.body51
1919

2020
for.body51: ; preds = %for.body51, %entry
21-
br i1 undef, label %for.body51, label %for.body89.lr.ph
21+
br i1 %arg, label %for.body51, label %for.body89.lr.ph
2222

2323
for.cond80.loopexit: ; preds = %for.body89
2424
%inc94.lcssa = phi i32 [ %inc94, %for.body89 ]
25-
br i1 undef, label %for.body89.lr.ph, label %nrvo.skipdtor.loopexit
25+
br i1 %arg, label %for.body89.lr.ph, label %nrvo.skipdtor.loopexit
2626

2727
for.body89.lr.ph: ; preds = %for.cond80.loopexit, %for.body51
2828
%i79.0179 = phi i32 [ %add90, %for.cond80.loopexit ], [ 0, %for.body51 ]

llvm/test/Transforms/LoopVectorize/reduction-order.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,13 @@ t31:
4242
; exercises the path and bails out without performing vectorization.
4343
; CHECK-LABEL: quux
4444
; CHECK-NOT: fadd <4 x
45-
define void @quux() {
45+
define void @quux(i1 %arg) {
4646
bb:
4747
br label %header
4848

4949
latch: ; preds = %header
5050
%tmp = phi double [ %tmp6, %header ]
51-
br i1 undef, label %header, label %bb2
51+
br i1 %arg, label %header, label %bb2
5252

5353
bb2: ; preds = %latch
5454
%tmp3 = phi double [ %tmp, %latch ]

0 commit comments

Comments
 (0)