LLVM 18.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 65 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostBlockDec {0} 
The cost of decreasing a block's count by one.
Definition at line 79 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 88 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 85 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 76 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 91 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 82 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 100 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpFTDec {0} 
The cost of decreasing a fallthrough jump's count by one.
Definition at line 103 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpFTInc {0} 
The cost of increasing a fallthrough jump's count by one.
Definition at line 97 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpInc {0} 
The cost of increasing a jump's count by one.
Definition at line 94 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpUnknownFTInc {0} 
The cost of increasing an unknown fallthrough jump's count by one.
Definition at line 109 of file SampleProfileInference.h.
unsigned llvm::ProfiParams::CostJumpUnknownInc {0} 
The cost of increasing an unknown jump's count by one.
Definition at line 106 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 112 of file SampleProfileInference.h.
bool llvm::ProfiParams::EvenFlowDistribution {false} 
Evenly distribute flow when there are multiple equally likely options.
Definition at line 67 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
bool llvm::ProfiParams::JoinIslands {false} 
Join isolated components having positive flow.
Definition at line 73 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().
bool llvm::ProfiParams::RebalanceUnknown {false} 
Evenly redistribute flow among unknown subgraphs.
Definition at line 70 of file SampleProfileInference.h.
Referenced by llvm::applyFlowInference().