aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-02-26 18:49:04 +0000
committerChris Lattner <sabre@nondot.org>2005-02-26 18:49:04 +0000
commitfe75292503c2f3ef66d395fc3fbeb503eefed577 (patch)
treeca7bb2da6ebed3de0a87a1825a9ad2a7b2ac6670
parent803513b364e27d303285d396fd8ee5b32149962a (diff)
downloadexternal_llvm-fe75292503c2f3ef66d395fc3fbeb503eefed577.zip
external_llvm-fe75292503c2f3ef66d395fc3fbeb503eefed577.tar.gz
external_llvm-fe75292503c2f3ef66d395fc3fbeb503eefed577.tar.bz2
A testcase that we miscompile, noticed from the demo page.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20336 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/Transforms/IndVarsSimplify/2005-02-26-ExitValueCompute.ll19
1 files changed, 19 insertions, 0 deletions
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 0000000..57f1fee
--- /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 ] ; <int> [#uses=2]
+ %tmp.4 = setgt int %i.1.0, 50 ; <bool> [#uses=1]
+ %tmp.7 = select bool %tmp.4, int 100, int 0 ; <int> [#uses=1]
+ %i.0 = add int %i.1.0, 1 ; <int> [#uses=1]
+ %inc = add int %i.0, %tmp.7 ; <int> [#uses=3]
+ %tmp.1 = setlt int %inc, 100 ; <bool> [#uses=1]
+ br bool %tmp.1, label %no_exit, label %loopexit
+
+loopexit: ; preds = %no_exit
+ ret int %inc
+}
+