LLVM: lib/Target/PowerPC/PPCTargetMachine.cpp File Reference (original ) (raw )Go to the source code of this file.
Variables
static cl::opt < bool >
EnableBranchCoalescing ("enable-ppc-branch-coalesce", cl::Hidden, cl::desc ("enable coalescing of duplicate branches for PPC"))
static cl::opt < bool >
DisableCTRLoops ("disable-ppc-ctrloops", cl::Hidden, cl::desc ("Disable CTR loops for PPC"))
static cl::opt < bool >
DisableInstrFormPrep ("disable-ppc-instr -form-prep", cl::Hidden, cl::desc ("Disable PPC loop instr form prep"))
static cl::opt < bool >
VSXFMAMutateEarly ("schedule-ppc-vsx-fma-mutation-early", cl::Hidden, cl::desc ("Schedule VSX FMA instruction mutation early"))
static cl::opt < bool >
DisableVSXSwapRemoval ("disable-ppc-vsx-swap-removal", cl::Hidden, cl::desc ("Disable VSX Swap Removal for PPC"))
static cl::opt < bool >
DisableMIPeephole ("disable-ppc-peephole", cl::Hidden, cl::desc ("Disable machine peepholes for PPC"))
static cl::opt < bool >
EnableGEPOpt ("ppc-gep -opt", cl::Hidden, cl::desc ("Enable optimizations on complex GEPs"), cl::init(true ))
static cl::opt < bool >
EnablePrefetch ("enable-ppc-prefetching", cl::desc ("enable software prefetching on PPC"), cl::init(false), cl::Hidden)
static cl::opt < bool >
EnableExtraTOCRegDeps ("enable-ppc-extra-toc-reg-deps", cl::desc ("Add extra TOC register dependencies"), cl::init(true ), cl::Hidden)
static cl::opt < bool >
EnableMachineCombinerPass ("ppc-machine-combiner", cl::desc ("Enable the machine combiner pass"), cl::init(true ), cl::Hidden)
static cl::opt < bool >
ReduceCRLogical ("ppc-reduce -cr-logicals", cl::desc ("Expand eligible cr-logical binary ops to branches"), cl::init(true ), cl::Hidden)
static cl::opt < bool >
EnablePPCGenScalarMASSEntries ("enable-ppc-gen-scalar-mass", cl::init(false), cl::desc ("Enable lowering math functions to their corresponding MASS " "(scalar) entries"), cl::Hidden)
static cl::opt < bool >
EnableGlobalMerge ("ppc-global-merge", cl::Hidden, cl::init(false), cl::desc ("Enable the global merge pass"))
static cl::opt < unsigned >
GlobalMergeMaxOffset ("ppc-global-merge -max-offset", cl::Hidden, cl::init(0x7fff), cl::desc ("Maximum global merge offset"))
static MachineSchedRegistry
PPCPreRASchedRegistry ("ppc-prera", "Run PowerPC PreRA specific scheduler", createPPCMachineScheduler )
static MachineSchedRegistry
PPCPostRASchedRegistry ("ppc-postra", "Run PowerPC PostRA specific scheduler", createPPCPostMachineScheduler )
◆ computeFSAdditions()◆ computeTargetABI()◆ createPPCMachineScheduler()◆ createPPCPostMachineScheduler()◆ createTLOF()◆ getDataLayoutString()
static std::string getDataLayoutString ( const Triple & T )
static
◆ getEffectivePPCCodeModel()◆ getEffectiveRelocModel()◆ isLittleEndianTriple()◆ LLVMInitializePowerPCTarget()Definition at line 117 of file PPCTargetMachine.cpp .
References A , B , llvm::CallingConv::C , D , llvm::PassRegistry::getPassRegistry() , llvm::getThePPC32LETarget() , llvm::getThePPC32Target() , llvm::getThePPC64LETarget() , llvm::getThePPC64Target() , llvm::initializeGlobalISel() , llvm::initializePPCBoolRetToIntPass() , llvm::initializePPCBranchCoalescingPass() , llvm::initializePPCBSelPass() , llvm::initializePPCCTRLoopsPass() , llvm::initializePPCCTRLoopsVerifyPass() , llvm::initializePPCDAGToDAGISelLegacyPass() , llvm::initializePPCEarlyReturnPass() , llvm::initializePPCExpandAtomicPseudoPass() , llvm::initializePPCGenScalarMASSEntriesPass() , llvm::initializePPCLoopInstrFormPrepPass() , llvm::initializePPCLowerMASSVEntriesPass() , llvm::initializePPCMIPeepholePass() , llvm::initializePPCPreEmitPeepholePass() , llvm::initializePPCReduceCRLogicalsPass() , llvm::initializePPCTLSDynamicCallPass() , llvm::initializePPCTOCRegDepsPass() , llvm::initializePPCVSXCopyPass() , llvm::initializePPCVSXFMAMutatePass() , and llvm::initializePPCVSXSwapRemovalPass() .
◆ DisableCTRLoops◆ DisableMIPeephole
cl::opt < bool > DisableMIPeephole("disable-ppc-peephole", cl::Hidden, cl::desc ("Disable machine peepholes for PPC")) ( "disable-ppc-peephole" , cl::Hidden , cl::desc ("Disable machine peepholes for PPC") )
static
◆ DisableVSXSwapRemoval◆ EnableBranchCoalescing
cl::opt < bool > EnableBranchCoalescing("enable-ppc-branch-coalesce", cl::Hidden, cl::desc ("enable coalescing of duplicate branches for PPC")) ( "enable-ppc-branch-coalesce" , cl::Hidden , cl::desc ("enable coalescing of duplicate branches for PPC") )
static
cl::opt < bool > EnableExtraTOCRegDeps("enable-ppc-extra-toc-reg-deps", cl::desc ("Add extra TOC register dependencies"), cl::init(true ), cl::Hidden) ( "enable-ppc-extra-toc-reg-deps" , cl::desc ("Add extra TOC register dependencies") , cl::init(true ) , cl::Hidden )
static
◆ EnableGEPOpt◆ EnableGlobalMerge
cl::opt < bool > EnableGlobalMerge("ppc-global-merge", cl::Hidden, cl::init(false), cl::desc ("Enable the global merge pass")) ( "ppc-global-merge" , cl::Hidden , cl::init(false) , cl::desc ("Enable the global merge pass") )
static
◆ EnableMachineCombinerPass
cl::opt < bool > EnableMachineCombinerPass("ppc-machine-combiner", cl::desc ("Enable the machine combiner pass"), cl::init(true ), cl::Hidden) ( "ppc-machine-combiner" , cl::desc ("Enable the machine combiner pass") , cl::init(true ) , cl::Hidden )
static
◆ EnablePPCGenScalarMASSEntries
cl::opt < bool > EnablePPCGenScalarMASSEntries("enable-ppc-gen-scalar-mass", cl::init(false), cl::desc ("Enable lowering math functions to their corresponding MASS " "(scalar) entries"), cl::Hidden) ( "enable-ppc-gen-scalar-mass" , cl::init(false) , cl::desc ("Enable lowering math functions to their corresponding MASS " "(scalar) entries") , cl::Hidden )
static
◆ EnablePrefetch
cl::opt < bool > EnablePrefetch("enable-ppc-prefetching", cl::desc ("enable software prefetching on PPC"), cl::init(false), cl::Hidden) ( "enable-ppc-prefetching" , cl::desc ("enable software prefetching on PPC") , cl::init(false) , cl::Hidden )
static
◆ GlobalMergeMaxOffset
cl::opt < unsigned > GlobalMergeMaxOffset("ppc-global-merge -max-offset", cl::Hidden, cl::init(0x7fff), cl::desc ("Maximum global merge offset")) ( "ppc-global-merge -max-offset" , cl::Hidden , cl::init(0x7fff) , cl::desc ("Maximum global merge offset") )
static
◆ PPCPostRASchedRegistry◆ PPCPreRASchedRegistry◆ ReduceCRLogical
cl::opt < bool > ReduceCRLogical("ppc-reduce -cr-logicals", cl::desc ("Expand eligible cr-logical binary ops to branches"), cl::init(true ), cl::Hidden) ( "ppc-reduce -cr-logicals" , cl::desc ("Expand eligible cr-logical binary ops to branches") , cl::init(true ) , cl::Hidden )
static
◆ VSXFMAMutateEarly
cl::opt < bool > VSXFMAMutateEarly("schedule-ppc-vsx-fma-mutation-early", cl::Hidden, cl::desc ("Schedule VSX FMA instruction mutation early")) ( "schedule-ppc-vsx-fma-mutation-early" , cl::Hidden , cl::desc ("Schedule VSX FMA instruction mutation early") )
static