Check Attribute::NoInline.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58742 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel 2008-11-05 01:37:05 +00:00
parent 1508606ee8
commit d91ac615e3

View File

@ -182,11 +182,9 @@ InlineCost InlineCostAnalyzer::getInlineCost(CallSite CS,
// FIXME: We allow link-once linkage since in practice all versions of
// the function have the same body (C++ ODR) - but the LLVM definition
// of LinkOnceLinkage doesn't require this.
(Callee->mayBeOverridden() && !Callee->hasLinkOnceLinkage()
) ||
(Callee->mayBeOverridden() && !Callee->hasLinkOnceLinkage()) ||
// Don't inline functions marked noinline.
NeverInline.count(Callee))
Callee->hasFnAttr(Attribute::NoInline) || NeverInline.count(Callee))
return llvm::InlineCost::getNever();
// InlineCost - This value measures how good of an inline candidate this call