LLVM API Documentation
#include <PPCTargetMachine.h>


Public Member Functions | |
| PPCTargetMachine (const Module &M, const std::string &FS, bool is64Bit) | |
| virtual const PPCInstrInfo * | getInstrInfo () const |
| virtual const PPCFrameInfo * | getFrameInfo () const |
| virtual PPCJITInfo * | getJITInfo () |
| virtual PPCTargetLowering * | getTargetLowering () const |
| virtual const PPCRegisterInfo * | getRegisterInfo () const |
| virtual const TargetData * | getTargetData () const |
| virtual const PPCSubtarget * | getSubtargetImpl () const |
| virtual const InstrItineraryData | getInstrItineraryData () const |
| virtual const PPCMachOWriterInfo * | getMachOWriterInfo () const |
| virtual bool | addInstSelector (PassManagerBase &PM, bool Fast) |
| Target-Independent Code Generator Pass Configuration Options. | |
| virtual bool | addPreEmitPass (PassManagerBase &PM, bool Fast) |
| virtual bool | addAssemblyEmitter (PassManagerBase &PM, bool Fast, raw_ostream &Out) |
| virtual bool | addCodeEmitter (PassManagerBase &PM, bool Fast, bool DumpAsm, MachineCodeEmitter &MCE) |
| virtual bool | addSimpleCodeEmitter (PassManagerBase &PM, bool Fast, bool DumpAsm, MachineCodeEmitter &MCE) |
| virtual bool | getEnableTailMergeDefault () const |
Static Public Member Functions | |
| static void | registerAsmPrinter (AsmPrinterCtorFn F) |
Protected Types | |
| typedef FunctionPass *(* | AsmPrinterCtorFn )(raw_ostream &o, PPCTargetMachine &tm) |
Protected Member Functions | |
| virtual const TargetAsmInfo * | createTargetAsmInfo () const |
Static Protected Attributes | |
| static AsmPrinterCtorFn | AsmPrinterCtor = 0 |
Definition at line 32 of file PPCTargetMachine.h.
typedef FunctionPass*(* llvm::PPCTargetMachine::AsmPrinterCtorFn)(raw_ostream &o, PPCTargetMachine &tm) [protected] |
| PPCTargetMachine::PPCTargetMachine | ( | const Module & | M, | |
| const std::string & | FS, | |||
| bool | is64Bit | |||
| ) |
Definition at line 99 of file PPCTargetMachine.cpp.
References DataLayout, llvm::Reloc::Default, llvm::Reloc::DynamicNoPIC, llvm::TargetMachine::getRelocationModel(), llvm::PPCSubtarget::isDarwin(), llvm::TargetMachine::setRelocationModel(), llvm::Reloc::Static, and Subtarget.
| const TargetAsmInfo * PPCTargetMachine::createTargetAsmInfo | ( | ) | const [protected, virtual] |
createTargetAsmInfo - Create a new instance of target specific asm information.
Reimplemented from llvm::TargetMachine.
Definition at line 41 of file PPCTargetMachine.cpp.
References llvm::PPCSubtarget::isDarwin().
| virtual const PPCInstrInfo* llvm::PPCTargetMachine::getInstrInfo | ( | ) | const [inline, virtual] |
| virtual const PPCFrameInfo* llvm::PPCTargetMachine::getFrameInfo | ( | ) | const [inline, virtual] |
| virtual PPCJITInfo* llvm::PPCTargetMachine::getJITInfo | ( | ) | [inline, virtual] |
getJITInfo - If this target supports a JIT, return information for it, otherwise return null.
Reimplemented from llvm::TargetMachine.
Definition at line 56 of file PPCTargetMachine.h.
| virtual PPCTargetLowering* llvm::PPCTargetMachine::getTargetLowering | ( | ) | const [inline, virtual] |
| virtual const PPCRegisterInfo* llvm::PPCTargetMachine::getRegisterInfo | ( | ) | const [inline, virtual] |
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 60 of file PPCTargetMachine.h.
References llvm::PPCInstrInfo::getRegisterInfo().
| virtual const TargetData* llvm::PPCTargetMachine::getTargetData | ( | ) | const [inline, virtual] |
| virtual const PPCSubtarget* llvm::PPCTargetMachine::getSubtargetImpl | ( | ) | const [inline, virtual] |
getSubtargetImpl - virtual method implemented by subclasses that returns a reference to that target's TargetSubtarget-derived member variable.
Reimplemented from llvm::TargetMachine.
Definition at line 65 of file PPCTargetMachine.h.
Referenced by llvm::PPCJITInfo::emitFunctionStub(), llvm::PPCInstrInfo::getPointerRegClass(), and llvm::PPCLinuxTargetAsmInfo::PPCLinuxTargetAsmInfo().
| virtual const InstrItineraryData llvm::PPCTargetMachine::getInstrItineraryData | ( | ) | const [inline, virtual] |
getInstrItineraryData - Returns instruction itinerary data for the target or specific subtarget.
Reimplemented from llvm::TargetMachine.
Definition at line 66 of file PPCTargetMachine.h.
| virtual const PPCMachOWriterInfo* llvm::PPCTargetMachine::getMachOWriterInfo | ( | ) | const [inline, virtual] |
getMachOWriterInfo - If this target supports a Mach-O writer, return information for it, otherwise return null.
Reimplemented from llvm::TargetMachine.
Definition at line 69 of file PPCTargetMachine.h.
| static void llvm::PPCTargetMachine::registerAsmPrinter | ( | AsmPrinterCtorFn | F | ) | [inline, static] |
| bool PPCTargetMachine::addInstSelector | ( | PassManagerBase & | , | |
| bool | ||||
| ) | [virtual] |
Target-Independent Code Generator Pass Configuration Options.
addInstSelector - This method should add any "last minute" LLVM->LLVM passes, then install an instruction selector pass, which converts from LLVM code to machine instructions.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 132 of file PPCTargetMachine.cpp.
References llvm::PassManagerBase::add(), and llvm::createPPCISelDag().
| bool PPCTargetMachine::addPreEmitPass | ( | PassManagerBase & | , | |
| bool | ||||
| ) | [virtual] |
addPreEmitPass - This pass may be implemented by targets that want to run passes immediately before machine code is emitted. This should return true if -print-machineinstrs should print out the code after the passes.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 138 of file PPCTargetMachine.cpp.
References llvm::PassManagerBase::add(), and llvm::createPPCBranchSelectionPass().
| bool PPCTargetMachine::addAssemblyEmitter | ( | PassManagerBase & | , | |
| bool | , | |||
| raw_ostream & | ||||
| ) | [virtual] |
addAssemblyEmitter - This pass should be overridden by the target to add the asmprinter, if asm emission is supported. If this is not supported, 'true' should be returned.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 145 of file PPCTargetMachine.cpp.
References llvm::PassManagerBase::add(), and AsmPrinterCtor.
| bool PPCTargetMachine::addCodeEmitter | ( | PassManagerBase & | , | |
| bool | , | |||
| bool | , | |||
| MachineCodeEmitter & | ||||
| ) | [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. If DumpAsm is true, the generated assembly is printed to cerr.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 154 of file PPCTargetMachine.cpp.
References llvm::PassManagerBase::add(), AsmPrinterCtor, llvm::createPPCCodeEmitterPass(), llvm::DisableJumpTables, llvm::errs(), llvm::PPCSubtarget::isPPC64(), llvm::Reloc::PIC_, llvm::PPCSubtarget::SetJITMode(), llvm::TargetMachine::setRelocationModel(), and llvm::Reloc::Static.
| bool PPCTargetMachine::addSimpleCodeEmitter | ( | PassManagerBase & | , | |
| bool | , | |||
| bool | , | |||
| MachineCodeEmitter & | ||||
| ) | [virtual] |
addSimpleCodeEmitter - This pass should be overridden by the target to add a code emitter (without setting flags), if supported. If this is not supported, 'true' should be returned. If DumpAsm is true, the generated assembly is printed to cerr.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 185 of file PPCTargetMachine.cpp.
References llvm::PassManagerBase::add(), AsmPrinterCtor, llvm::createPPCCodeEmitterPass(), and llvm::errs().
| bool PPCTargetMachine::getEnableTailMergeDefault | ( | ) | const [virtual] |
Override this for PowerPC. Tail merging happily breaks up instruction issue groups, which typically degrades performance.
Reimplemented from llvm::LLVMTargetMachine.
Definition at line 116 of file PPCTargetMachine.cpp.
PPCTargetMachine::AsmPrinterCtorFn PPCTargetMachine::AsmPrinterCtor = 0 [static, protected] |
Definition at line 49 of file PPCTargetMachine.h.
Referenced by addAssemblyEmitter(), addCodeEmitter(), addSimpleCodeEmitter(), and registerAsmPrinter().
This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.