LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
llvm::PPCTargetMachine Class Reference

#include <PPCTargetMachine.h>

Inheritance diagram for llvm::PPCTargetMachine:
Inheritance graph
[legend]
Collaboration diagram for llvm::PPCTargetMachine:
Collaboration graph
[legend]

Public Member Functions

 PPCTargetMachine (const Target &T, StringRef TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Reloc::Model RM, CodeModel::Model CM, CodeGenOpt::Level OL, bool is64Bit)
 
virtual const PPCInstrInfogetInstrInfo () const
 
virtual const PPCFrameLoweringgetFrameLowering () const
 
virtual PPCJITInfogetJITInfo ()
 
virtual const PPCTargetLoweringgetTargetLowering () const
 
virtual const PPCSelectionDAGInfogetSelectionDAGInfo () const
 
virtual const PPCRegisterInfogetRegisterInfo () const
 
virtual const DataLayoutgetDataLayout () const
 
virtual const PPCSubtargetgetSubtargetImpl () const
 
virtual const InstrItineraryDatagetInstrItineraryData () const
 
virtual TargetPassConfigcreatePassConfig (PassManagerBase &PM)
 
virtual bool addCodeEmitter (PassManagerBase &PM, JITCodeEmitter &JCE)
 
virtual void addAnalysisPasses (PassManagerBase &PM)
 Register PPC analysis passes with a pass manager. More...
 
- Public Member Functions inherited from llvm::LLVMTargetMachine
virtual bool addPassesToEmitFile (PassManagerBase &PM, formatted_raw_ostream &Out, CodeGenFileType FileType, bool DisableVerify=true, AnalysisID StartAfter=0, AnalysisID StopAfter=0)
 
virtual bool addPassesToEmitMachineCode (PassManagerBase &PM, JITCodeEmitter &MCE, bool DisableVerify=true)
 
virtual bool addPassesToEmitMC (PassManagerBase &PM, MCContext *&Ctx, raw_ostream &OS, bool DisableVerify=true)
 
- Public Member Functions inherited from llvm::TargetMachine
virtual ~TargetMachine ()
 
const TargetgetTarget () const
 
const StringRef getTargetTriple () const
 
const StringRef getTargetCPU () const
 
const StringRef getTargetFeatureString () const
 
void resetTargetOptions (const MachineFunction *MF) const
 Reset the target options based on the function's attributes. More...
 
const MCAsmInfogetMCAsmInfo () const
 
template<typename STC >
const STC & getSubtarget () const
 
virtual const TargetIntrinsicInfogetIntrinsicInfo () const
 
bool hasMCRelaxAll () const
 
void setMCRelaxAll (bool Value)
 
bool hasMCSaveTempLabels () const
 
void setMCSaveTempLabels (bool Value)
 
bool hasMCNoExecStack () const
 hasMCNoExecStack - Check whether an executable stack is not needed. More...
 
void setMCNoExecStack (bool Value)
 setMCNoExecStack - Set whether an executabel stack is not needed. More...
 
bool hasMCUseLoc () const
 hasMCUseLoc - Check whether we should use dwarf's .loc directive. More...
 
void setMCUseLoc (bool Value)
 setMCUseLoc - Set whether all we should use dwarf's .loc directive. More...
 
bool hasMCUseCFI () const
 hasMCUseCFI - Check whether we should use dwarf's .cfi_* directives. More...
 
void setMCUseCFI (bool Value)
 setMCUseCFI - Set whether all we should use dwarf's .cfi_* directives. More...
 
bool hasMCUseDwarfDirectory () const
 
void setMCUseDwarfDirectory (bool Value)
 
Reloc::Model getRelocationModel () const
 
CodeModel::Model getCodeModel () const
 
TLSModel::Model getTLSModel (const GlobalValue *GV) const
 
CodeGenOpt::Level getOptLevel () const
 
void setOptLevel (CodeGenOpt::Level Level) const
 Overrides the optimization level. More...
 
void setFastISel (bool Enable)
 
bool shouldPrintMachineCode () const
 

Additional Inherited Members

- Public Types inherited from llvm::TargetMachine
enum  CodeGenFileType { CGFT_AssemblyFile, CGFT_ObjectFile, CGFT_Null }
 
- Static Public Member Functions inherited from llvm::TargetMachine
static bool getAsmVerbosityDefault ()
 
static void setAsmVerbosityDefault (bool)
 
static bool getDataSections ()
 
static bool getFunctionSections ()
 
static void setDataSections (bool)
 setDataSections - Set if the data are emit into separate sections. More...
 
static void setFunctionSections (bool)
 
- Public Attributes inherited from llvm::TargetMachine
TargetOptions Options
 
- Protected Member Functions inherited from llvm::LLVMTargetMachine
 LLVMTargetMachine (const Target &T, StringRef TargetTriple, StringRef CPU, StringRef FS, TargetOptions Options, Reloc::Model RM, CodeModel::Model CM, CodeGenOpt::Level OL)
 
void initAsmInfo ()
 
- Protected Member Functions inherited from llvm::TargetMachine
 TargetMachine (const Target &T, StringRef TargetTriple, StringRef CPU, StringRef FS, const TargetOptions &Options)
 
- Protected Attributes inherited from llvm::TargetMachine
const TargetTheTarget
 TheTarget - The Target that this machine was created for. More...
 
std::string TargetTriple
 
std::string TargetCPU
 
std::string TargetFS
 
MCCodeGenInfoCodeGenInfo
 
const MCAsmInfoAsmInfo
 
unsigned MCRelaxAll: 1
 
unsigned MCNoExecStack: 1
 
unsigned MCSaveTempLabels: 1
 
unsigned MCUseLoc: 1
 
unsigned MCUseCFI: 1
 
unsigned MCUseDwarfDirectory: 1
 

Detailed Description

PPCTargetMachine - Common code between 32-bit and 64-bit PowerPC targets.

Definition at line 30 of file PPCTargetMachine.h.

Constructor & Destructor Documentation

PPCTargetMachine::PPCTargetMachine ( const Target T,
StringRef  TT,
StringRef  CPU,
StringRef  FS,
const TargetOptions Options,
Reloc::Model  RM,
CodeModel::Model  CM,
CodeGenOpt::Level  OL,
bool  is64Bit 
)

Member Function Documentation

void PPCTargetMachine::addAnalysisPasses ( PassManagerBase &  PM)
virtual

Register PPC analysis passes with a pass manager.

Reimplemented from llvm::LLVMTargetMachine.

Definition at line 162 of file PPCTargetMachine.cpp.

References llvm::createBasicTargetTransformInfoPass(), and llvm::createPPCTargetTransformInfoPass().

bool PPCTargetMachine::addCodeEmitter ( PassManagerBase &  ,
JITCodeEmitter  
)
virtual

addCodeEmitter - This pass should be overridden by the target to add a code emitter, if supported. If this is not supported, 'true' should be returned.

Reimplemented from llvm::LLVMTargetMachine.

Definition at line 150 of file PPCTargetMachine.cpp.

References llvm::createPPCJITCodeEmitterPass(), and llvm::PPCSubtarget::SetJITMode().

TargetPassConfig * PPCTargetMachine::createPassConfig ( PassManagerBase &  PM)
virtual

createPassConfig - Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of CodeGen passes.

createPassConfig - Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of CodeGen passes.

Targets may override this to extend TargetPassConfig.

Reimplemented from llvm::LLVMTargetMachine.

Definition at line 103 of file PPCTargetMachine.cpp.

virtual const DataLayout* llvm::PPCTargetMachine::getDataLayout ( ) const
inlinevirtual

Reimplemented from llvm::TargetMachine.

Definition at line 61 of file PPCTargetMachine.h.

virtual const PPCFrameLowering* llvm::PPCTargetMachine::getFrameLowering ( ) const
inlinevirtual

Reimplemented from llvm::TargetMachine.

Definition at line 47 of file PPCTargetMachine.h.

virtual const PPCInstrInfo* llvm::PPCTargetMachine::getInstrInfo ( ) const
inlinevirtual

Reimplemented from llvm::TargetMachine.

Definition at line 46 of file PPCTargetMachine.h.

Referenced by llvm::PPCInstrInfo::CreateTargetPostRAHazardRecognizer().

virtual const InstrItineraryData* llvm::PPCTargetMachine::getInstrItineraryData ( ) const
inlinevirtual

getInstrItineraryData - Returns instruction itinerary data for the target or specific subtarget.

Reimplemented from llvm::TargetMachine.

Definition at line 63 of file PPCTargetMachine.h.

virtual PPCJITInfo* llvm::PPCTargetMachine::getJITInfo ( )
inlinevirtual

getJITInfo - If this target supports a JIT, return information for it, otherwise return null.

Reimplemented from llvm::TargetMachine.

Definition at line 50 of file PPCTargetMachine.h.

virtual const PPCRegisterInfo* llvm::PPCTargetMachine::getRegisterInfo ( ) const
inlinevirtual

getRegisterInfo - If register information is available, return it. If not, return null. This is kept separate from RegInfo until RegInfo has details of graph coloring register allocation removed from it.

Reimplemented from llvm::TargetMachine.

Definition at line 57 of file PPCTargetMachine.h.

References llvm::PPCInstrInfo::getRegisterInfo().

virtual const PPCSelectionDAGInfo* llvm::PPCTargetMachine::getSelectionDAGInfo ( ) const
inlinevirtual

Reimplemented from llvm::TargetMachine.

Definition at line 54 of file PPCTargetMachine.h.

virtual const PPCSubtarget* llvm::PPCTargetMachine::getSubtargetImpl ( ) const
inlinevirtual

getSubtargetImpl - virtual method implemented by subclasses that returns a reference to that target's TargetSubtargetInfo-derived member variable.

Reimplemented from llvm::TargetMachine.

Definition at line 62 of file PPCTargetMachine.h.

Referenced by llvm::PPCInstrInfo::AnalyzeBranch(), llvm::PPCInstrInfo::canInsertSelect(), CreateTLOF(), llvm::PPCJITInfo::emitFunctionStub(), llvm::PPCInstrInfo::FoldImmediate(), llvm::PPCInstrInfo::InsertBranch(), llvm::PPCInstrInfo::insertSelect(), llvm::PPCInstrInfo::optimizeCompareInstr(), and llvm::PPCInstrInfo::PredicateInstruction().

virtual const PPCTargetLowering* llvm::PPCTargetMachine::getTargetLowering ( ) const
inlinevirtual

Reimplemented from llvm::TargetMachine.

Definition at line 51 of file PPCTargetMachine.h.


The documentation for this class was generated from the following files: