LLVM: llvm::BranchProbability Class Reference (original) (raw)

#include "[llvm/Support/BranchProbability.h](BranchProbability%5F8h%5Fsource.html)"

Public Member Functions
BranchProbability ()
LLVM_ABI BranchProbability (uint32_t Numerator, uint32_t Denominator)
bool isZero () const
bool isUnknown () const
uint32_t getNumerator () const
double toDouble () const
BranchProbability getCompl () const
LLVM_ABI raw_ostream & print (raw_ostream &OS) const
LLVM_DUMP_METHOD void dump () const
LLVM_ABI uint64_t scale (uint64_t Num) const
Scale a large integer.
LLVM_ABI uint64_t scaleByInverse (uint64_t Num) const
Scale a large integer by the inverse.
BranchProbability pow (unsigned N) const
Compute pow(Probability, N).
BranchProbability & operator+= (BranchProbability RHS)
BranchProbability & operator-= (BranchProbability RHS)
BranchProbability & operator*= (BranchProbability RHS)
BranchProbability & operator*= (uint32_t RHS)
BranchProbability & operator/= (BranchProbability RHS)
BranchProbability & operator/= (uint32_t RHS)
BranchProbability operator+ (BranchProbability RHS) const
BranchProbability operator- (BranchProbability RHS) const
BranchProbability operator* (BranchProbability RHS) const
BranchProbability operator* (uint32_t RHS) const
BranchProbability operator/ (BranchProbability RHS) const
BranchProbability operator/ (uint32_t RHS) const
bool operator== (BranchProbability RHS) const
bool operator!= (BranchProbability RHS) const
bool operator< (BranchProbability RHS) const
bool operator> (BranchProbability RHS) const
bool operator<= (BranchProbability RHS) const
bool operator>= (BranchProbability RHS) const
Static Public Member Functions
static BranchProbability getZero ()
static BranchProbability getOne ()
static BranchProbability getUnknown ()
static BranchProbability getRaw (uint32_t N)
static LLVM_ABI BranchProbability getBranchProbability (uint64_t Numerator, uint64_t Denominator)
static LLVM_ABI BranchProbability getBranchProbability (double Prob)
template
static void normalizeProbabilities (ProbabilityIter Begin, ProbabilityIter End)
template
static void normalizeProbabilities (ProbabilityContainer &&R)
static uint32_t getDenominator ()

Definition at line 32 of file BranchProbability.h.

llvm::BranchProbability::BranchProbability ( ) inline

BranchProbability() [2/2]

BranchProbability::BranchProbability ( uint32_t Numerator,
uint32_t Denominator )

dump()

getBranchProbability() [1/2]

getBranchProbability() [2/2]

Definition at line 51 of file BranchProbability.cpp.

References assert(), and BranchProbability().

Referenced by CloneLoopBlocks(), extractBranchProbabilities(), foldTwoEntryPHINode(), llvm::getBranchProbability(), getCHRBiasThreshold(), llvm::BFIDOTGraphTraitsBase< BlockFrequencyInfo, BranchProbabilityInfo >::getNodeAttributes(), isFormingBranchFromSelectProfitable(), isProfitableToSpeculate(), llvm::peelLoop(), shouldFoldCondBranchesToCommonDestination(), SimplifyCondBranchToCondBranch(), llvm::JumpThreadingPass::unfoldSelectInstr(), updatePredecessorProfileMetadata(), and llvm::misexpect::verifyMisExpect().

getCompl()

getDenominator()

uint32_t llvm::BranchProbability::getDenominator ( ) inlinestatic

getNumerator()

uint32_t llvm::BranchProbability::getNumerator ( ) const inline

getOne()

getRaw()

getUnknown()

getZero()

isUnknown()

bool llvm::BranchProbability::isUnknown ( ) const inline

isZero()

bool llvm::BranchProbability::isZero ( ) const inline

normalizeProbabilities() [1/2]

template

void llvm::BranchProbability::normalizeProbabilities ( ProbabilityContainer && R) inlinestatic

normalizeProbabilities() [2/2]

template

void llvm::BranchProbability::normalizeProbabilities ( ProbabilityIter Begin, ProbabilityIter End ) static

operator!=()

operator*() [1/2]

operator*() [2/2]

operator*=() [1/2]

operator*=() [2/2]

operator+()

operator+=()

operator-()

operator-=()

operator/() [1/2]

operator/() [2/2]

operator/=() [1/2]

operator/=() [2/2]

operator<()

operator<=()

operator==()

operator>()

operator>=()

pow()

print()

scale()

scaleByInverse()

toDouble()

double llvm::BranchProbability::toDouble ( ) const inline

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