summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/Transforms/SimplifyCFG/2003-08-05-InvokeCrash.ll9
-rw-r--r--test/Transforms/SimplifyCFG/2003-08-05-MishandleInvoke.ll10
2 files changed, 19 insertions, 0 deletions
diff --git a/test/Transforms/SimplifyCFG/2003-08-05-InvokeCrash.ll b/test/Transforms/SimplifyCFG/2003-08-05-InvokeCrash.ll
new file mode 100644
index 0000000000..0dafdd9e66
--- /dev/null
+++ b/test/Transforms/SimplifyCFG/2003-08-05-InvokeCrash.ll
@@ -0,0 +1,9 @@
+; Do not remove the invoke!
+;
+; RUN: as < %s | opt -simplifycfg -disable-output
+
+int %test() {
+ %A = invoke int %test() to label %Ret except label %Ret
+Ret:
+ ret int %A
+}
diff --git a/test/Transforms/SimplifyCFG/2003-08-05-MishandleInvoke.ll b/test/Transforms/SimplifyCFG/2003-08-05-MishandleInvoke.ll
new file mode 100644
index 0000000000..25deb3b362
--- /dev/null
+++ b/test/Transforms/SimplifyCFG/2003-08-05-MishandleInvoke.ll
@@ -0,0 +1,10 @@
+; Do not remove the invoke!
+;
+; RUN: as < %s | opt -simplifycfg | dis | grep invoke
+
+int %test() {
+ invoke int %test() to label %Ret except label %Ret
+Ret:
+ %A = add int 0, 1
+ ret int %A
+}