summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/IPO/InlineAlways.cpp
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2014-05-19 18:25:54 +0000
committerPeter Collingbourne <peter@pcc.me.uk>2014-05-19 18:25:54 +0000
commit68a889757dec7f4b6d7e2e87863f3152bb0603c3 (patch)
tree97731338e18963b8eed6d1576829f4b4270637ad /llvm/lib/Transforms/IPO/InlineAlways.cpp
parent230c5eb4bde7314331ae5c0bca65087ed504202c (diff)
downloadbcm5719-llvm-68a889757dec7f4b6d7e2e87863f3152bb0603c3.tar.gz
bcm5719-llvm-68a889757dec7f4b6d7e2e87863f3152bb0603c3.zip
Check the alwaysinline attribute on the call as well as on the caller.
Differential Revision: http://reviews.llvm.org/D3815 llvm-svn: 209150
Diffstat (limited to 'llvm/lib/Transforms/IPO/InlineAlways.cpp')
-rw-r--r--llvm/lib/Transforms/IPO/InlineAlways.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/IPO/InlineAlways.cpp b/llvm/lib/Transforms/IPO/InlineAlways.cpp
index c5d9546ccef..624cb90c0d5 100644
--- a/llvm/lib/Transforms/IPO/InlineAlways.cpp
+++ b/llvm/lib/Transforms/IPO/InlineAlways.cpp
@@ -95,8 +95,7 @@ InlineCost AlwaysInliner::getInlineCost(CallSite CS) {
// that are viable for inlining. FIXME: We shouldn't even get here for
// declarations.
if (Callee && !Callee->isDeclaration() &&
- Callee->getAttributes().hasAttribute(AttributeSet::FunctionIndex,
- Attribute::AlwaysInline) &&
+ CS.hasFnAttr(Attribute::AlwaysInline) &&
ICA->isInlineViable(*Callee))
return InlineCost::getAlways();
OpenPOWER on IntegriCloud