New testcases
authorChris Lattner <sabre@nondot.org>
Sun, 22 Jun 2003 20:32:35 +0000 (20:32 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 22 Jun 2003 20:32:35 +0000 (20:32 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6854 91177308-0d34-0410-b5e6-96231b3b80d8

test/Transforms/TailDup/PHIUpdateTest.ll [new file with mode: 0644]
test/Transforms/TailDup/basictest.ll [new file with mode: 0644]

diff --git a/test/Transforms/TailDup/PHIUpdateTest.ll b/test/Transforms/TailDup/PHIUpdateTest.ll
new file mode 100644 (file)
index 0000000..08112b4
--- /dev/null
@@ -0,0 +1,20 @@
+; This test checks to make sure phi nodes are updated properly
+;
+; RUN: as < %s | opt -tailduplicate -disable-output
+
+
+
+int %test(bool %c, int %X, int %Y) {
+       br label %L
+
+L:
+       %A = add int %X, %Y
+       br bool %c, label %T, label %F
+
+F:
+       br bool %c, label %L, label %T
+
+T:
+       %V = phi int [%A, %L], [0, %F]
+       ret int %V
+}
diff --git a/test/Transforms/TailDup/basictest.ll b/test/Transforms/TailDup/basictest.ll
new file mode 100644 (file)
index 0000000..66dcf63
--- /dev/null
@@ -0,0 +1,22 @@
+; RUN: as < %s | opt -tailduplicate -disable-output
+
+declare void %__main()
+
+int %main() {
+entry:         ; No predecessors!
+       call void %__main( )
+       br label %loopentry
+
+loopentry:             ; preds = %entry, %no_exit
+       %i.0 = phi int [ %inc, %no_exit ], [ 0, %entry ]                ; <int> [#uses=2]
+       %tmp.1 = setle int %i.0, 99             ; <bool> [#uses=1]
+       br bool %tmp.1, label %no_exit, label %return
+
+no_exit:               ; preds = %loopentry
+       %tmp.51 = call int %main( )             ; <int> [#uses=0]
+       %inc = add int %i.0, 1          ; <int> [#uses=1]
+       br label %loopentry
+
+return:                ; preds = %loopentry
+       ret int %i.0
+}