Fix InstCombine/2007-10-31-StringCrash.ll by removing an obvious
[oota-llvm.git] / test / Transforms / SCCP / calltest.ll
1 ; RUN: llvm-upgrade < %s | llvm-as | opt -sccp -adce -simplifycfg | llvm-dis | \
2 ; RUN:   not grep br
3
4 ; No matter how hard you try, sqrt(1.0) is always 1.0.  This allows the
5 ; optimizer to delete this loop.
6
7 declare double %sqrt(double)
8
9 double %test(uint %param) {
10 entry:
11         br label %Loop
12
13 Loop:
14         %I2 = phi uint [ 0, %entry ], [ %I3, %Loop ]
15         %V  = phi double [ 1.0, %entry], [ %V2, %Loop ]
16
17         %V2 = call double %sqrt(double %V)
18
19         %I3 = add uint %I2, 1
20         %tmp.7 = setne uint %I3, %param
21         br bool %tmp.7, label %Loop, label %Exit
22
23 Exit:
24         ret double %V
25 }