LLVM API Documentation

Defines | Functions | Variables
Thumb2SizeReduction.cpp File Reference
#include "ARM.h"
#include "ARMBaseInstrInfo.h"
#include "ARMSubtarget.h"
#include "MCTargetDesc/ARMAddressingModes.h"
#include "Thumb2InstrInfo.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/IR/Function.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Target/TargetMachine.h"
Include dependency graph for Thumb2SizeReduction.cpp:

Go to the source code of this file.

Defines

#define DEBUG_TYPE   "t2-reduce-size"

Functions

 STATISTIC (NumNarrows,"Number of 32-bit instrs reduced to 16-bit ones")
 STATISTIC (Num2Addrs,"Number of 32-bit instrs reduced to 2addr 16-bit ones")
 STATISTIC (NumLdSts,"Number of 32-bit load / store reduced to 16-bit ones")
static bool HasImplicitCPSRDef (const MCInstrDesc &MCID)
static bool isHighLatencyCPSR (MachineInstr *Def)
static bool VerifyLowRegs (MachineInstr *MI)
static bool UpdateCPSRDef (MachineInstr &MI, bool LiveCPSR, bool &DefCPSR)
static bool UpdateCPSRUse (MachineInstr &MI, bool LiveCPSR)

Variables

static cl::opt< intReduceLimit ("t2-reduce-limit", cl::init(-1), cl::Hidden)
static cl::opt< intReduceLimit2Addr ("t2-reduce-limit2", cl::init(-1), cl::Hidden)
static cl::opt< intReduceLimitLdSt ("t2-reduce-limit3", cl::init(-1), cl::Hidden)

Define Documentation

#define DEBUG_TYPE   "t2-reduce-size"

Definition at line 27 of file Thumb2SizeReduction.cpp.


Function Documentation

static bool HasImplicitCPSRDef ( const MCInstrDesc MCID) [static]

Definition at line 213 of file Thumb2SizeReduction.cpp.

References llvm::MCInstrDesc::getImplicitDefs().

static bool isHighLatencyCPSR ( MachineInstr Def) [static]
STATISTIC ( NumNarrows  ,
"Number of 32-bit instrs reduced to 16-bit ones"   
)
STATISTIC ( Num2Addrs  ,
"Number of 32-bit instrs reduced to 2addr 16-bit ones"   
)
STATISTIC ( NumLdSts  ,
"Number of 32-bit load / store reduced to 16-bit ones"   
)
static bool UpdateCPSRDef ( MachineInstr MI,
bool  LiveCPSR,
bool DefCPSR 
) [static]
static bool UpdateCPSRUse ( MachineInstr MI,
bool  LiveCPSR 
) [static]
static bool VerifyLowRegs ( MachineInstr MI) [static]

Variable Documentation

cl::opt<int> ReduceLimit("t2-reduce-limit", cl::init(-1), cl::Hidden) [static]
cl::opt<int> ReduceLimit2Addr("t2-reduce-limit2", cl::init(-1), cl::Hidden) [static]
cl::opt<int> ReduceLimitLdSt("t2-reduce-limit3", cl::init(-1), cl::Hidden) [static]