summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSanjoy Das <sanjoy@playingwithpointers.com>2016-05-03 20:58:10 +0000
committerSanjoy Das <sanjoy@playingwithpointers.com>2016-05-03 20:58:10 +0000
commit8a004551d088a5608413a82171eecb8da5c7bcda (patch)
treef555e9f5fe09f392f7cd8bb631814fb39f15cf09
parentc5b8ed241d18368ee8e143f00201a08cc930598c (diff)
downloadbcm5719-llvm-8a004551d088a5608413a82171eecb8da5c7bcda.tar.gz
bcm5719-llvm-8a004551d088a5608413a82171eecb8da5c7bcda.zip
[RS4GC] Add a test case around calling conventions; NFC
llvm-svn: 268436
-rw-r--r--llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll11
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll b/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll
index ef0e2bd61af..559dc9d6501 100644
--- a/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll
+++ b/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll
@@ -5,6 +5,7 @@ target triple = "x86_64-apple-macosx10.11.0"
declare i32 @llvm.experimental.deoptimize.i32(...)
declare void @llvm.experimental.deoptimize.isVoid(...)
+declare cc42 double @llvm.experimental.deoptimize.f64(...)
define i32 @caller_0(i32 addrspace(1)* %ptr) gc "statepoint-example" {
; CHECK-LABEL: @caller_0(
@@ -33,3 +34,13 @@ entry:
call void(...) @llvm.experimental.deoptimize.isVoid() [ "deopt"(i32 0, i32 addrspace(1)* %ptr) ]
ret void
}
+
+define double @caller_3() gc "statepoint-example" {
+; CHECK-LABELL @caller_3(
+; CHECK: call cc42 token (i64, i32, void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint
+; CHECK: unreachable
+
+entry:
+ %val = call cc42 double(...) @llvm.experimental.deoptimize.f64() [ "deopt"() ]
+ ret double %val
+}
OpenPOWER on IntegriCloud