summaryrefslogtreecommitdiff
path: root/lib/CodeGen/IntrinsicLowering.cpp
diff options
context:
space:
mode:
authorJustin Holewinski <jholewinski@nvidia.com>2013-05-21 14:37:16 +0000
committerJustin Holewinski <jholewinski@nvidia.com>2013-05-21 14:37:16 +0000
commitc2b7f5fa511420b99dd8238ab4ba769a6a6015a5 (patch)
tree5cc400d5bf21514da489c673ac6ad7e39c8d499b /lib/CodeGen/IntrinsicLowering.cpp
parent75e9ee8b7fc2b7c91239f4b9b8d77087fd8ea4e4 (diff)
downloadllvm-c2b7f5fa511420b99dd8238ab4ba769a6a6015a5.tar.gz
llvm-c2b7f5fa511420b99dd8238ab4ba769a6a6015a5.tar.bz2
llvm-c2b7f5fa511420b99dd8238ab4ba769a6a6015a5.tar.xz
Drop @llvm.annotation and @llvm.ptr.annotation intrinsics during codegen.
The intrinsic calls are dropped, but the annotated value is propagated. Fixes PR 15253 Original patch by Zeng Bin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182387 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/IntrinsicLowering.cpp')
-rw-r--r--lib/CodeGen/IntrinsicLowering.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/CodeGen/IntrinsicLowering.cpp b/lib/CodeGen/IntrinsicLowering.cpp
index 07f0ccf52f..d894f664dc 100644
--- a/lib/CodeGen/IntrinsicLowering.cpp
+++ b/lib/CodeGen/IntrinsicLowering.cpp
@@ -453,6 +453,12 @@ void IntrinsicLowering::LowerIntrinsicCall(CallInst *CI) {
CI->replaceAllUsesWith(ConstantInt::get(CI->getType(), 1));
break;
+ case Intrinsic::annotation:
+ case Intrinsic::ptr_annotation:
+ // Just drop the annotation, but forward the value
+ CI->replaceAllUsesWith(CI->getOperand(0));
+ break;
+
case Intrinsic::var_annotation:
break; // Strip out annotate intrinsic