LLVM: llvm::TargetRegistry Struct Reference (original) (raw)
TargetRegistry - Generic interface to target specific features. More...
#include "[llvm/MC/TargetRegistry.h](TargetRegistry%5F8h%5Fsource.html)"
| Public Member Functions |
|---|
TargetRegistry - Generic interface to target specific features.
Definition at line 680 of file TargetRegistry.h.
| llvm::TargetRegistry::TargetRegistry ( ) | delete |
|---|
◆ lookupTarget() [1/3]
◆ lookupTarget() [2/3]
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.
Parameters
| 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 105 of file TargetRegistry.cpp.
References llvm::StringRef::empty(), llvm::find_if(), llvm::Triple::getArchTypeForLLVMName(), llvm::Triple::getTriple(), I, lookupTarget(), llvm::Triple::setArch(), T, targets(), and llvm::Triple::UnknownArch.
◆ lookupTarget() [3/3]
lookupTarget - Lookup a target based on a target triple.
Parameters
| TripleStr | - The triple to use for finding a target. |
|---|---|
| Error | - On failure, an error string describing why no target was found. |
Definition at line 742 of file TargetRegistry.h.
References lookupTarget().
Referenced by llvm::ThinLTOCodeGeneratorImpl::TargetMachineBuilder::create(), createTargetMachine(), llvm::orc::JITTargetMachineBuilder::createTargetMachine(), llvm::codegen::createTargetMachineForTriple(), llvm::object::ELFObjectFileBase::getPltEntries(), llvm::dwarf_linker::classic::DwarfStreamer::init(), llvm::dwarf_linker::parallel::DwarfEmitterImpl::init(), initAndLookupTarget(), initializeRecordStreamer(), LLVMCreateDisasmCPUFeatures(), LLVMGetTargetFromTriple(), llvm::logicalview::LVBinaryReader::loadGenericTargetInfo(), lookupTarget(), lookupTarget(), llvm::EngineBuilder::selectTarget(), llvm::SPIRVTranslate(), and llvm::BitcodeWriter::writeSymtab().
◆ printRegisteredTargetsForVersion()
| void TargetRegistry::printRegisteredTargetsForVersion ( raw_ostream & OS) | static |
|---|
◆ RegisterAsmPrinter()
◆ RegisterAsmStreamer()
◆ RegisterAsmTargetStreamer()
Definition at line 986 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARCTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSPIRVTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXCoreTargetMC(), and LLVMInitializeXtensaTargetMC().
◆ RegisterCOFFStreamer()
◆ RegisterCustomBehaviour()
RegisterCustomBehaviour - Register a CustomBehaviour 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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct a CustomBehaviour for the target. |
Definition at line 1033 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAMDGPUTargetMCA().
◆ RegisterELFStreamer()
Definition at line 969 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeBPFTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLanaiTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), and LLVMInitializeX86TargetMC().
◆ RegisterInstrPostProcess()
RegisterInstrPostProcess - Register an InstrPostProcess 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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct an InstrPostProcess for the target. |
Definition at line 1047 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAMDGPUTargetMCA(), and LLVMInitializeX86TargetMCA().
◆ RegisterInstrumentManager()
RegisterInstrumentManager - Register an InstrumentManager 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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct an InstrumentManager for the target. |
Definition at line 1062 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeRISCVTargetMCA().
◆ RegisterMachOStreamer()
◆ RegisterMCAsmBackend()
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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct an AsmBackend for the target. |
Definition at line 891 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeBPFTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeDirectXTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLanaiTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeM68kTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSPIRVTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXtensaTargetMC(), and llvm::RegisterMCAsmBackend< MCAsmBackendImpl >::RegisterMCAsmBackend().
◆ RegisterMCAsmInfo()
◆ RegisterMCAsmParser()
◆ RegisterMCCodeEmitter()
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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct an MCCodeEmitter for the target. |
Definition at line 957 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeBPFTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeDirectXTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLanaiTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeM68kTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSPIRVTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXtensaTargetMC(), and llvm::RegisterMCCodeEmitter< MCCodeEmitterImpl >::RegisterMCCodeEmitter().
◆ RegisterMCDisassembler()
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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct an MCDisassembler for the target. |
Definition at line 930 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64Disassembler(), LLVMInitializeAMDGPUDisassembler(), LLVMInitializeARCDisassembler(), LLVMInitializeARMDisassembler(), LLVMInitializeAVRDisassembler(), LLVMInitializeBPFDisassembler(), LLVMInitializeCSKYDisassembler(), LLVMInitializeHexagonDisassembler(), LLVMInitializeLanaiDisassembler(), LLVMInitializeLoongArchDisassembler(), LLVMInitializeM68kDisassembler(), LLVMInitializeMipsDisassembler(), LLVMInitializeMSP430Disassembler(), LLVMInitializePowerPCDisassembler(), LLVMInitializeRISCVDisassembler(), LLVMInitializeSparcDisassembler(), LLVMInitializeSystemZDisassembler(), LLVMInitializeVEDisassembler(), LLVMInitializeWebAssemblyDisassembler(), LLVMInitializeX86Disassembler(), LLVMInitializeXCoreDisassembler(), and LLVMInitializeXtensaDisassembler().
◆ RegisterMCInstPrinter()
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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct an MCInstPrinter for the target. |
Definition at line 944 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARCTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeBPFTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeDirectXTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLanaiTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeM68kTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSPIRVTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXCoreTargetMC(), and LLVMInitializeXtensaTargetMC().
◆ RegisterMCInstrAnalysis()
RegisterMCInstrAnalysis - Register a MCInstrAnalysis implementation for the given target.
Definition at line 837 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeBPFTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLanaiTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSPIRVTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeX86TargetMC(), llvm::RegisterMCInstrAnalysis< MCInstrAnalysisImpl >::RegisterMCInstrAnalysis(), and llvm::RegisterMCInstrAnalysisFn::RegisterMCInstrAnalysisFn().
◆ RegisterMCInstrInfo()
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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct a MCInstrInfo for the target. |
Definition at line 831 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARCTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeBPFTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeDirectXTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLanaiTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeM68kTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSPIRVTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXCoreTargetMC(), LLVMInitializeXtensaTargetMC(), llvm::RegisterMCInstrInfo< MCInstrInfoImpl >::RegisterMCInstrInfo(), and llvm::RegisterMCInstrInfoFn::RegisterMCInstrInfoFn().
◆ RegisterMCObjectFileInfo()
◆ RegisterMCRegInfo()
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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct a MCRegisterInfo for the target. |
Definition at line 851 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARCTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeBPFTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeDirectXTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLanaiTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeM68kTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSPIRVTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXCoreTargetMC(), LLVMInitializeXtensaTargetMC(), llvm::RegisterMCRegInfo< MCRegisterInfoImpl >::RegisterMCRegInfo(), and llvm::RegisterMCRegInfoFn::RegisterMCRegInfoFn().
◆ RegisterMCRelocationInfo()
◆ RegisterMCSubtargetInfo()
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.
Parameters
| T | - The target being registered. |
|---|---|
| Fn | - A function to construct a MCSubtargetInfo for the target. |
Definition at line 864 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARCTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeBPFTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeDirectXTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLanaiTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeM68kTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSPIRVTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), LLVMInitializeXCoreTargetMC(), LLVMInitializeXtensaTargetMC(), llvm::RegisterMCSubtargetInfo< MCSubtargetInfoImpl >::RegisterMCSubtargetInfo(), and llvm::RegisterMCSubtargetInfoFn::RegisterMCSubtargetInfoFn().
◆ RegisterMCSymbolizer()
◆ RegisterNullTargetStreamer()
Definition at line 977 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeNVPTXTargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), and LLVMInitializeXCoreTargetMC().
◆ RegisterObjectTargetStreamer()
Definition at line 992 of file TargetRegistry.h.
References T.
Referenced by LLVMInitializeAArch64TargetMC(), LLVMInitializeAMDGPUTargetMC(), LLVMInitializeARMTargetMC(), LLVMInitializeAVRTargetMC(), LLVMInitializeCSKYTargetMC(), LLVMInitializeHexagonTargetMC(), LLVMInitializeLoongArchTargetMC(), LLVMInitializeMipsTargetMC(), LLVMInitializeMSP430TargetMC(), LLVMInitializePowerPCTargetMC(), LLVMInitializeRISCVTargetMC(), LLVMInitializeSparcTargetMC(), LLVMInitializeSystemZTargetMC(), LLVMInitializeVETargetMC(), LLVMInitializeWebAssemblyTargetMC(), LLVMInitializeX86TargetMC(), and LLVMInitializeXtensaTargetMC().
◆ RegisterTarget()
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.
Parameters
| 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. |
| BackendName | - The name of the backend. This should be a static string that is the same for all targets that share a backend implementation and must match the name used in the 'def X : Target ...' in TableGen. |
| ArchMatchFn | - The arch match checking function for this target. |
| HasJIT | - Whether the target supports JIT code generation. |
Definition at line 169 of file TargetRegistry.cpp.
References assert(), llvm::FirstTarget, and T.
Referenced by LLVMInitializeAArch64TargetInfo(), LLVMInitializeBPFTargetInfo(), and llvm::RegisterTarget< TargetArchType, HasJIT >::RegisterTarget().
◆ RegisterTargetMachine()
◆ RegisterXCOFFStreamer()
◆ targets()
The documentation for this struct was generated from the following files:
- include/llvm/MC/TargetRegistry.h
- lib/MC/TargetRegistry.cpp