ΒΆllvm::InlineCost getInlineCost(
llvm::CallBase& Call,
const llvm::InlineParams& Params,
llvm::TargetTransformInfo& CalleeTTI,
std::function<AssumptionCache&(Function&)>&
GetAssumptionCache,
Optional<
function_ref<llvm::BlockFrequencyInfo&(
llvm::Function&)>> GetBFI,
llvm::ProfileSummaryInfo* PSI,
llvm::OptimizationRemarkEmitter* ORE =
nullptr)
llvm::InlineCost getInlineCost(
llvm::CallBase& Call,
const llvm::InlineParams& Params,
llvm::TargetTransformInfo& CalleeTTI,
std::function<AssumptionCache&(Function&)>&
GetAssumptionCache,
Optional<
function_ref<llvm::BlockFrequencyInfo&(
llvm::Function&)>> GetBFI,
llvm::ProfileSummaryInfo* PSI,
llvm::OptimizationRemarkEmitter* ORE =
nullptr)
Description
Get an InlineCost object representing the cost of inlining this callsite. Note that a default threshold is passed into this function. This threshold could be modified based on callsite's properties and only costs below this new threshold are computed with any accuracy. The new threshold can be used to bound the computation necessary to determine whether the cost is sufficiently low to warrant inlining. Also note that calling this function *dynamically* computes the cost of inlining the callsite. It is an expensive, heavyweight call.
Declared at: llvm/include/llvm/Analysis/InlineCost.h:215
Parameters
- llvm::CallBase& Call
- const llvm::InlineParams& Params
- llvm::TargetTransformInfo& CalleeTTI
- std::function<AssumptionCache&(Function&)>& GetAssumptionCache
- Optional<function_ref<llvm::BlockFrequencyInfo&( llvm::Function&)>> GetBFI
- llvm::ProfileSummaryInfo* PSI
- llvm::OptimizationRemarkEmitter* ORE = nullptr