LLVM: lib/Target/Mips/MipsConstantIslandPass.cpp File Reference (original) (raw)

Go to the source code of this file.

Macros
#define DEBUG_TYPE "mips-constant-islands"
Functions
STATISTIC (NumCPEs, "Number of constpool entries")
STATISTIC (NumSplit, "Number of uncond branches inserted")
STATISTIC (NumCBrFixed, "Number of cond branches fixed")
STATISTIC (NumUBrFixed, "Number of uncond branches fixed")
static unsigned int branchTargetOperand (MachineInstr *MI)
static unsigned int longformBranchOpcode (unsigned int Opcode)
static unsigned int branchMaxOffsets (unsigned int Opcode)
static bool BBHasFallthrough (MachineBasicBlock *MBB)
BBHasFallthrough - Return true if the specified basic block can fallthrough into the block immediately after it.
static bool CompareMBBNumbers (const MachineBasicBlock *LHS, const MachineBasicBlock *RHS)
CompareMBBNumbers - Little predicate function to sort the WaterList by MBB ID.
static bool BBIsJumpedOver (MachineBasicBlock *MBB)
BBIsJumpedOver - Return true of the specified basic block's only predecessor unconditionally branches to its only successor.
static unsigned getUnconditionalBrDisp (int Opc)
getUnconditionalBrDisp - Returns the maximum displacement that can fit in the specific unconditional branch instruction.
Variables
static cl::opt< bool > AlignConstantIslands ("mips-align-constant-islands", cl::Hidden, cl::init(true), cl::desc("Align constant islands in code"))
static cl::opt< int > ConstantIslandsSmallOffset ("mips-constant-islands-small-offset", cl::init(0), cl::desc("Make small offsets be this amount for testing purposes"), cl::Hidden)
static cl::opt< bool > NoLoadRelaxation ("mips-constant-islands-no-load-relaxation", cl::init(false), cl::desc("Don't relax loads to long loads - for testing purposes"), cl::Hidden)

DEBUG_TYPE

#define DEBUG_TYPE "mips-constant-islands"

BBHasFallthrough()

BBIsJumpedOver()

branchMaxOffsets()

branchTargetOperand()

CompareMBBNumbers()

getUnconditionalBrDisp()

unsigned getUnconditionalBrDisp ( int Opc) inlinestatic

getUnconditionalBrDisp - Returns the maximum displacement that can fit in the specific unconditional branch instruction.

Definition at line 1139 of file MipsConstantIslandPass.cpp.

References Opc.

longformBranchOpcode()

STATISTIC() [1/4]

STATISTIC ( NumCBrFixed ,
"Number of cond branches fixed" )

STATISTIC() [2/4]

STATISTIC ( NumCPEs ,
"Number of constpool entries" )

STATISTIC() [3/4]

STATISTIC ( NumSplit ,
"Number of uncond branches inserted" )

STATISTIC() [4/4]

STATISTIC ( NumUBrFixed ,
"Number of uncond branches fixed" )

AlignConstantIslands

cl::opt< bool > AlignConstantIslands("mips-align-constant-islands", cl::Hidden, cl::init(true), cl::desc("Align constant islands in code")) ( "mips-align-constant-islands" , cl::Hidden , cl::init(true) , cl::desc("Align constant islands in code") ) static

ConstantIslandsSmallOffset

cl::opt< int > ConstantIslandsSmallOffset("mips-constant-islands-small-offset", cl::init(0), cl::desc("Make small offsets be this amount for testing purposes"), cl::Hidden) ( "mips-constant-islands-small-offset" , cl::init(0) , cl::desc("Make small offsets be this amount for testing purposes") , cl::Hidden ) static

NoLoadRelaxation

cl::opt< bool > NoLoadRelaxation("mips-constant-islands-no-load-relaxation", cl::init(false), cl::desc("Don't relax loads to long loads - for testing purposes"), cl::Hidden) ( "mips-constant-islands-no-load-relaxation" , cl::init(false) , cl::desc("Don't relax loads to long loads - for testing purposes") , cl::Hidden ) static