LLVM 22.0.0git
EarlyIfConversion.cpp File Reference

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "early-ifcvt"
#define DEBUG_TYPE   "early-if-predicator"

Functions

 STATISTIC (NumDiamondsSeen, "Number of diamonds")
 STATISTIC (NumDiamondsConv, "Number of diamonds converted")
 STATISTIC (NumTrianglesSeen, "Number of triangles")
 STATISTIC (NumTrianglesConv, "Number of triangles converted")
static bool hasSameValue (const MachineRegisterInfo &MRI, const TargetInstrInfo *TII, Register TReg, Register FReg)
 INITIALIZE_PASS_BEGIN (EarlyIfConverterLegacy, DEBUG_TYPE, "Early If Converter", false, false) INITIALIZE_PASS_END(EarlyIfConverterLegacy
static unsigned adjCycles (unsigned Cyc, int Delta)
 INITIALIZE_PASS_BEGIN (EarlyIfPredicator, DEBUG_TYPE, "Early If Predicator", false, false) INITIALIZE_PASS_END(EarlyIfPredicator

Variables

static cl::opt< unsignedBlockInstrLimit ("early-ifcvt-limit", cl::init(30), cl::Hidden, cl::desc("Maximum number of instructions per speculated block."))
static cl::opt< boolStress ("stress-early-ifcvt", cl::Hidden, cl::desc("Turn all knobs to 11"))
 DEBUG_TYPE
Early If Converter
Early If false
Early If Predicator

Macro Definition Documentation

◆ DEBUG_TYPE [1/2]

#define DEBUG_TYPE   "early-ifcvt"

Definition at line 46 of file EarlyIfConversion.cpp.

◆ DEBUG_TYPE [2/2]

#define DEBUG_TYPE   "early-if-predicator"

Definition at line 46 of file EarlyIfConversion.cpp.

Function Documentation

◆ adjCycles()

unsigned adjCycles ( unsigned Cyc,
int Delta )
static

Definition at line 900 of file EarlyIfConversion.cpp.

◆ hasSameValue()

◆ INITIALIZE_PASS_BEGIN() [1/2]

INITIALIZE_PASS_BEGIN ( EarlyIfConverterLegacy ,
DEBUG_TYPE ,
"Early If Converter" ,
false ,
false  )

◆ INITIALIZE_PASS_BEGIN() [2/2]

INITIALIZE_PASS_BEGIN ( EarlyIfPredicator ,
DEBUG_TYPE ,
"Early If Predicator" ,
false ,
false  )

◆ STATISTIC() [1/4]

STATISTIC ( NumDiamondsConv ,
"Number of diamonds converted"  )

◆ STATISTIC() [2/4]

STATISTIC ( NumDiamondsSeen ,
"Number of diamonds"  )

◆ STATISTIC() [3/4]

STATISTIC ( NumTrianglesConv ,
"Number of triangles converted"  )

References MRI, llvm::CallingConv::Tail, TBB, TII, and TRI.

◆ STATISTIC() [4/4]

STATISTIC ( NumTrianglesSeen ,
"Number of triangles"  )

Variable Documentation

◆ BlockInstrLimit

cl::opt< unsigned > BlockInstrLimit("early-ifcvt-limit", cl::init(30), cl::Hidden, cl::desc("Maximum number of instructions per speculated block.")) ( "early-ifcvt-limit" ,
cl::init(30) ,
cl::Hidden ,
cl::desc("Maximum number of instructions per speculated block.")  )
static

◆ Converter

Early If Converter

Definition at line 846 of file EarlyIfConversion.cpp.

Referenced by createInterfaceFile().

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 846 of file EarlyIfConversion.cpp.

◆ false

Early If false

Definition at line 847 of file EarlyIfConversion.cpp.

◆ Predicator

Early If Predicator

◆ Stress

cl::opt< bool > Stress("stress-early-ifcvt", cl::Hidden, cl::desc("Turn all knobs to 11")) ( "stress-early-ifcvt" ,
cl::Hidden ,
cl::desc("Turn all knobs to 11")  )
static

Referenced by shouldConvertImpl().