LLVM: llvm::SampleProfileInference< FT > Class Template Reference (original) (raw)

Sample profile inference pass. More...

#include "[llvm/Transforms/Utils/SampleProfileInference.h](SampleProfileInference%5F8h%5Fsource.html)"

Public Types
using NodeRef = typename GraphTraits<FT *>::NodeRef
using BasicBlockT = std::remove_pointer_t<NodeRef>
using FunctionT = FT
using Edge = std::pair<const BasicBlockT *, const BasicBlockT *>
using BlockWeightMap = DenseMap<const BasicBlockT *, uint64_t>
using EdgeWeightMap = DenseMap<Edge, uint64_t>
using BlockEdgeMap
Public Member Functions
SampleProfileInference (FunctionT &F, BlockEdgeMap &Successors, BlockWeightMap &SampleBlockWeights)
SampleProfileInference (FunctionT &F, BlockEdgeMap &Successors, BlockWeightMap &SampleBlockWeights, EdgeWeightMap &SampleEdgeWeights)
void apply (BlockWeightMap &BlockWeights, EdgeWeightMap &EdgeWeights)
Apply the profile inference algorithm for a given function.

template
class llvm::SampleProfileInference< FT >

Sample profile inference pass.

Definition at line 119 of file SampleProfileInference.h.

BasicBlockT

BlockEdgeMap

BlockWeightMap

Edge

EdgeWeightMap

FunctionT

NodeRef

SampleProfileInference() [2/2]

apply()

Apply the profile inference algorithm for a given function.

Definition at line 171 of file SampleProfileInference.h.

References llvm::applyFlowInference(), assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::clear(), llvm::SmallPtrSetImpl< PtrType >::contains(), llvm::SmallPtrSetImpl< PtrType >::count(), llvm::depth_first_ext(), E(), I, llvm::inverse_depth_first_ext(), and llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::reserve().


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