LLVM: llvm::InlineAdvisor Class Reference (original) (raw)

Interface for deciding whether to inline a call site or not. More...

#include "[llvm/Analysis/InlineAdvisor.h](InlineAdvisor%5F8h%5Fsource.html)"

Public Member Functions
InlineAdvisor (InlineAdvisor &&)=delete
virtual ~InlineAdvisor ()
std::unique_ptr< InlineAdvice > getAdvice (CallBase &CB, bool MandatoryOnly=false)
Get an InlineAdvice containing a recommendation on whether to inline or not.
virtual void onPassEntry (LazyCallGraph::SCC *SCC=nullptr)
This must be called when the Inliner pass is entered, to allow the InlineAdvisor update internal state, as result of function passes run between Inliner pass runs (for the same module).
virtual void onPassExit (LazyCallGraph::SCC *SCC=nullptr)
This must be called when the Inliner pass is exited, as function passes may be run subsequently.
virtual void print (raw_ostream &OS) const
Support for printer pass.
const char * getAnnotatedInlinePassName () const
NOTE pass name is annotated only when inline advisor constructor provides InlineContext.
Protected Types
enum class MandatoryInliningKind { NotMandatory, Always, Never }
Protected Attributes
Module & M
FunctionAnalysisManager & FAM
const std::optional< InlineContext > IC
const std::string AnnotatedInlinePassName
std::unique_ptr< ImportedFunctionsInliningStatistics > ImportedFunctionsStats
Friends
class InlineAdvice

Interface for deciding whether to inline a call site or not.

Definition at line 165 of file InlineAdvisor.h.

MandatoryInliningKind

~InlineAdvisor()

InlineAdvisor::~InlineAdvisor ( ) virtual

InlineAdvisor() [2/2]

getAdvice()

getAdviceImpl()

virtual std::unique_ptr< InlineAdvice > llvm::InlineAdvisor::getAdviceImpl ( CallBase & CB) protectedpure virtual

getAnnotatedInlinePassName()

const char * llvm::InlineAdvisor::getAnnotatedInlinePassName ( ) const inline

getCallerORE()

getMandatoryAdvice()

getMandatoryKind()

onPassEntry()

virtual void llvm::InlineAdvisor::onPassEntry ( LazyCallGraph::SCC * SCC = nullptr) inlinevirtual

onPassExit()

virtual void llvm::InlineAdvisor::onPassExit ( LazyCallGraph::SCC * SCC = nullptr) inlinevirtual

print()

virtual void llvm::InlineAdvisor::print ( raw_ostream & OS) const inlinevirtual

InlineAdvice

AnnotatedInlinePassName

const std::string llvm::InlineAdvisor::AnnotatedInlinePassName protected

FAM

IC

ImportedFunctionsStats

M

Module& llvm::InlineAdvisor::M protected

The documentation for this class was generated from the following files: