LLVM: llvm::ProfiParams Struct Reference (original) (raw)

Various thresholds and options controlling the behavior of the profile inference algorithm. More...

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

Public Attributes
bool EvenFlowDistribution {false}
Evenly distribute flow when there are multiple equally likely options.
bool RebalanceUnknown {false}
Evenly re-distribute flow among unknown subgraphs.
bool JoinIslands {false}
Join isolated components having positive flow.
unsigned CostBlockInc {0}
The cost of increasing a block's count by one.
unsigned CostBlockDec {0}
The cost of decreasing a block's count by one.
unsigned CostBlockZeroInc {0}
The cost of increasing a count of zero-weight block by one.
unsigned CostBlockEntryInc {0}
The cost of increasing the entry block's count by one.
unsigned CostBlockEntryDec {0}
The cost of decreasing the entry block's count by one.
unsigned CostBlockUnknownInc {0}
The cost of increasing an unknown block's count by one.
unsigned CostJumpInc {0}
The cost of increasing a jump's count by one.
unsigned CostJumpFTInc {0}
The cost of increasing a fall-through jump's count by one.
unsigned CostJumpDec {0}
The cost of decreasing a jump's count by one.
unsigned CostJumpFTDec {0}
The cost of decreasing a fall-through jump's count by one.
unsigned CostJumpUnknownInc {0}
The cost of increasing an unknown jump's count by one.
unsigned CostJumpUnknownFTInc {0}
The cost of increasing an unknown fall-through jump's count by one.
const int64_t CostUnlikely = ((int64_t)1) << 30
The cost of taking an unlikely block/jump.

Various thresholds and options controlling the behavior of the profile inference algorithm.

Default values are tuned for several large-scale applications, and can be modified via corresponding command-line flags.

Definition at line 65 of file SampleProfileInference.h.

CostBlockDec

unsigned llvm::ProfiParams::CostBlockDec {0}

CostBlockEntryDec

unsigned llvm::ProfiParams::CostBlockEntryDec {0}

CostBlockEntryInc

unsigned llvm::ProfiParams::CostBlockEntryInc {0}

CostBlockInc

unsigned llvm::ProfiParams::CostBlockInc {0}

CostBlockUnknownInc

unsigned llvm::ProfiParams::CostBlockUnknownInc {0}

CostBlockZeroInc

unsigned llvm::ProfiParams::CostBlockZeroInc {0}

CostJumpDec

unsigned llvm::ProfiParams::CostJumpDec {0}

CostJumpFTDec

unsigned llvm::ProfiParams::CostJumpFTDec {0}

CostJumpFTInc

unsigned llvm::ProfiParams::CostJumpFTInc {0}

CostJumpInc

unsigned llvm::ProfiParams::CostJumpInc {0}

CostJumpUnknownFTInc

unsigned llvm::ProfiParams::CostJumpUnknownFTInc {0}

CostJumpUnknownInc

unsigned llvm::ProfiParams::CostJumpUnknownInc {0}

CostUnlikely

const int64_t llvm::ProfiParams::CostUnlikely = ((int64_t)1) << 30

EvenFlowDistribution

bool llvm::ProfiParams::EvenFlowDistribution {false}

JoinIslands

bool llvm::ProfiParams::JoinIslands {false}

RebalanceUnknown

bool llvm::ProfiParams::RebalanceUnknown {false}


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