diff --git a/test/Transforms/IndVarsSimplify/2005-02-26-ExitValueCompute.ll b/test/Transforms/IndVarsSimplify/2005-02-26-ExitValueCompute.ll new file mode 100644 index 00000000000..57f1feeaaa0 --- /dev/null +++ b/test/Transforms/IndVarsSimplify/2005-02-26-ExitValueCompute.ll @@ -0,0 +1,19 @@ +; RUN: llvm-as < %s | opt -indvars | llvm-dis | grep 'ret int 152' + +int %main() { +entry: + br label %no_exit + +no_exit: ; preds = %no_exit, %entry + %i.1.0 = phi int [ 0, %entry ], [ %inc, %no_exit ] ; [#uses=2] + %tmp.4 = setgt int %i.1.0, 50 ; [#uses=1] + %tmp.7 = select bool %tmp.4, int 100, int 0 ; [#uses=1] + %i.0 = add int %i.1.0, 1 ; [#uses=1] + %inc = add int %i.0, %tmp.7 ; [#uses=3] + %tmp.1 = setlt int %inc, 100 ; [#uses=1] + br bool %tmp.1, label %no_exit, label %loopexit + +loopexit: ; preds = %no_exit + ret int %inc +} +