LLVM API Documentation
#include <TargetRegistry.h>
Friends | |
struct | TargetRegistry |
Target - Wrapper for Target specific information.
For registration purposes, this is a POD type so that targets can be registered without the use of static constructors.
Targets should implement a single global instance of this class (which will be zero initialized), and pass that instance to the TargetRegistry as part of their initialization.
Definition at line 78 of file TargetRegistry.h.
typedef AsmPrinter*(* llvm::Target::AsmPrinterCtorTy)(TargetMachine &TM, MCStreamer &Streamer) |
Definition at line 104 of file TargetRegistry.h.
typedef MCStreamer*(* llvm::Target::AsmStreamerCtorTy)(MCContext &Ctx, formatted_raw_ostream &OS, bool isVerboseAsm, bool useLoc, bool useCFI, bool useDwarfDirectory, MCInstPrinter *InstPrint, MCCodeEmitter *CE, MCAsmBackend *TAB, bool ShowInst) |
Definition at line 133 of file TargetRegistry.h.
typedef MCAsmBackend*(* llvm::Target::MCAsmBackendCtorTy)(const Target &T, const MCRegisterInfo &MRI, StringRef TT, StringRef CPU) |
Definition at line 106 of file TargetRegistry.h.
typedef MCAsmInfo*(* llvm::Target::MCAsmInfoCtorFnTy)(const MCRegisterInfo &MRI, StringRef TT) |
Definition at line 84 of file TargetRegistry.h.
typedef MCTargetAsmParser*(* llvm::Target::MCAsmParserCtorTy)(MCSubtargetInfo &STI, MCAsmParser &P, const MCInstrInfo &MII) |
Definition at line 110 of file TargetRegistry.h.
typedef MCCodeEmitter*(* llvm::Target::MCCodeEmitterCtorTy)(const MCInstrInfo &II, const MCRegisterInfo &MRI, const MCSubtargetInfo &STI, MCContext &Ctx) |
Definition at line 121 of file TargetRegistry.h.
typedef MCCodeGenInfo*(* llvm::Target::MCCodeGenInfoCtorFnTy)(StringRef TT, Reloc::Model RM, CodeModel::Model CM, CodeGenOpt::Level OL) |
Definition at line 86 of file TargetRegistry.h.
typedef MCDisassembler*(* llvm::Target::MCDisassemblerCtorTy)(const Target &T, const MCSubtargetInfo &STI) |
Definition at line 113 of file TargetRegistry.h.
typedef MCInstPrinter*(* llvm::Target::MCInstPrinterCtorTy)(const Target &T, unsigned SyntaxVariant, const MCAsmInfo &MAI, const MCInstrInfo &MII, const MCRegisterInfo &MRI, const MCSubtargetInfo &STI) |
Definition at line 115 of file TargetRegistry.h.
typedef MCInstrAnalysis*(* llvm::Target::MCInstrAnalysisCtorFnTy)(const MCInstrInfo *Info) |
Definition at line 91 of file TargetRegistry.h.
typedef MCInstrInfo*(* llvm::Target::MCInstrInfoCtorFnTy)(void) |
Definition at line 90 of file TargetRegistry.h.
typedef MCStreamer*(* llvm::Target::MCObjectStreamerCtorTy)(const Target &T, StringRef TT, MCContext &Ctx, MCAsmBackend &TAB, raw_ostream &_OS, MCCodeEmitter *_Emitter, bool RelaxAll, bool NoExecStack) |
Definition at line 125 of file TargetRegistry.h.
typedef MCRegisterInfo*(* llvm::Target::MCRegInfoCtorFnTy)(StringRef TT) |
Definition at line 92 of file TargetRegistry.h.
typedef MCRelocationInfo*(* llvm::Target::MCRelocationInfoCtorTy)(StringRef TT, MCContext &Ctx) |
Definition at line 143 of file TargetRegistry.h.
typedef MCSubtargetInfo*(* llvm::Target::MCSubtargetInfoCtorFnTy)(StringRef TT, StringRef CPU, StringRef Features) |
Definition at line 93 of file TargetRegistry.h.
typedef MCSymbolizer*(* llvm::Target::MCSymbolizerCtorTy)(StringRef TT, LLVMOpInfoCallback GetOpInfo, LLVMSymbolLookupCallback SymbolLookUp, void *DisInfo, MCContext *Ctx, MCRelocationInfo *RelInfo) |
Definition at line 145 of file TargetRegistry.h.
typedef TargetMachine*(* llvm::Target::TargetMachineCtorTy)(const Target &T, StringRef TT, StringRef CPU, StringRef Features, const TargetOptions &Options, Reloc::Model RM, CodeModel::Model CM, CodeGenOpt::Level OL) |
Definition at line 96 of file TargetRegistry.h.
typedef unsigned(* llvm::Target::TripleMatchQualityFnTy)(const std::string &TT) |
Definition at line 82 of file TargetRegistry.h.
|
inline |
Definition at line 239 of file TargetRegistry.h.
|
inline |
createAsmPrinter - Create a target specific assembly printer pass. This takes ownership of the MCStreamer object.
Definition at line 378 of file TargetRegistry.h.
Referenced by llvm::LLVMTargetMachine::addPassesToEmitFile(), and llvm::LLVMTargetMachine::addPassesToEmitMC().
|
inline |
createAsmStreamer - Create a target specific MCStreamer.
Definition at line 433 of file TargetRegistry.h.
References llvm::createAsmStreamer().
Referenced by llvm::LLVMTargetMachine::addPassesToEmitFile().
|
inline |
createMCAsmBackend - Create a target specific assembly parser.
Triple | The target triple string. |
Definition at line 357 of file TargetRegistry.h.
Referenced by llvm::LLVMTargetMachine::addPassesToEmitFile(), and llvm::LLVMTargetMachine::addPassesToEmitMC().
|
inline |
createMCAsmInfo - Create a MCAsmInfo implementation for the specified target triple.
Triple | This argument is used to determine the target machine feature set; it should always be provided. Generally this should be either the target triple from the module, or the target triple of the host if that does not exist. |
Definition at line 279 of file TargetRegistry.h.
Referenced by llvm::LLVMTargetMachine::initAsmInfo(), and LLVMCreateDisasmCPU().
|
inline |
createMCAsmParser - Create a target specific assembly parser.
Parser | The target independent parser implementation to use for parsing and lexing. |
Definition at line 368 of file TargetRegistry.h.
|
inline |
createMCCodeEmitter - Create a target specific code emitter.
Definition at line 402 of file TargetRegistry.h.
Referenced by llvm::LLVMTargetMachine::addPassesToEmitFile(), and llvm::LLVMTargetMachine::addPassesToEmitMC().
|
inline |
createMCCodeGenInfo - Create a MCCodeGenInfo implementation.
Definition at line 288 of file TargetRegistry.h.
Referenced by llvm::LLVMTargetMachine::LLVMTargetMachine().
|
inline |
Definition at line 384 of file TargetRegistry.h.
Referenced by LLVMCreateDisasmCPU().
|
inline |
Definition at line 390 of file TargetRegistry.h.
Referenced by llvm::LLVMTargetMachine::addPassesToEmitFile(), LLVMCreateDisasmCPU(), and LLVMSetDisasmOptions().
|
inline |
createMCInstrAnalysis - Create a MCInstrAnalysis implementation.
Definition at line 306 of file TargetRegistry.h.
|
inline |
createMCInstrInfo - Create a MCInstrInfo implementation.
Definition at line 298 of file TargetRegistry.h.
Referenced by createX86_32Disassembler(), createX86_64Disassembler(), and LLVMCreateDisasmCPU().
|
inline |
createMCObjectStreamer - Create a target specific MCStreamer.
TT | The target triple. |
Ctx | The target context. |
TAB | The target assembler backend object. Takes ownership. |
_OS | The stream object. |
_Emitter | The target independent assembler object.Takes ownership. |
RelaxAll | Relax all fixups? |
NoExecStack | Mark file as not needing a executable stack. |
Definition at line 420 of file TargetRegistry.h.
|
inline |
createMCRegInfo - Create a MCRegisterInfo implementation.
Definition at line 314 of file TargetRegistry.h.
Referenced by createAArch64Disassembler(), createMips64Disassembler(), createMips64elDisassembler(), createMipsDisassembler(), createMipselDisassembler(), createXCoreDisassembler(), and LLVMCreateDisasmCPU().
|
inline |
createMCRelocationInfo - Create a target specific MCRelocationInfo.
TT | The target triple. |
Ctx | The target context. |
Definition at line 457 of file TargetRegistry.h.
References llvm::createMCRelocationInfo().
Referenced by LLVMCreateDisasmCPU().
|
inline |
createMCSubtargetInfo - Create a MCSubtargetInfo implementation.
Triple | This argument is used to determine the target machine feature set; it should always be provided. Generally this should be either the target triple from the module, or the target triple of the host if that does not exist. |
CPU | This specifies the name of the target CPU. |
Features | This specifies the string representation of the additional target features. |
Definition at line 329 of file TargetRegistry.h.
Referenced by LLVMCreateDisasmCPU().
|
inline |
createMCSymbolizer - Create a target specific MCSymbolizer.
TT | The target triple. |
GetOpInfo | The function to get the symbolic information for operands. |
SymbolLookUp | The function to lookup a symbol name. |
DisInfo | The pointer to the block of symbolic information for above call back. |
Ctx | The target context. |
RelInfo | The relocation information for this target. Takes ownership. |
Definition at line 474 of file TargetRegistry.h.
References llvm::createMCSymbolizer().
Referenced by LLVMCreateDisasmCPU().
|
inline |
createTargetMachine - Create a target specific machine implementation for the specified Triple
.
Triple | This argument is used to determine the target machine feature set; it should always be provided. Generally this should be either the target triple from the module, or the target triple of the host if that does not exist. |
Definition at line 343 of file TargetRegistry.h.
References llvm::NVPTX::PTXCvtMode::RM.
Referenced by llvm::EngineBuilder::selectTarget().
|
inline |
getName - Get the target name.
Definition at line 250 of file TargetRegistry.h.
|
inline |
Definition at line 247 of file TargetRegistry.h.
Referenced by llvm::TargetRegistry::iterator::operator++().
|
inline |
getShortDescription - Get a short description of the target.
Definition at line 253 of file TargetRegistry.h.
|
inline |
hasJIT - Check if this targets supports the just-in-time compilation.
Definition at line 260 of file TargetRegistry.h.
Referenced by llvm::EngineBuilder::create(), and llvm::TargetRegistry::getClosestTargetForJIT().
|
inline |
hasMCAsmBackend - Check if this target supports .o generation.
Definition at line 266 of file TargetRegistry.h.
|
inline |
hasTargetMachine - Check if this target supports code generation.
Definition at line 263 of file TargetRegistry.h.
|
friend |
Definition at line 80 of file TargetRegistry.h.