LLVM  4.0.0
Namespaces | Macros | Functions | Variables
PPCCTRLoops.cpp File Reference
#include "llvm/Transforms/Scalar.h"
#include "PPC.h"
#include "PPCTargetMachine.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/ScalarEvolutionExpander.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/InlineAsm.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/ValueHandle.h"
#include "llvm/PassSupport.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/Transforms/Utils/LoopUtils.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
Include dependency graph for PPCCTRLoops.cpp:

Go to the source code of this file.

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Macros

#define DEBUG_TYPE   "ctrloops"
 

Functions

 STATISTIC (NumCTRLoops,"Number of loops converted to CTR loops")
 
void llvm::initializePPCCTRLoopsPass (PassRegistry &)
 
void llvm::initializePPCCTRLoopsVerifyPass (PassRegistry &)
 
 INITIALIZE_PASS_BEGIN (PPCCTRLoops,"ppc-ctr-loops","PowerPC CTR Loops", false, false) INITIALIZE_PASS_END(PPCCTRLoops
 
 INITIALIZE_PASS_BEGIN (PPCCTRLoopsVerify,"ppc-ctr-loops-verify","PowerPC CTR Loops Verify", false, false) INITIALIZE_PASS_END(PPCCTRLoopsVerify
 
static bool isLargeIntegerTy (bool Is32Bit, Type *Ty)
 
static bool memAddrUsesCTR (const PPCTargetMachine *TM, const Value *MemAddr)
 
static bool clobbersCTR (const MachineInstr &MI)
 
static bool verifyCTRBranch (MachineBasicBlock *MBB, MachineBasicBlock::iterator I)
 

Variables

static cl::opt< int > CTRLoopLimit ("ppc-max-ctrloop", cl::Hidden, cl::init(-1))
 
ppc ctr loops
 
ppc ctr PowerPC CTR Loops
 
ppc ctr PowerPC CTR false
 
ppc ctr loops verify
 
ppc ctr loops PowerPC CTR Loops Verify
 

Macro Definition Documentation

#define DEBUG_TYPE   "ctrloops"

Definition at line 59 of file PPCCTRLoops.cpp.

Function Documentation

static bool clobbersCTR ( const MachineInstr MI)
static
INITIALIZE_PASS_BEGIN ( PPCCTRLoops  ,
"ppc-ctr-loops ,
"PowerPC CTR Loops ,
false  ,
false   
)
INITIALIZE_PASS_BEGIN ( PPCCTRLoopsVerify  ,
"ppc-ctr-loops-verify ,
"PowerPC CTR Loops Verify ,
false  ,
false   
)
static bool isLargeIntegerTy ( bool  Is32Bit,
Type Ty 
)
static

Definition at line 192 of file PPCCTRLoops.cpp.

static bool memAddrUsesCTR ( const PPCTargetMachine TM,
const Value MemAddr 
)
static
STATISTIC ( NumCTRLoops  ,
"Number of loops converted to CTR loops  
)
static bool verifyCTRBranch ( MachineBasicBlock MBB,
MachineBasicBlock::iterator  I 
)
static

Variable Documentation

cl::opt<int> CTRLoopLimit("ppc-max-ctrloop", cl::Hidden, cl::init(-1))
static
ppc ctr loops PowerPC CTR Loops false

Definition at line 149 of file PPCCTRLoops.cpp.

ppc ctr loops

Definition at line 149 of file PPCCTRLoops.cpp.

ppc ctr PowerPC CTR Loops

Definition at line 149 of file PPCCTRLoops.cpp.

ppc ctr loops verify

Definition at line 160 of file PPCCTRLoops.cpp.

Referenced by llvm::LiveInterval::verify().

ppc ctr loops PowerPC CTR Loops Verify