9#ifndef LLVM_ANALYSIS_INLINEORDER_H
10#define LLVM_ANALYSIS_INLINEORDER_H
26 virtual void push(
const T &Elt) = 0;
35LLVM_ABI std::unique_ptr<InlineOrder<std::pair<CallBase *, int>>>
39LLVM_ABI std::unique_ptr<InlineOrder<std::pair<CallBase *, int>>>
57 typedef std::unique_ptr<InlineOrder<std::pair<CallBase *, int>>> (
63 assert(Factory !=
nullptr &&
64 "The plugin inline order factory should not be a null pointer.");
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
Machine Check Debug Module
FunctionAnalysisManager FAM
ModuleAnalysisManager MAM
Base class for all callable instructions (InvokeInst and CallInst) Holds everything related to callin...
virtual void erase_if(function_ref< bool(T)> Pred)=0
virtual ~InlineOrder()=default
virtual void push(const T &Elt)=0
A Module instance is used to store all the information related to an LLVM module.
PluginInlineOrderAnalysis(InlineOrderFactory Factory)
static LLVM_ABI AnalysisKey Key
std::unique_ptr< InlineOrder< std::pair< CallBase *, int > > >(* InlineOrderFactory)(FunctionAnalysisManager &FAM, const InlineParams &Params, ModuleAnalysisManager &MAM, Module &M)
Result run(Module &, ModuleAnalysisManager &)
An efficient, type-erasing, non-owning reference to a callable.
This is an optimization pass for GlobalISel generic memory operations.
LLVM_ABI std::unique_ptr< InlineOrder< std::pair< CallBase *, int > > > getDefaultInlineOrder(FunctionAnalysisManager &FAM, const InlineParams &Params, ModuleAnalysisManager &MAM, Module &M)
LLVM_ABI std::unique_ptr< InlineOrder< std::pair< CallBase *, int > > > getInlineOrder(FunctionAnalysisManager &FAM, const InlineParams &Params, ModuleAnalysisManager &MAM, Module &M)
AnalysisManager< Function > FunctionAnalysisManager
Convenience typedef for the Function analysis manager.
AnalysisManager< Module > ModuleAnalysisManager
Convenience typedef for the Module analysis manager.
A CRTP mix-in that provides informational APIs needed for analysis passes.
A special type used by analysis passes to provide an address that identifies that particular analysis...
Thresholds to tune inline cost analysis.
InlineOrderFactory Factory