testcases for undefined and unreachable

llvm-svn: 17058
diff --git a/llvm/test/Feature/undefined.ll b/llvm/test/Feature/undefined.ll
new file mode 100644
index 0000000..a71b906
--- /dev/null
+++ b/llvm/test/Feature/undefined.ll
@@ -0,0 +1,15 @@
+
+%X = global int undef
+
+implementation
+
+declare int "atoi"(sbyte *)
+
+int %test() {
+	ret int undef
+}
+
+int %test2() {
+	%X = add int undef, 1
+	ret int %X
+}
diff --git a/llvm/test/Feature/unreachable.ll b/llvm/test/Feature/unreachable.ll
new file mode 100644
index 0000000..84c4552
--- /dev/null
+++ b/llvm/test/Feature/unreachable.ll
@@ -0,0 +1,13 @@
+
+implementation
+
+declare void %bar()
+
+int %foo() {  ;; Calling this function has undefined behavior
+	unreachable
+}
+
+double %xyz() {
+	call void %bar()
+	unreachable          ;; Bar must not return.
+}