summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/Transforms')
-rw-r--r--llvm/test/Transforms/Inline/deoptimize-intrinsic-cconv.ll19
-rw-r--r--llvm/test/Transforms/Inline/deoptimize-intrinsic.ll16
-rw-r--r--llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic-cconv.ll16
-rw-r--r--llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll11
4 files changed, 36 insertions, 26 deletions
diff --git a/llvm/test/Transforms/Inline/deoptimize-intrinsic-cconv.ll b/llvm/test/Transforms/Inline/deoptimize-intrinsic-cconv.ll
new file mode 100644
index 00000000000..4e2c3fe4786
--- /dev/null
+++ b/llvm/test/Transforms/Inline/deoptimize-intrinsic-cconv.ll
@@ -0,0 +1,19 @@
+; RUN: opt -S -always-inline < %s | FileCheck %s
+
+declare cc42 i32 @llvm.experimental.deoptimize.i32(...)
+
+define i32 @callee_with_coldcc() alwaysinline {
+ %v0 = call cc42 i32(...) @llvm.experimental.deoptimize.i32(i32 1) [ "deopt"() ]
+ ret i32 %v0
+}
+
+define void @caller_with_coldcc() {
+; CHECK-LABEL: @caller_with_coldcc(
+; CHECK-NEXT: call cc42 void (...) @llvm.experimental.deoptimize.isVoid(i32 1) [ "deopt"() ]
+; CHECK-NEXT: ret void
+
+ %val = call i32 @callee_with_coldcc()
+ ret void
+}
+
+; CHECK: declare cc42 void @llvm.experimental.deoptimize.isVoid(...)
diff --git a/llvm/test/Transforms/Inline/deoptimize-intrinsic.ll b/llvm/test/Transforms/Inline/deoptimize-intrinsic.ll
index 98fbc68488e..848a9db0542 100644
--- a/llvm/test/Transforms/Inline/deoptimize-intrinsic.ll
+++ b/llvm/test/Transforms/Inline/deoptimize-intrinsic.ll
@@ -1,7 +1,7 @@
; RUN: opt -S -always-inline < %s | FileCheck %s
declare i8 @llvm.experimental.deoptimize.i8(...)
-declare cc42 i32 @llvm.experimental.deoptimize.i32(...)
+declare i32 @llvm.experimental.deoptimize.i32(...)
define i8 @callee(i1* %c) alwaysinline {
%c0 = load volatile i1, i1* %c
@@ -121,17 +121,3 @@ define void @caller_with_stacksaverestore(i32 %n) {
call i8 @callee_with_dynamic_alloca(i32 %n)
ret void
}
-
-define i32 @callee_with_coldcc() alwaysinline {
- %v0 = call cc42 i32(...) @llvm.experimental.deoptimize.i32(i32 1) [ "deopt"() ]
- ret i32 %v0
-}
-
-define void @caller_with_coldcc() {
-; CHECK-LABEL: @caller_with_coldcc(
-; CHECK-NEXT: call cc42 void (...) @llvm.experimental.deoptimize.isVoid(i32 1) [ "deopt"() ]
-; CHECK-NEXT: ret void
-
- %val = call i32 @callee_with_coldcc()
- ret void
-}
diff --git a/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic-cconv.ll b/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic-cconv.ll
new file mode 100644
index 00000000000..b74c1963ddf
--- /dev/null
+++ b/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic-cconv.ll
@@ -0,0 +1,16 @@
+; RUN: opt -rewrite-statepoints-for-gc -S < %s | FileCheck %s
+
+target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
+target triple = "x86_64-apple-macosx10.11.0"
+
+declare cc42 double @llvm.experimental.deoptimize.f64(...)
+
+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
+}
diff --git a/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll b/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll
index 559dc9d6501..ef0e2bd61af 100644
--- a/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll
+++ b/llvm/test/Transforms/RewriteStatepointsForGC/deopt-intrinsic.ll
@@ -5,7 +5,6 @@ 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(
@@ -34,13 +33,3 @@ 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