[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / Analysis / ScalarEvolution / 2007-09-27-LargeStepping.ll
blobb65a5250244749a0306356fd48ab5f7d46650c00
1 ; RUN: opt < %s -analyze -scalar-evolution -scalar-evolution-max-iterations=0 | FileCheck %s
2 ; PR1706
4 ; CHECK: backedge-taken count is 13
6 define i32 @f() {
7 entry:
8         br label %bb5
10 bb:             ; preds = %bb5
11         %tmp2 = shl i32 %j.0, 1         ; <i32> [#uses=1]
12         %tmp4 = add i32 %i.0, 268435456         ; <i32> [#uses=1]
13         br label %bb5
15 bb5:            ; preds = %bb, %entry
16         %j.0 = phi i32 [ 1, %entry ], [ %tmp2, %bb ]            ; <i32> [#uses=2]
17         %i.0 = phi i32 [ -1879048192, %entry ], [ %tmp4, %bb ]          ; <i32> [#uses=2]
18         %tmp7 = icmp slt i32 %i.0, 1610612736           ; <i1> [#uses=1]
19         br i1 %tmp7, label %bb, label %return
21 return:         ; preds = %bb5
22         ret i32 %j.0