LLVM 17.0.0git

Various thresholds and options controlling the behavior of the profile inference algorithm. More...
#include "llvm/Transforms/Utils/SampleProfileInference.h"
Public Attributes  
bool  EvenFlowDistribution {false} 
Evenly distribute flow when there are multiple equally likely options.  
bool  RebalanceUnknown {false} 
Evenly redistribute 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 zeroweight 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 fallthrough 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 fallthrough 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 fallthrough 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 largescale applications, and can be modified via corresponding commandline flags.
Definition at line 87 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostBlockDec {0} 
The cost of decreasing a block's count by one.
Definition at line 101 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
unsigned llvm::ProfiParams::CostBlockEntryDec {0} 
The cost of decreasing the entry block's count by one.
Definition at line 110 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
unsigned llvm::ProfiParams::CostBlockEntryInc {0} 
The cost of increasing the entry block's count by one.
Definition at line 107 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
unsigned llvm::ProfiParams::CostBlockInc {0} 
The cost of increasing a block's count by one.
Definition at line 98 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
unsigned llvm::ProfiParams::CostBlockUnknownInc {0} 
The cost of increasing an unknown block's count by one.
Definition at line 113 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
unsigned llvm::ProfiParams::CostBlockZeroInc {0} 
The cost of increasing a count of zeroweight block by one.
Definition at line 104 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
unsigned llvm::ProfiParams::CostJumpDec {0} 
The cost of decreasing a jump's count by one.
Definition at line 122 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpFTDec {0} 
The cost of decreasing a fallthrough jump's count by one.
Definition at line 125 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpFTInc {0} 
The cost of increasing a fallthrough jump's count by one.
Definition at line 119 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpInc {0} 
The cost of increasing a jump's count by one.
Definition at line 116 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpUnknownFTInc {0} 
The cost of increasing an unknown fallthrough jump's count by one.
Definition at line 131 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpUnknownInc {0} 
The cost of increasing an unknown jump's count by one.
Definition at line 128 of file SampleProfileInference.h.
const int64_t llvm::ProfiParams::CostUnlikely = ((int64_t)1) << 30 
The cost of taking an unlikely block/jump.
Definition at line 134 of file SampleProfileInference.h.
bool llvm::ProfiParams::EvenFlowDistribution {false} 
Evenly distribute flow when there are multiple equally likely options.
Definition at line 89 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
bool llvm::ProfiParams::JoinIslands {false} 
Join isolated components having positive flow.
Definition at line 95 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
bool llvm::ProfiParams::RebalanceUnknown {false} 
Evenly redistribute flow among unknown subgraphs.
Definition at line 92 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().