class InlineFunctionInfo
Declaration
class InlineFunctionInfo { /* full declaration omitted */ };
Description
This class captures the data input to the InlineFunction call, and records the auxiliary results produced by it.
Declared at: llvm/include/llvm/Transforms/Utils/Cloning.h:199
Member Variables
- public llvm::CallGraph* CG
- If non-null, InlineFunction will update the callgraph to reflect the changes it makes.
- public function_ref<llvm::AssumptionCache&( llvm::Function&)> GetAssumptionCache
- public llvm::ProfileSummaryInfo* PSI
- public llvm::BlockFrequencyInfo* CallerBFI
- public llvm::BlockFrequencyInfo* CalleeBFI
- public SmallVector<llvm::AllocaInst*, 4> StaticAllocas
- InlineFunction fills this in with all static allocas that get copied into the caller.
- public SmallVector<llvm::WeakTrackingVH, 8> InlinedCalls
- InlineFunction fills this in with callsites that were inlined from the callee. This is only filled in if CG is non-null.
- public SmallVector<llvm::CallBase*, 8> InlinedCallSites
- 'InlineFunction' fills this in by scanning the inlined instructions, and only if CG is null. If CG is non-null, instead the value handle `InlinedCalls` above is used.
- public bool UpdateProfile
- Update profile for callee as well as cloned version. We need to do this for regular inlining, but not for inlining from sample profile loader.
Method Overview
- public InlineFunctionInfo(llvm::CallGraph * cg = nullptr, function_ref<llvm::AssumptionCache &(llvm::Function &)> GetAssumptionCache = nullptr, llvm::ProfileSummaryInfo * PSI = nullptr, llvm::BlockFrequencyInfo * CallerBFI = nullptr, llvm::BlockFrequencyInfo * CalleeBFI = nullptr, bool UpdateProfile = true)
- public void reset()
Methods
¶InlineFunctionInfo(
llvm::CallGraph* cg = nullptr,
function_ref<llvm::AssumptionCache&(
llvm::Function&)> GetAssumptionCache =
nullptr,
llvm::ProfileSummaryInfo* PSI = nullptr,
llvm::BlockFrequencyInfo* CallerBFI = nullptr,
llvm::BlockFrequencyInfo* CalleeBFI = nullptr,
bool UpdateProfile = true)
InlineFunctionInfo(
llvm::CallGraph* cg = nullptr,
function_ref<llvm::AssumptionCache&(
llvm::Function&)> GetAssumptionCache =
nullptr,
llvm::ProfileSummaryInfo* PSI = nullptr,
llvm::BlockFrequencyInfo* CallerBFI = nullptr,
llvm::BlockFrequencyInfo* CalleeBFI = nullptr,
bool UpdateProfile = true)
Declared at: llvm/include/llvm/Transforms/Utils/Cloning.h:201
Parameters
- llvm::CallGraph* cg = nullptr
- function_ref<llvm::AssumptionCache&( llvm::Function&)> GetAssumptionCache = nullptr
- llvm::ProfileSummaryInfo* PSI = nullptr
- llvm::BlockFrequencyInfo* CallerBFI = nullptr
- llvm::BlockFrequencyInfo* CalleeBFI = nullptr
- bool UpdateProfile = true
¶void reset()
void reset()
Declared at: llvm/include/llvm/Transforms/Utils/Cloning.h:237