Skip to content

Commit d5a52ae

Browse files
committed
[IndVarSimplify][NFC] Autogenerate check lines in loop_evaluate_1.ll
Being affected by upcoming patch. llvm-svn: 366746
1 parent 63b921f commit d5a52ae

File tree

1 file changed

+27
-18
lines changed

1 file changed

+27
-18
lines changed

llvm/test/Transforms/IndVarSimplify/loop_evaluate_1.ll

Lines changed: 27 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,43 @@
1+
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
12
; RUN: opt < %s -indvars -loop-deletion -simplifycfg -S | FileCheck %s
23

34
; Testcase distilled from 256.bzip2
4-
; CHECK-LABEL: @test1
5-
; CHECK-NOT: br
65
define i32 @test1() {
6+
; CHECK-LABEL: @test1(
7+
; CHECK-NEXT: entry:
8+
; CHECK-NEXT: ret i32 364
9+
;
710
entry:
8-
br label %loopentry
11+
br label %loopentry
912

1013
loopentry: ; preds = %loopentry, %entry
11-
%indvar1 = phi i32 [ 0, %entry ], [ %indvar.next2, %loopentry ] ; <i32> [#uses=1]
12-
%h.0 = phi i32 [ %tmp.2, %loopentry ], [ 4, %entry ] ; <i32> [#uses=1]
13-
%tmp.1 = mul i32 %h.0, 3 ; <i32> [#uses=1]
14-
%tmp.2 = add i32 %tmp.1, 1 ; <i32> [#uses=2]
15-
%indvar.next2 = add i32 %indvar1, 1 ; <i32> [#uses=2]
16-
%exitcond3 = icmp ne i32 %indvar.next2, 4 ; <i1> [#uses=1]
17-
br i1 %exitcond3, label %loopentry, label %loopexit
14+
%indvar1 = phi i32 [ 0, %entry ], [ %indvar.next2, %loopentry ] ; <i32> [#uses=1]
15+
%h.0 = phi i32 [ %tmp.2, %loopentry ], [ 4, %entry ] ; <i32> [#uses=1]
16+
%tmp.1 = mul i32 %h.0, 3 ; <i32> [#uses=1]
17+
%tmp.2 = add i32 %tmp.1, 1 ; <i32> [#uses=2]
18+
%indvar.next2 = add i32 %indvar1, 1 ; <i32> [#uses=2]
19+
%exitcond3 = icmp ne i32 %indvar.next2, 4 ; <i1> [#uses=1]
20+
br i1 %exitcond3, label %loopentry, label %loopexit
1821

1922
loopexit: ; preds = %loopentry
20-
ret i32 %tmp.2
23+
ret i32 %tmp.2
2124
}
2225

23-
2426
; PR12377
25-
; CHECK-LABEL: @test2
26-
; CHECK: [[VAR1:%.+]] = add i32 %arg, -11
27-
; CHECK: [[VAR2:%.+]] = lshr i32 [[VAR1]], 1
28-
; CHECK: [[VAR3:%.+]] = add nuw i32 [[VAR2]], 1
29-
; CHECK: [[VAR4:%.+]] = phi i32 [ 0, %bb ], [ [[VAR3]], %bb1.preheader ]
30-
; CHECK: ret i32 [[VAR4]]
3127
define i32 @test2(i32 %arg) {
28+
; CHECK-LABEL: @test2(
29+
; CHECK-NEXT: bb:
30+
; CHECK-NEXT: [[TMP:%.*]] = icmp ugt i32 [[ARG:%.*]], 10
31+
; CHECK-NEXT: br i1 [[TMP]], label [[BB1_PREHEADER:%.*]], label [[BB7:%.*]]
32+
; CHECK: bb1.preheader:
33+
; CHECK-NEXT: [[TMP0:%.*]] = add i32 [[ARG]], -11
34+
; CHECK-NEXT: [[TMP1:%.*]] = lshr i32 [[TMP0]], 1
35+
; CHECK-NEXT: [[TMP2:%.*]] = add nuw i32 [[TMP1]], 1
36+
; CHECK-NEXT: br label [[BB7]]
37+
; CHECK: bb7:
38+
; CHECK-NEXT: [[TMP8:%.*]] = phi i32 [ 0, [[BB:%.*]] ], [ [[TMP2]], [[BB1_PREHEADER]] ]
39+
; CHECK-NEXT: ret i32 [[TMP8]]
40+
;
3241
bb:
3342
%tmp = icmp ugt i32 %arg, 10
3443
br i1 %tmp, label %bb1, label %bb7

0 commit comments

Comments
 (0)