rename test
[oota-llvm.git] / test / Transforms / SimplifyCFG / invoke_unwind.ll
diff --git a/test/Transforms/SimplifyCFG/invoke_unwind.ll b/test/Transforms/SimplifyCFG/invoke_unwind.ll
new file mode 100644 (file)
index 0000000..9f3bd4e
--- /dev/null
@@ -0,0 +1,18 @@
+; This testcase checks to see if the simplifycfg pass is converting invoke
+; instructions to call instructions if the handler just rethrows the exception.
+
+; If this test is successful, the function should be reduced to 'call; ret'
+
+; RUN: opt < %s -simplifycfg -S | \
+; RUN:   not egrep {\\(invoke\\)|\\(br\\)}
+
+declare void @bar()
+
+define i32 @test() {
+        invoke void @bar( )
+                        to label %Ok unwind label %Rethrow
+Ok:             ; preds = %0
+        ret i32 0
+Rethrow:                ; preds = %0
+        unwind
+}