aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-04-25 23:26:52 +0000
committerChris Lattner <sabre@nondot.org>2003-04-25 23:26:52 +0000
commitd96f1eb5e0167825bd0aa31f83b96be53cfb40d3 (patch)
tree494ce0138177e9c8be49d1cb93e288ab1614f850
parent02a78cf7eacf97f2c9584e29d02f77612aead35f (diff)
New testcase that crashes preheaders
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5954 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/Transforms/LoopPreheaders/2003-04-25-AssertFail.ll22
-rw-r--r--test/Transforms/LoopSimplify/2003-04-25-AssertFail.ll22
2 files changed, 44 insertions, 0 deletions
diff --git a/test/Transforms/LoopPreheaders/2003-04-25-AssertFail.ll b/test/Transforms/LoopPreheaders/2003-04-25-AssertFail.ll
new file mode 100644
index 0000000000..968c34fd17
--- /dev/null
+++ b/test/Transforms/LoopPreheaders/2003-04-25-AssertFail.ll
@@ -0,0 +1,22 @@
+; RUN: as < %s | opt -preheaders
+
+implementation ; Functions:
+
+int %yylex() { ; No predecessors!
+ br label %loopentry.0
+
+loopentry.0: ; preds = %0, %yy_find_action, %else.4
+ br label %loopexit.2
+
+loopexit.2: ; preds = %loopentry.0, %else.4, %loopexit.2
+ br bool false, label %loopexit.2, label %else.4
+
+yy_find_action: ; preds = %loopexit.2, %else.4
+ br label %else.4
+
+else.4: ; preds = %yy_find_action
+ switch uint 0, label %loopexit.2 [
+ uint 2, label %yy_find_action
+ uint 0, label %loopentry.0
+ ]
+}
diff --git a/test/Transforms/LoopSimplify/2003-04-25-AssertFail.ll b/test/Transforms/LoopSimplify/2003-04-25-AssertFail.ll
new file mode 100644
index 0000000000..968c34fd17
--- /dev/null
+++ b/test/Transforms/LoopSimplify/2003-04-25-AssertFail.ll
@@ -0,0 +1,22 @@
+; RUN: as < %s | opt -preheaders
+
+implementation ; Functions:
+
+int %yylex() { ; No predecessors!
+ br label %loopentry.0
+
+loopentry.0: ; preds = %0, %yy_find_action, %else.4
+ br label %loopexit.2
+
+loopexit.2: ; preds = %loopentry.0, %else.4, %loopexit.2
+ br bool false, label %loopexit.2, label %else.4
+
+yy_find_action: ; preds = %loopexit.2, %else.4
+ br label %else.4
+
+else.4: ; preds = %yy_find_action
+ switch uint 0, label %loopexit.2 [
+ uint 2, label %yy_find_action
+ uint 0, label %loopentry.0
+ ]
+}