aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-09-21 05:11:01 +0000
committerChris Lattner <sabre@nondot.org>2006-09-21 05:11:01 +0000
commit7ffc328e978fb75ace2e0dc78302f5dff05af93b (patch)
treef3e40fe654eb7fe69dd567dab2a1a45547425f31
parent70084fd53a3aed60b8c53b47d44d95cc3a268017 (diff)
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30554 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/Transforms/IndVarsSimplify/2006-09-20-LFTR-Crash.ll46
1 files changed, 46 insertions, 0 deletions
diff --git a/test/Transforms/IndVarsSimplify/2006-09-20-LFTR-Crash.ll b/test/Transforms/IndVarsSimplify/2006-09-20-LFTR-Crash.ll
new file mode 100644
index 0000000000..eb3b6594df
--- /dev/null
+++ b/test/Transforms/IndVarsSimplify/2006-09-20-LFTR-Crash.ll
@@ -0,0 +1,46 @@
+; RUN: llvm-as < %s | opt -indvars -disable-output
+
+ %struct.p7prior_s = type { int, int, [200 x float], [200 x [7 x float]], int, [200 x float], [200 x [20 x float]], int, [200 x float], [200 x [20 x float]] }
+
+implementation ; Functions:
+
+void %P7DefaultPrior() {
+entry:
+ switch int 0, label %UnifiedReturnBlock [
+ int 2, label %bb160
+ int 3, label %bb
+ ]
+
+bb: ; preds = %entry
+ br bool false, label %cond_true.i, label %sre_malloc.exit
+
+cond_true.i: ; preds = %bb
+ unreachable
+
+sre_malloc.exit: ; preds = %bb
+ br label %cond_true
+
+cond_true: ; preds = %cond_true66, %cond_true, %sre_malloc.exit
+ %tmp59 = phi int [ 1, %sre_malloc.exit ], [ %phitmp, %cond_true66 ], [ %tmp59, %cond_true ] ; <int> [#uses=2]
+ %indvar245.0.ph = phi uint [ 0, %sre_malloc.exit ], [ %indvar.next246, %cond_true66 ], [ %indvar245.0.ph, %cond_true ] ; <uint> [#uses=2]
+ br bool false, label %bb57, label %cond_true
+
+bb57: ; preds = %cond_true
+ %tmp65 = setgt int 0, %tmp59 ; <bool> [#uses=1]
+ %indvar.next246 = add uint %indvar245.0.ph, 1 ; <uint> [#uses=2]
+ br bool %tmp65, label %cond_true66, label %bb69
+
+cond_true66: ; preds = %bb57
+ %q.1.0 = cast uint %indvar.next246 to int ; <int> [#uses=1]
+ %phitmp = add int %q.1.0, 1 ; <int> [#uses=1]
+ br label %cond_true
+
+bb69: ; preds = %bb57
+ ret void
+
+bb160: ; preds = %entry
+ ret void
+
+UnifiedReturnBlock: ; preds = %entry
+ ret void
+}