]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Analysis/ScalarEvolution/2008-05-25-NegativeStepToZero.ll
Vendor import of llvm release_34 branch r197841 (effectively, 3.4 RC3):
[FreeBSD/FreeBSD.git] / test / Analysis / ScalarEvolution / 2008-05-25-NegativeStepToZero.ll
1 ; RUN: opt < %s -analyze -scalar-evolution -scalar-evolution-max-iterations=0 | FileCheck %s
2 ; PR2364
3
4 ; CHECK: backedge-taken count is 61
5
6 define i32 @func_6() nounwind  {
7 entry:
8         br label %bb5
9
10 bb:             ; preds = %bb5
11         %tmp2 = add i32 %i.0, 1         ; <i32> [#uses=1]
12         %tmp4 = add i8 %x.0, -4         ; <i8> [#uses=1]
13         br label %bb5
14
15 bb5:            ; preds = %bb, %entry
16         %x.0 = phi i8 [ 0, %entry ], [ %tmp4, %bb ]             ; <i8> [#uses=2]
17         %i.0 = phi i32 [ 0, %entry ], [ %tmp2, %bb ]            ; <i32> [#uses=2]
18         %tmp7 = icmp eq i8 %x.0, 12             ; <i1> [#uses=1]
19         br i1 %tmp7, label %return, label %bb
20
21 return:         ; preds = %bb5
22         ret i32 %i.0
23 }