LLVM: lib/CodeGen/MachineCSE.cpp File Reference (original) (raw)

Go to the source code of this file.

Macros
#define DEBUG_TYPE "machine-cse"
Functions
STATISTIC (NumCoalesces, "Number of copies coalesced")
STATISTIC (NumCSEs, "Number of common subexpression eliminated")
STATISTIC (NumPREs, "Number of partial redundant expression" " transformed to fully redundant")
STATISTIC (NumPhysCSEs, "Number of physreg referencing common subexpr eliminated")
STATISTIC (NumCrossBBCSEs, "Number of cross-MBB physreg referencing CS eliminated")
STATISTIC (NumCommutes, "Number of copies coalesced after commuting")
INITIALIZE_PASS_BEGIN (MachineCSELegacy, DEBUG_TYPE, "Machine Common Subexpression Elimination", false, false) INITIALIZE_PASS_END(MachineCSELegacy
static bool isCallerPreservedOrConstPhysReg (MCRegister Reg, const MachineOperand &MO, const MachineFunction &MF, const TargetRegisterInfo &TRI, const TargetInstrInfo &TII)
Variables
static cl::opt< int > CSUsesThreshold ("csuses-threshold", cl::Hidden, cl::init(1024), cl::desc("Threshold for the size of CSUses"))
static cl::opt< bool > AggressiveMachineCSE ("aggressive-machine-cse", cl::Hidden, cl::init(false), cl::desc("Override the profitability heuristics for Machine CSE"))
DEBUG_TYPE
Machine Common Subexpression Elimination
Machine Common Subexpression false

DEBUG_TYPE

#define DEBUG_TYPE "machine-cse"

INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( MachineCSELegacy ,
DEBUG_TYPE ,
"Machine Common Subexpression Elimination" ,
false ,
false )

isCallerPreservedOrConstPhysReg()

STATISTIC() [1/6]

STATISTIC ( NumCoalesces ,
"Number of copies coalesced" )

STATISTIC() [2/6]

STATISTIC ( NumCommutes ,
"Number of copies coalesced after commuting" )

STATISTIC() [3/6]

STATISTIC ( NumCrossBBCSEs ,
"Number of cross-MBB physreg referencing CS eliminated" )

STATISTIC() [4/6]

STATISTIC ( NumCSEs ,
"Number of common subexpression eliminated" )

STATISTIC() [5/6]

STATISTIC ( NumPhysCSEs ,
"Number of physreg referencing common subexpr eliminated" )

STATISTIC() [6/6]

STATISTIC ( NumPREs ,
"Number of partial redundant expression" " transformed to fully redundant" )

AggressiveMachineCSE

cl::opt< bool > AggressiveMachineCSE("aggressive-machine-cse", cl::Hidden, cl::init(false), cl::desc("Override the profitability heuristics for Machine CSE")) ( "aggressive-machine-cse" , cl::Hidden , cl::init(false) , cl::desc("Override the profitability heuristics for Machine CSE") ) static

CSUsesThreshold

cl::opt< int > CSUsesThreshold("csuses-threshold", cl::Hidden, cl::init(1024), cl::desc("Threshold for the size of CSUses")) ( "csuses-threshold" , cl::Hidden , cl::init(1024) , cl::desc("Threshold for the size of CSUses") ) static

DEBUG_TYPE

Elimination

Machine Common Subexpression Elimination

false