From: Peter Collingbourne Date: Wed, 6 Apr 2011 12:29:04 +0000 (+0000) Subject: If this is an intrinsic function, set the function's attributes to the intrinsic... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0ac2cf4d28e1ed92508b27a3d9e28fc8db2a390b;p=clang If this is an intrinsic function, set the function's attributes to the intrinsic's attributes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129000 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp index d180a2253e..34f594ecaa 100644 --- a/lib/CodeGen/CodeGenModule.cpp +++ b/lib/CodeGen/CodeGenModule.cpp @@ -505,6 +505,13 @@ void CodeGenModule::SetInternalFunctionAttributes(const Decl *D, void CodeGenModule::SetFunctionAttributes(GlobalDecl GD, llvm::Function *F, bool IsIncompleteFunction) { + if (unsigned IID = F->getIntrinsicID()) { + // If this is an intrinsic function, set the function's attributes + // to the intrinsic's attributes. + F->setAttributes(llvm::Intrinsic::getAttributes((llvm::Intrinsic::ID)IID)); + return; + } + const FunctionDecl *FD = cast(GD.getDecl()); if (!IsIncompleteFunction)