summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-04-23 18:31:01 +0000
committerChris Lattner <sabre@nondot.org>2010-04-23 18:31:01 +0000
commit6f41ef9d3140ce084609947ea8f41c46b54bf9aa (patch)
tree8a9b249683bf572aa98e031a26bc3f47e21d3843 /llvm
parent8c562540963b09fed16e4a8895fae472b39159d2 (diff)
downloadbcm5719-llvm-6f41ef9d3140ce084609947ea8f41c46b54bf9aa.tar.gz
bcm5719-llvm-6f41ef9d3140ce084609947ea8f41c46b54bf9aa.zip
testcase for the bug that required a patch to be reverted.
llvm-svn: 102195
Diffstat (limited to 'llvm')
-rw-r--r--llvm/test/Transforms/Inline/crash.ll31
1 files changed, 31 insertions, 0 deletions
diff --git a/llvm/test/Transforms/Inline/crash.ll b/llvm/test/Transforms/Inline/crash.ll
index f34b44c2aa0..1df4d6063e8 100644
--- a/llvm/test/Transforms/Inline/crash.ll
+++ b/llvm/test/Transforms/Inline/crash.ll
@@ -86,3 +86,34 @@ bb260:
lpad:
unwind
}
+
+
+
+;; This exposed a crash handling devirtualized calls.
+define void @f1(void ()* %f) ssp {
+entry:
+ call void %f()
+ ret void
+}
+
+define void @f4(i32 %size) ssp {
+entry:
+ invoke void @f1(void ()* @f3)
+ to label %invcont3 unwind label %lpad18
+
+invcont3: ; preds = %bb1
+ ret void
+
+lpad18: ; preds = %invcont3, %bb1
+ unreachable
+}
+
+define void @f3() ssp {
+entry:
+ unreachable
+}
+
+declare void @f5() ssp
+
+
+
OpenPOWER on IntegriCloud