class ReplayInlineAdvisor
Declaration
class ReplayInlineAdvisor : public InlineAdvisor { /* full declaration omitted */ };
Description
Replay inline advisor that uses optimization remarks from inlining of previous build to guide current inlining. This is useful for inliner tuning.
Declared at: llvm/include/llvm/Analysis/ReplayInlineAdvisor.h:65
Inherits from: InlineAdvisor
Member Variables
- private std::unique_ptr<InlineAdvisor> OriginalAdvisor
- private bool HasReplayRemarks = false
- private const llvm::ReplayInlinerSettings ReplaySettings
- private bool EmitRemarks = false
- private StringMap<bool> InlineSitesFromRemarks
- private StringSet<> CallersToReplay
Inherited from InlineAdvisor:
- protected M
- protected FAM
- protected IC
- protected AnnotatedInlinePassName
- protected ImportedFunctionsStats
Method Overview
- public ReplayInlineAdvisor(llvm::Module & M, llvm::FunctionAnalysisManager & FAM, llvm::LLVMContext & Context, std::unique_ptr<InlineAdvisor> OriginalAdvisor, const llvm::ReplayInlinerSettings & ReplaySettings, bool EmitRemarks, llvm::InlineContext IC)
- public bool areReplayRemarksLoaded() const
- public std::unique_ptr<InlineAdvice> getAdviceImpl(llvm::CallBase & CB)
- private bool hasInlineAdvice(llvm::Function & F) const
Inherited from InlineAdvisor:
- public getAdvice
- protected getAdviceImpl
- public getAnnotatedInlinePassName
- protected getCallerORE
- protected getMandatoryAdvice
- protected getMandatoryKind
- public onPassEntry
- public onPassExit
- public print
Methods
¶ReplayInlineAdvisor(
llvm::Module& M,
llvm::FunctionAnalysisManager& FAM,
llvm::LLVMContext& Context,
std::unique_ptr<InlineAdvisor>
OriginalAdvisor,
const llvm::ReplayInlinerSettings&
ReplaySettings,
bool EmitRemarks,
llvm::InlineContext IC)
ReplayInlineAdvisor(
llvm::Module& M,
llvm::FunctionAnalysisManager& FAM,
llvm::LLVMContext& Context,
std::unique_ptr<InlineAdvisor>
OriginalAdvisor,
const llvm::ReplayInlinerSettings&
ReplaySettings,
bool EmitRemarks,
llvm::InlineContext IC)
Declared at: llvm/include/llvm/Analysis/ReplayInlineAdvisor.h:67
Parameters
- llvm::Module& M
- llvm::FunctionAnalysisManager& FAM
- llvm::LLVMContext& Context
- std::unique_ptr<InlineAdvisor> OriginalAdvisor
- const llvm::ReplayInlinerSettings& ReplaySettings
- bool EmitRemarks
- llvm::InlineContext IC
¶bool areReplayRemarksLoaded() const
bool areReplayRemarksLoaded() const
Declared at: llvm/include/llvm/Analysis/ReplayInlineAdvisor.h:73
¶std::unique_ptr<InlineAdvice> getAdviceImpl(
llvm::CallBase& CB)
std::unique_ptr<InlineAdvice> getAdviceImpl(
llvm::CallBase& CB)
Declared at: llvm/include/llvm/Analysis/ReplayInlineAdvisor.h:72
Parameters
- llvm::CallBase& CB
¶bool hasInlineAdvice(llvm::Function& F) const
bool hasInlineAdvice(llvm::Function& F) const
Declared at: llvm/include/llvm/Analysis/ReplayInlineAdvisor.h:76