Checkin the simple features tests for the preheader insertion pass.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3952 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Transforms/LoopSimplify/basictest.ll b/test/Transforms/LoopSimplify/basictest.ll
new file mode 100644
index 0000000..1540219
--- /dev/null
+++ b/test/Transforms/LoopSimplify/basictest.ll
@@ -0,0 +1,17 @@
+; RUN: as < %s | opt -preheaders
+
+implementation
+
+; This function should get a preheader inserted before BB3, that is jumped
+; to by BB1 & BB2
+;
+void "test"()
+begin
+	br bool true, label %BB1, label %BB2
+BB1:    br label %BB3
+BB2:    br label %BB3
+
+
+BB3:
+	br label %BB3
+end
diff --git a/test/Transforms/LoopSimplify/hardertest.ll b/test/Transforms/LoopSimplify/hardertest.ll
new file mode 100644
index 0000000..7c11fba
--- /dev/null
+++ b/test/Transforms/LoopSimplify/hardertest.ll
@@ -0,0 +1,17 @@
+; RUN: as < %s | opt -preheaders
+
+void %foo(bool %C) {
+	br bool %C, label %T, label %F
+T:
+	br label %Loop
+F: 
+	br label %Loop
+
+Loop:    ; Two backedges, two incoming edges.
+	%Val = phi int [0, %T], [1, %F], [2, %Loop], [3, %L2]
+
+	br bool %C, label %Loop, label %L2
+
+L2:
+	br label %Loop
+}