LLVM  3.7.0
Public Member Functions | Static Public Member Functions | List of all members
llvm::BlockFrequency Class Reference

#include <BlockFrequency.h>

Public Member Functions

 BlockFrequency (uint64_t Freq=0)
 
uint64_t getFrequency () const
 Returns the frequency as a fixpoint number scaled by the entry frequency. More...
 
BlockFrequencyoperator*= (const BranchProbability &Prob)
 Multiplies with a branch probability. More...
 
const BlockFrequency operator* (const BranchProbability &Prob) const
 
BlockFrequencyoperator/= (const BranchProbability &Prob)
 Divide by a non-zero branch probability using saturating arithmetic. More...
 
BlockFrequency operator/ (const BranchProbability &Prob) const
 
BlockFrequencyoperator+= (const BlockFrequency &Freq)
 Adds another block frequency using saturating arithmetic. More...
 
const BlockFrequency operator+ (const BlockFrequency &Freq) const
 
BlockFrequencyoperator>>= (const unsigned count)
 Shift block frequency to the right by count digits saturating to 1. More...
 
bool operator< (const BlockFrequency &RHS) const
 
bool operator<= (const BlockFrequency &RHS) const
 
bool operator> (const BlockFrequency &RHS) const
 
bool operator>= (const BlockFrequency &RHS) const
 

Static Public Member Functions

static uint64_t getMaxFrequency ()
 Returns the maximum possible frequency, the saturation value. More...
 

Detailed Description

Definition at line 25 of file BlockFrequency.h.

Constructor & Destructor Documentation

llvm::BlockFrequency::BlockFrequency ( uint64_t  Freq = 0)
inline

Definition at line 29 of file BlockFrequency.h.

Member Function Documentation

uint64_t llvm::BlockFrequency::getFrequency ( ) const
inline
static uint64_t llvm::BlockFrequency::getMaxFrequency ( )
inlinestatic

Returns the maximum possible frequency, the saturation value.

Definition at line 32 of file BlockFrequency.h.

Referenced by llvm::SpillPlacement::Node::addBias().

const BlockFrequency BlockFrequency::operator* ( const BranchProbability Prob) const

Definition at line 27 of file BlockFrequency.cpp.

BlockFrequency & BlockFrequency::operator*= ( const BranchProbability Prob)

Multiplies with a branch probability.

The computation will never overflow.

Definition at line 21 of file BlockFrequency.cpp.

References llvm::BranchProbability::scale().

const BlockFrequency BlockFrequency::operator+ ( const BlockFrequency Freq) const

Definition at line 56 of file BlockFrequency.cpp.

BlockFrequency & BlockFrequency::operator+= ( const BlockFrequency Freq)

Adds another block frequency using saturating arithmetic.

Definition at line 44 of file BlockFrequency.cpp.

BlockFrequency BlockFrequency::operator/ ( const BranchProbability Prob) const

Definition at line 38 of file BlockFrequency.cpp.

BlockFrequency & BlockFrequency::operator/= ( const BranchProbability Prob)

Divide by a non-zero branch probability using saturating arithmetic.

Definition at line 33 of file BlockFrequency.cpp.

References llvm::BranchProbability::scaleByInverse().

bool llvm::BlockFrequency::operator< ( const BlockFrequency RHS) const
inline

Definition at line 55 of file BlockFrequency.h.

bool llvm::BlockFrequency::operator<= ( const BlockFrequency RHS) const
inline

Definition at line 59 of file BlockFrequency.h.

bool llvm::BlockFrequency::operator> ( const BlockFrequency RHS) const
inline

Definition at line 63 of file BlockFrequency.h.

bool llvm::BlockFrequency::operator>= ( const BlockFrequency RHS) const
inline

Definition at line 67 of file BlockFrequency.h.

BlockFrequency & BlockFrequency::operator>>= ( const unsigned  count)

Shift block frequency to the right by count digits saturating to 1.

Definition at line 62 of file BlockFrequency.cpp.


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