[InstCombine] Signed saturation patterns
[llvm-core.git] / test / Analysis / ScalarEvolution / 2008-11-02-QuadraticCrash.ll
blob7722122117dc6f7735355c73d87210e49dc232fc
1 ; RUN: opt < %s -analyze -scalar-evolution
2 ; PR1827
4 declare void @use(i32)
6 define void @foo() {
7 entry:
8         br label %loop_1
10 loop_1:         ; preds = %loop_1, %entry
11         %a = phi i32 [ 2, %entry ], [ %b, %loop_1 ]             ; <i32> [#uses=2]
12         %c = phi i32 [ 5, %entry ], [ %d, %loop_1 ]             ; <i32> [#uses=1]
13         %b = add i32 %a, 1              ; <i32> [#uses=1]
14         %d = add i32 %c, %a             ; <i32> [#uses=3]
15         %A = icmp ult i32 %d, 50                ; <i1> [#uses=1]
16         br i1 %A, label %loop_1, label %endloop
18 endloop:                ; preds = %loop_1
19         call void @use(i32 %d)
20         ret void