LLVM API Documentation
TargetRegistry - Generic interface to target specific features. More...
#include <TargetRegistry.h>
TargetRegistry - Generic interface to target specific features.
Definition at line 496 of file TargetRegistry.h.
| TargetRegistry::iterator TargetRegistry::begin | ( | ) | [static] |
Definition at line 22 of file TargetRegistry.cpp.
References FirstTarget.
Referenced by LLVMGetFirstTarget(), lookupTarget(), printRegisteredTargetsForVersion(), and llvm::EngineBuilder::selectTarget().
| static iterator llvm::TargetRegistry::end | ( | ) | [inline, static] |
Definition at line 543 of file TargetRegistry.h.
Referenced by lookupTarget(), and printRegisteredTargetsForVersion().
| const Target * TargetRegistry::getClosestTargetForJIT | ( | std::string & | Error | ) | [static] |
getClosestTargetForJIT - Pick the best target that is compatible with the current host. If no close target can be found, this returns null and sets the Error string to a reason.
Maintained for compatibility through 2.6.
Definition at line 127 of file TargetRegistry.cpp.
References llvm::sys::getDefaultTargetTriple(), llvm::Target::hasJIT(), and lookupTarget().
| const Target * TargetRegistry::lookupTarget | ( | const std::string & | Triple, |
| std::string & | Error | ||
| ) | [static] |
lookupTarget - Lookup a target based on a target triple.
| Triple | - The triple to use for finding a target. |
| Error | - On failure, an error string describing why no target was found. |
Definition at line 67 of file TargetRegistry.cpp.
References begin(), and end().
Referenced by getClosestTargetForJIT(), LLVMCreateDisasmCPU(), lookupTarget(), and llvm::EngineBuilder::selectTarget().
| const Target * TargetRegistry::lookupTarget | ( | const std::string & | ArchName, |
| Triple & | TheTriple, | ||
| std::string & | Error | ||
| ) | [static] |
lookupTarget - Lookup a target based on an architecture name and a target triple. If the architecture name is non-empty, then the lookup is done by architecture. Otherwise, the target triple is used.
| ArchName | - The architecture to use for finding a target. |
| TheTriple | - The triple to use for finding a target. The triple is updated with canonical architecture name if a lookup by architecture is done. |
| Error | - On failure, an error string describing why no target was found. |
Definition at line 26 of file TargetRegistry.cpp.
References begin(), end(), llvm::Triple::getArchTypeForLLVMName(), llvm::Triple::getTriple(), lookupTarget(), llvm::Triple::setArch(), and llvm::Triple::UnknownArch.
| void TargetRegistry::printRegisteredTargetsForVersion | ( | ) | [static] |
printRegisteredTargetsForVersion - Print the registered targets appropriately for inclusion in a tool's version output.
Definition at line 143 of file TargetRegistry.cpp.
References llvm::array_pod_sort(), begin(), end(), I, llvm::outs(), and TargetArraySortFn().
| static void llvm::TargetRegistry::RegisterAsmPrinter | ( | Target & | T, |
| Target::AsmPrinterCtorTy | Fn | ||
| ) | [inline, static] |
RegisterAsmPrinter - Register an AsmPrinter implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an AsmPrinter for the target. |
Definition at line 739 of file TargetRegistry.h.
Referenced by LLVMInitializePowerPCAsmPrinter(), and LLVMInitializeR600AsmPrinter().
| static void llvm::TargetRegistry::RegisterAsmStreamer | ( | Target & | T, |
| Target::AsmStreamerCtorTy | Fn | ||
| ) | [inline, static] |
RegisterAsmStreamer - Register an assembly MCStreamer implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an MCStreamer for the target. |
Definition at line 814 of file TargetRegistry.h.
References llvm::createAsmStreamer().
| static void llvm::TargetRegistry::RegisterMCAsmBackend | ( | Target & | T, |
| Target::MCAsmBackendCtorTy | Fn | ||
| ) | [inline, static] |
RegisterMCAsmBackend - Register a MCAsmBackend implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an AsmBackend for the target. |
Definition at line 711 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeMBlazeTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeR600TargetMC(), LLVMInitializeSystemZTargetMC(), and LLVMInitializeX86TargetMC().
| static void llvm::TargetRegistry::RegisterMCAsmInfo | ( | Target & | T, |
| Target::MCAsmInfoCtorFnTy | Fn | ||
| ) | [inline, static] |
RegisterMCAsmInfo - Register a MCAsmInfo implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
Definition at line 609 of file TargetRegistry.h.
Referenced by LLVMInitializeSystemZTargetMC(), and llvm::RegisterMCAsmInfoFn::RegisterMCAsmInfoFn().
| static void llvm::TargetRegistry::RegisterMCAsmParser | ( | Target & | T, |
| Target::MCAsmParserCtorTy | Fn | ||
| ) | [inline, static] |
RegisterMCAsmParser - Register a MCTargetAsmParser implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an MCTargetAsmParser for the target. |
Definition at line 725 of file TargetRegistry.h.
| static void llvm::TargetRegistry::RegisterMCCodeEmitter | ( | Target & | T, |
| Target::MCCodeEmitterCtorTy | Fn | ||
| ) | [inline, static] |
RegisterMCCodeEmitter - Register a MCCodeEmitter implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an MCCodeEmitter for the target. |
Definition at line 784 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeMBlazeTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeR600TargetMC(), LLVMInitializeSystemZTargetMC(), and LLVMInitializeX86TargetMC().
| static void llvm::TargetRegistry::RegisterMCCodeGenInfo | ( | Target & | T, |
| Target::MCCodeGenInfoCtorFnTy | Fn | ||
| ) | [inline, static] |
RegisterMCCodeGenInfo - Register a MCCodeGenInfo implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct a MCCodeGenInfo for the target. |
Definition at line 624 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeMBlazeTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeR600TargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeXCoreTargetMC(), and llvm::RegisterMCCodeGenInfoFn::RegisterMCCodeGenInfoFn().
| static void llvm::TargetRegistry::RegisterMCDisassembler | ( | Target & | T, |
| Target::MCDisassemblerCtorTy | Fn | ||
| ) | [inline, static] |
RegisterMCDisassembler - Register a MCDisassembler implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an MCDisassembler for the target. |
Definition at line 754 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64Disassembler(), LLVMInitializeARMDisassembler(), LLVMInitializeMBlazeDisassembler(), LLVMInitializeMipsDisassembler(), LLVMInitializeSystemZDisassembler(), LLVMInitializeX86Disassembler(), and LLVMInitializeXCoreDisassembler().
| static void llvm::TargetRegistry::RegisterMCInstPrinter | ( | Target & | T, |
| Target::MCInstPrinterCtorTy | Fn | ||
| ) | [inline, static] |
RegisterMCInstPrinter - Register a MCInstPrinter implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an MCInstPrinter for the target. |
Definition at line 769 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeHexagonAsmPrinter(), LLVMInitializeMBlazeTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeR600TargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeX86TargetMC(), and LLVMInitializeXCoreTargetMC().
| static void llvm::TargetRegistry::RegisterMCInstrAnalysis | ( | Target & | T, |
| Target::MCInstrAnalysisCtorFnTy | Fn | ||
| ) | [inline, static] |
RegisterMCInstrAnalysis - Register a MCInstrAnalysis implementation for the given target.
Definition at line 648 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeX86TargetMC(), and llvm::RegisterMCInstrAnalysisFn::RegisterMCInstrAnalysisFn().
| static void llvm::TargetRegistry::RegisterMCInstrInfo | ( | Target & | T, |
| Target::MCInstrInfoCtorFnTy | Fn | ||
| ) | [inline, static] |
RegisterMCInstrInfo - Register a MCInstrInfo implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct a MCInstrInfo for the target. |
Definition at line 640 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeMBlazeTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeR600TargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXCoreTargetMC(), and llvm::RegisterMCInstrInfoFn::RegisterMCInstrInfoFn().
| static void llvm::TargetRegistry::RegisterMCObjectStreamer | ( | Target & | T, |
| Target::MCObjectStreamerCtorTy | Fn | ||
| ) | [inline, static] |
RegisterMCObjectStreamer - Register a object code MCStreamer implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an MCStreamer for the target. |
Definition at line 799 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeMBlazeTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeR600TargetMC(), LLVMInitializeSystemZTargetMC(), and LLVMInitializeX86TargetMC().
| static void llvm::TargetRegistry::RegisterMCRegInfo | ( | Target & | T, |
| Target::MCRegInfoCtorFnTy | Fn | ||
| ) | [inline, static] |
RegisterMCRegInfo - Register a MCRegisterInfo implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct a MCRegisterInfo for the target. |
Definition at line 664 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeMBlazeTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeR600TargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXCoreTargetMC(), and llvm::RegisterMCRegInfoFn::RegisterMCRegInfoFn().
| static void llvm::TargetRegistry::RegisterMCRelocationInfo | ( | Target & | T, |
| Target::MCRelocationInfoCtorTy | Fn | ||
| ) | [inline, static] |
RegisterMCRelocationInfo - Register an MCRelocationInfo implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an MCRelocationInfo for the target. |
Definition at line 828 of file TargetRegistry.h.
References llvm::createMCRelocationInfo().
Referenced by LLVMInitializeARMTargetMC(), and LLVMInitializeX86TargetMC().
| static void llvm::TargetRegistry::RegisterMCSubtargetInfo | ( | Target & | T, |
| Target::MCSubtargetInfoCtorFnTy | Fn | ||
| ) | [inline, static] |
RegisterMCSubtargetInfo - Register a MCSubtargetInfo implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct a MCSubtargetInfo for the target. |
Definition at line 679 of file TargetRegistry.h.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeMBlazeTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeR600TargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXCoreTargetMC(), and llvm::RegisterMCSubtargetInfoFn::RegisterMCSubtargetInfoFn().
| static void llvm::TargetRegistry::RegisterMCSymbolizer | ( | Target & | T, |
| Target::MCSymbolizerCtorTy | Fn | ||
| ) | [inline, static] |
RegisterMCSymbolizer - Register an MCSymbolizer implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct an MCSymbolizer for the target. |
Definition at line 843 of file TargetRegistry.h.
References llvm::createMCSymbolizer().
| void TargetRegistry::RegisterTarget | ( | Target & | T, |
| const char * | Name, | ||
| const char * | ShortDesc, | ||
| Target::TripleMatchQualityFnTy | TQualityFn, | ||
| bool | HasJIT = false |
||
| ) | [static] |
RegisterTarget - Register the given target. Attempts to register a target which has already been registered will be ignored.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Name | - The target name. This should be a static string. |
| ShortDesc | - A short target description. This should be a static string. |
| TQualityFn | - The triple match quality computation function for this target. |
| HasJIT | - Whether the target supports JIT code generation. |
Definition at line 104 of file TargetRegistry.cpp.
References FirstTarget, and T.
Referenced by LLVMInitializeCppBackendTargetInfo().
| static void llvm::TargetRegistry::RegisterTargetMachine | ( | Target & | T, |
| Target::TargetMachineCtorTy | Fn | ||
| ) | [inline, static] |
RegisterTargetMachine - Register a TargetMachine implementation for the given target.
Clients are responsible for ensuring that registration doesn't occur while another thread is attempting to access the registry. Typically this is done by initializing all targets at program startup.
| T | - The target being registered. |
| Fn | - A function to construct a TargetMachine for the target. |
Definition at line 695 of file TargetRegistry.h.