From 28f872f8a1945635f30763805c1418a90c6b345e Mon Sep 17 00:00:00 2001 From: Bob Wilson Date: Mon, 19 Nov 2012 07:04:35 +0000 Subject: Clean up handling of always-inline functions in the inliner. This patch moves the isInlineViable function from the InlineAlways pass into the InlineCostAnalyzer and then changes the InlineCost computation to use that simple check for always-inline functions. All the special-case checks for AlwaysInline in the CallAnalyzer can then go away. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168300 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Analysis/InlineCost.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include') diff --git a/include/llvm/Analysis/InlineCost.h b/include/llvm/Analysis/InlineCost.h index af07d38169..82a3a566c9 100644 --- a/include/llvm/Analysis/InlineCost.h +++ b/include/llvm/Analysis/InlineCost.h @@ -129,6 +129,9 @@ namespace llvm { // Note: This is used by out-of-tree passes, please do not remove without // adding a replacement API. InlineCost getInlineCost(CallSite CS, Function *Callee, int Threshold); + + /// \brief Minimal filter to detect invalid constructs for inlining. + bool isInlineViable(Function &Callee); }; } -- cgit v1.2.3