LLVM 22.0.0git
DFAJumpThreading.cpp File Reference

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "dfa-jump-threading"

Functions

 STATISTIC (NumTransforms, "Number of transformations done")
 STATISTIC (NumCloned, "Number of blocks cloned")
 STATISTIC (NumPaths, "Number of individual paths threaded")

Variables

static cl::opt< boolClViewCfgBefore ("dfa-jump-view-cfg-before", cl::desc("View the CFG before DFA Jump Threading"), cl::Hidden, cl::init(false))
static cl::opt< boolEarlyExitHeuristic ("dfa-early-exit-heuristic", cl::desc("Exit early if an unpredictable value come from the same loop"), cl::Hidden, cl::init(true))
static cl::opt< unsignedMaxPathLength ("dfa-max-path-length", cl::desc("Max number of blocks searched to find a threading path"), cl::Hidden, cl::init(20))
static cl::opt< unsignedMaxNumVisitiedPaths ("dfa-max-num-visited-paths", cl::desc("Max number of blocks visited while enumerating paths around a switch"), cl::Hidden, cl::init(2500))
static cl::opt< unsignedMaxNumPaths ("dfa-max-num-paths", cl::desc("Max number of paths enumerated around a switch"), cl::Hidden, cl::init(200))
static cl::opt< unsignedCostThreshold ("dfa-cost-threshold", cl::desc("Maximum cost accepted for the transformation"), cl::Hidden, cl::init(50))

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "dfa-jump-threading"

Definition at line 86 of file DFAJumpThreading.cpp.

Function Documentation

◆ STATISTIC() [1/3]

STATISTIC ( NumCloned ,
"Number of blocks cloned"  )

◆ STATISTIC() [2/3]

STATISTIC ( NumPaths ,
"Number of individual paths threaded"  )

◆ STATISTIC() [3/3]

STATISTIC ( NumTransforms ,
"Number of transformations done"  )

Variable Documentation

◆ ClViewCfgBefore

cl::opt< bool > ClViewCfgBefore("dfa-jump-view-cfg-before", cl::desc("View the CFG before DFA Jump Threading"), cl::Hidden, cl::init(false)) ( "dfa-jump-view-cfg-before" ,
cl::desc("View the CFG before DFA Jump Threading") ,
cl::Hidden ,
cl::init(false)  )
static

◆ CostThreshold

cl::opt< unsigned > CostThreshold("dfa-cost-threshold", cl::desc("Maximum cost accepted for the transformation"), cl::Hidden, cl::init(50)) ( "dfa-cost-threshold" ,
cl::desc("Maximum cost accepted for the transformation") ,
cl::Hidden ,
cl::init(50)  )
static

Referenced by allUsesHaveSourceMods().

◆ EarlyExitHeuristic

cl::opt< bool > EarlyExitHeuristic("dfa-early-exit-heuristic", cl::desc("Exit early if an unpredictable value come from the same loop"), cl::Hidden, cl::init(true)) ( "dfa-early-exit-heuristic" ,
cl::desc("Exit early if an unpredictable value come from the same loop") ,
cl::Hidden ,
cl::init(true)  )
static

◆ MaxNumPaths

cl::opt< unsigned > MaxNumPaths("dfa-max-num-paths", cl::desc("Max number of paths enumerated around a switch"), cl::Hidden, cl::init(200)) ( "dfa-max-num-paths" ,
cl::desc("Max number of paths enumerated around a switch") ,
cl::Hidden ,
cl::init(200)  )
static

◆ MaxNumVisitiedPaths

cl::opt< unsigned > MaxNumVisitiedPaths("dfa-max-num-visited-paths", cl::desc( "Max number of blocks visited while enumerating paths around a switch"), cl::Hidden, cl::init(2500)) ( "dfa-max-num-visited-paths" ,
cl::desc( "Max number of blocks visited while enumerating paths around a switch") ,
cl::Hidden ,
cl::init(2500)  )
static

◆ MaxPathLength

cl::opt< unsigned > MaxPathLength("dfa-max-path-length", cl::desc("Max number of blocks searched to find a threading path"), cl::Hidden, cl::init(20)) ( "dfa-max-path-length" ,
cl::desc("Max number of blocks searched to find a threading path") ,
cl::Hidden ,
cl::init(20)  )
static