summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/Statepoint.cpp
diff options
context:
space:
mode:
authorRamkumar Ramachandra <artagnon@gmail.com>2015-01-22 20:14:38 +0000
committerRamkumar Ramachandra <artagnon@gmail.com>2015-01-22 20:14:38 +0000
commit75a4f35b2640b604f59c6df3b7dbe043c195cacd (patch)
tree2c5353db66f3baa6f006cb71f08abcd76df0a16d /llvm/lib/IR/Statepoint.cpp
parent49b71c609c0f8c008ac8d7ea9d9cce69858047b5 (diff)
downloadbcm5719-llvm-75a4f35b2640b604f59c6df3b7dbe043c195cacd.tar.gz
bcm5719-llvm-75a4f35b2640b604f59c6df3b7dbe043c195cacd.zip
Intrinsics: introduce llvm_any_ty aka ValueType Any
Specifically, gc.result benefits from this greatly. Instead of: gc.result.int.* gc.result.float.* gc.result.ptr.* ... We now have a gc.result.* that can specialize to literally any type. Differential Revision: http://reviews.llvm.org/D7020 llvm-svn: 226857
Diffstat (limited to 'llvm/lib/IR/Statepoint.cpp')
-rw-r--r--llvm/lib/IR/Statepoint.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/IR/Statepoint.cpp b/llvm/lib/IR/Statepoint.cpp
index 270c0166ebb..450651a0807 100644
--- a/llvm/lib/IR/Statepoint.cpp
+++ b/llvm/lib/IR/Statepoint.cpp
@@ -54,7 +54,8 @@ bool llvm::isGCResult(const Instruction *inst) {
if (Function *F = call->getCalledFunction()) {
return (F->getIntrinsicID() == Intrinsic::experimental_gc_result_int ||
F->getIntrinsicID() == Intrinsic::experimental_gc_result_float ||
- F->getIntrinsicID() == Intrinsic::experimental_gc_result_ptr);
+ F->getIntrinsicID() == Intrinsic::experimental_gc_result_ptr ||
+ F->getIntrinsicID() == Intrinsic::experimental_gc_result);
}
}
return false;
OpenPOWER on IntegriCloud