aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-03-18 04:10:02 +0000
committerChris Lattner <sabre@nondot.org>2004-03-18 04:10:02 +0000
commit959754e70c7b3c771d9a0529a75e16c356c0ece9 (patch)
treeb6ed2f375b6798cdc8df0b794857730edbc4a16f
parentb5c1dbf50388c4efe26c9e7ba81e514a109c65d7 (diff)
downloadexternal_llvm-959754e70c7b3c771d9a0529a75e16c356c0ece9.zip
external_llvm-959754e70c7b3c771d9a0529a75e16c356c0ece9.tar.gz
external_llvm-959754e70c7b3c771d9a0529a75e16c356c0ece9.tar.bz2
New testcase that crashes the code extractor
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12485 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/Transforms/CodeExtractor/2004-03-17-OutputMismatch.ll21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/Transforms/CodeExtractor/2004-03-17-OutputMismatch.ll b/test/Transforms/CodeExtractor/2004-03-17-OutputMismatch.ll
new file mode 100644
index 0000000..ca5cbf1
--- /dev/null
+++ b/test/Transforms/CodeExtractor/2004-03-17-OutputMismatch.ll
@@ -0,0 +1,21 @@
+; RUN: llvm-as < %s | opt -loop-extract -disable-output
+
+ %struct.node_t = type { double*, %struct.node_t*, %struct.node_t**, double**, double*, int, int }
+ %struct.table_t = type { [1 x %struct.node_t**], [1 x %struct.node_t**] }
+
+implementation ; Functions:
+
+void %make_tables() {
+entry:
+ %tmp.0.i = malloc %struct.node_t ; <%struct.node_t*> [#uses=1]
+ br bool false, label %no_exit.i, label %loopexit.i
+
+no_exit.i: ; preds = %entry, %no_exit.i
+ %prev_node.0.i.1 = phi %struct.node_t* [ %tmp.16.i, %no_exit.i ], [ %tmp.0.i, %entry ] ; <%struct.node_t*> [#uses=0]
+ %tmp.16.i = malloc %struct.node_t ; <%struct.node_t*> [#uses=2]
+ br bool false, label %no_exit.i, label %loopexit.i
+
+loopexit.i: ; preds = %entry, %no_exit.i
+ %cur_node.0.i.0 = phi %struct.node_t* [ null, %entry ], [ %tmp.16.i, %no_exit.i ] ; <%struct.node_t*> [#uses=0]
+ ret void
+}