diff options
author | Chris Lattner <sabre@nondot.org> | 2010-04-23 18:31:01 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-04-23 18:31:01 +0000 |
commit | 6f41ef9d3140ce084609947ea8f41c46b54bf9aa (patch) | |
tree | 8a9b249683bf572aa98e031a26bc3f47e21d3843 /llvm | |
parent | 8c562540963b09fed16e4a8895fae472b39159d2 (diff) | |
download | bcm5719-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.ll | 31 |
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 + + + |