struct TargetRegistry
Declaration
struct TargetRegistry { /* full declaration omitted */ };
Description
TargetRegistry - Generic interface to target specific features.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:713
Method Overview
- public static void RegisterAsmPrinter(llvm::Target & T, Target::AsmPrinterCtorTy Fn)
- public static void RegisterAsmTargetStreamer(llvm::Target & T, Target::AsmTargetStreamerCtorTy Fn)
- public static void RegisterCOFFStreamer(llvm::Target & T, Target::COFFStreamerCtorTy Fn)
- public static void RegisterCustomBehaviour(llvm::Target & T, Target::CustomBehaviourCtorTy Fn)
- public static void RegisterDXContainerStreamer(llvm::Target & T, Target::DXContainerStreamerCtorTy Fn)
- public static void RegisterELFStreamer(llvm::Target & T, Target::ELFStreamerCtorTy Fn)
- public static void RegisterInstrPostProcess(llvm::Target & T, Target::InstrPostProcessCtorTy Fn)
- public static void RegisterMCAsmBackend(llvm::Target & T, Target::MCAsmBackendCtorTy Fn)
- public static void RegisterMCAsmInfo(llvm::Target & T, Target::MCAsmInfoCtorFnTy Fn)
- public static void RegisterMCAsmParser(llvm::Target & T, Target::MCAsmParserCtorTy Fn)
- public static void RegisterMCCodeEmitter(llvm::Target & T, Target::MCCodeEmitterCtorTy Fn)
- public static void RegisterMCDisassembler(llvm::Target & T, Target::MCDisassemblerCtorTy Fn)
- public static void RegisterMCInstPrinter(llvm::Target & T, Target::MCInstPrinterCtorTy Fn)
- public static void RegisterMCInstrAnalysis(llvm::Target & T, Target::MCInstrAnalysisCtorFnTy Fn)
- public static void RegisterMCInstrInfo(llvm::Target & T, Target::MCInstrInfoCtorFnTy Fn)
- public static void RegisterMCObjectFileInfo(llvm::Target & T, Target::MCObjectFileInfoCtorFnTy Fn)
- public static void RegisterMCRegInfo(llvm::Target & T, Target::MCRegInfoCtorFnTy Fn)
- public static void RegisterMCRelocationInfo(llvm::Target & T, Target::MCRelocationInfoCtorTy Fn)
- public static void RegisterMCSubtargetInfo(llvm::Target & T, Target::MCSubtargetInfoCtorFnTy Fn)
- public static void RegisterMCSymbolizer(llvm::Target & T, Target::MCSymbolizerCtorTy Fn)
- public static void RegisterMachOStreamer(llvm::Target & T, Target::MachOStreamerCtorTy Fn)
- public static void RegisterNullTargetStreamer(llvm::Target & T, Target::NullTargetStreamerCtorTy Fn)
- public static void RegisterObjectTargetStreamer(llvm::Target & T, Target::ObjectTargetStreamerCtorTy Fn)
- public static void RegisterSPIRVStreamer(llvm::Target & T, Target::SPIRVStreamerCtorTy Fn)
- public static void RegisterTarget(llvm::Target & T, const char * Name, const char * ShortDesc, const char * BackendName, Target::ArchMatchFnTy ArchMatchFn, bool HasJIT = false)
- public static void RegisterTargetMachine(llvm::Target & T, Target::TargetMachineCtorTy Fn)
- public static void RegisterWasmStreamer(llvm::Target & T, Target::WasmStreamerCtorTy Fn)
- public static void RegisterXCOFFStreamer(llvm::Target & T, Target::XCOFFStreamerCtorTy Fn)
- public TargetRegistry()
- public static const llvm::Target * lookupTarget(const std::string & ArchName, llvm::Triple & TheTriple, std::string & Error)
- public static const llvm::Target * lookupTarget(const std::string & Triple, std::string & Error)
- public static void printRegisteredTargetsForVersion(llvm::raw_ostream & OS)
- public static iterator_range<llvm::TargetRegistry::iterator> targets()
Methods
¶static void RegisterAsmPrinter(
llvm::Target& T,
Target::AsmPrinterCtorTy Fn)
static void RegisterAsmPrinter(
llvm::Target& T,
Target::AsmPrinterCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:938
Parameters
- llvm::Target& T
- - The target being registered.
- Target::AsmPrinterCtorTy Fn
- - A function to construct an AsmPrinter for the target.
¶static void RegisterAsmTargetStreamer(
llvm::Target& T,
Target::AsmTargetStreamerCtorTy Fn)
static void RegisterAsmTargetStreamer(
llvm::Target& T,
Target::AsmTargetStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1015
Parameters
- llvm::Target& T
- Target::AsmTargetStreamerCtorTy Fn
¶static void RegisterCOFFStreamer(
llvm::Target& T,
Target::COFFStreamerCtorTy Fn)
static void RegisterCOFFStreamer(
llvm::Target& T,
Target::COFFStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:982
Parameters
- llvm::Target& T
- Target::COFFStreamerCtorTy Fn
¶static void RegisterCustomBehaviour(
llvm::Target& T,
Target::CustomBehaviourCtorTy Fn)
static void RegisterCustomBehaviour(
llvm::Target& T,
Target::CustomBehaviourCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1062
Parameters
- llvm::Target& T
- - The target being registered.
- Target::CustomBehaviourCtorTy Fn
- - A function to construct a CustomBehaviour for the target.
¶static void RegisterDXContainerStreamer(
llvm::Target& T,
Target::DXContainerStreamerCtorTy Fn)
static void RegisterDXContainerStreamer(
llvm::Target& T,
Target::DXContainerStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:998
Parameters
- llvm::Target& T
- Target::DXContainerStreamerCtorTy Fn
¶static void RegisterELFStreamer(
llvm::Target& T,
Target::ELFStreamerCtorTy Fn)
static void RegisterELFStreamer(
llvm::Target& T,
Target::ELFStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:990
Parameters
- llvm::Target& T
- Target::ELFStreamerCtorTy Fn
¶static void RegisterInstrPostProcess(
llvm::Target& T,
Target::InstrPostProcessCtorTy Fn)
static void RegisterInstrPostProcess(
llvm::Target& T,
Target::InstrPostProcessCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1076
Parameters
- llvm::Target& T
- - The target being registered.
- Target::InstrPostProcessCtorTy Fn
- - A function to construct an InstrPostProcess for the target.
¶static void RegisterMCAsmBackend(
llvm::Target& T,
Target::MCAsmBackendCtorTy Fn)
static void RegisterMCAsmBackend(
llvm::Target& T,
Target::MCAsmBackendCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:912
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCAsmBackendCtorTy Fn
- - A function to construct an AsmBackend for the target.
¶static void RegisterMCAsmInfo(
llvm::Target& T,
Target::MCAsmInfoCtorFnTy Fn)
static void RegisterMCAsmInfo(
llvm::Target& T,
Target::MCAsmInfoCtorFnTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:826
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCAsmInfoCtorFnTy Fn
- - A function to construct a MCAsmInfo for the target.
¶static void RegisterMCAsmParser(
llvm::Target& T,
Target::MCAsmParserCtorTy Fn)
static void RegisterMCAsmParser(
llvm::Target& T,
Target::MCAsmParserCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:925
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCAsmParserCtorTy Fn
- - A function to construct an MCTargetAsmParser for the target.
¶static void RegisterMCCodeEmitter(
llvm::Target& T,
Target::MCCodeEmitterCtorTy Fn)
static void RegisterMCCodeEmitter(
llvm::Target& T,
Target::MCCodeEmitterCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:978
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCCodeEmitterCtorTy Fn
- - A function to construct an MCCodeEmitter for the target.
¶static void RegisterMCDisassembler(
llvm::Target& T,
Target::MCDisassemblerCtorTy Fn)
static void RegisterMCDisassembler(
llvm::Target& T,
Target::MCDisassemblerCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:951
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCDisassemblerCtorTy Fn
- - A function to construct an MCDisassembler for the target.
¶static void RegisterMCInstPrinter(
llvm::Target& T,
Target::MCInstPrinterCtorTy Fn)
static void RegisterMCInstPrinter(
llvm::Target& T,
Target::MCInstPrinterCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:965
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCInstPrinterCtorTy Fn
- - A function to construct an MCInstPrinter for the target.
¶static void RegisterMCInstrAnalysis(
llvm::Target& T,
Target::MCInstrAnalysisCtorFnTy Fn)
static void RegisterMCInstrAnalysis(
llvm::Target& T,
Target::MCInstrAnalysisCtorFnTy Fn)
Description
RegisterMCInstrAnalysis - Register a MCInstrAnalysis implementation for the given target.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:858
Parameters
- llvm::Target& T
- Target::MCInstrAnalysisCtorFnTy Fn
¶static void RegisterMCInstrInfo(
llvm::Target& T,
Target::MCInstrInfoCtorFnTy Fn)
static void RegisterMCInstrInfo(
llvm::Target& T,
Target::MCInstrInfoCtorFnTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:852
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCInstrInfoCtorFnTy Fn
- - A function to construct a MCInstrInfo for the target.
¶static void RegisterMCObjectFileInfo(
llvm::Target& T,
Target::MCObjectFileInfoCtorFnTy Fn)
static void RegisterMCObjectFileInfo(
llvm::Target& T,
Target::MCObjectFileInfoCtorFnTy Fn)
Description
Register a MCObjectFileInfo 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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:838
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCObjectFileInfoCtorFnTy Fn
- - A function to construct a MCObjectFileInfo for the target.
¶static void RegisterMCRegInfo(
llvm::Target& T,
Target::MCRegInfoCtorFnTy Fn)
static void RegisterMCRegInfo(
llvm::Target& T,
Target::MCRegInfoCtorFnTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:872
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCRegInfoCtorFnTy Fn
- - A function to construct a MCRegisterInfo for the target.
¶static void RegisterMCRelocationInfo(
llvm::Target& T,
Target::MCRelocationInfoCtorTy Fn)
static void RegisterMCRelocationInfo(
llvm::Target& T,
Target::MCRelocationInfoCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1035
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCRelocationInfoCtorTy Fn
- - A function to construct an MCRelocationInfo for the target.
¶static void RegisterMCSubtargetInfo(
llvm::Target& T,
Target::MCSubtargetInfoCtorFnTy Fn)
static void RegisterMCSubtargetInfo(
llvm::Target& T,
Target::MCSubtargetInfoCtorFnTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:885
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCSubtargetInfoCtorFnTy Fn
- - A function to construct a MCSubtargetInfo for the target.
¶static void RegisterMCSymbolizer(
llvm::Target& T,
Target::MCSymbolizerCtorTy Fn)
static void RegisterMCSymbolizer(
llvm::Target& T,
Target::MCSymbolizerCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1049
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCSymbolizerCtorTy Fn
- - A function to construct an MCSymbolizer for the target.
¶static void RegisterMachOStreamer(
llvm::Target& T,
Target::MachOStreamerCtorTy Fn)
static void RegisterMachOStreamer(
llvm::Target& T,
Target::MachOStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:986
Parameters
- llvm::Target& T
- Target::MachOStreamerCtorTy Fn
¶static void RegisterNullTargetStreamer(
llvm::Target& T,
Target::NullTargetStreamerCtorTy Fn)
static void RegisterNullTargetStreamer(
llvm::Target& T,
Target::NullTargetStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1010
Parameters
- llvm::Target& T
- Target::NullTargetStreamerCtorTy Fn
¶static void RegisterObjectTargetStreamer(
llvm::Target& T,
Target::ObjectTargetStreamerCtorTy Fn)
static void RegisterObjectTargetStreamer(
llvm::Target& T,
Target::ObjectTargetStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1021
Parameters
- llvm::Target& T
- Target::ObjectTargetStreamerCtorTy Fn
¶static void RegisterSPIRVStreamer(
llvm::Target& T,
Target::SPIRVStreamerCtorTy Fn)
static void RegisterSPIRVStreamer(
llvm::Target& T,
Target::SPIRVStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:994
Parameters
- llvm::Target& T
- Target::SPIRVStreamerCtorTy Fn
¶static void RegisterTarget(
llvm::Target& T,
const char* Name,
const char* ShortDesc,
const char* BackendName,
Target::ArchMatchFnTy ArchMatchFn,
bool HasJIT = false)
static void RegisterTarget(
llvm::Target& T,
const char* Name,
const char* ShortDesc,
const char* BackendName,
Target::ArchMatchFnTy ArchMatchFn,
bool HasJIT = false)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:812
Parameters
- llvm::Target& T
- - The target being registered.
- const char* Name
- - The target name. This should be a static string.
- const char* ShortDesc
- - A short target description. This should be a static string.
- const char* 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.
- Target::ArchMatchFnTy ArchMatchFn
- - The arch match checking function for this target.
- bool HasJIT = false
- - Whether the target supports JIT code generation.
¶static void RegisterTargetMachine(
llvm::Target& T,
Target::TargetMachineCtorTy Fn)
static void RegisterTargetMachine(
llvm::Target& T,
Target::TargetMachineCtorTy Fn)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:899
Parameters
- llvm::Target& T
- - The target being registered.
- Target::TargetMachineCtorTy Fn
- - A function to construct a TargetMachine for the target.
¶static void RegisterWasmStreamer(
llvm::Target& T,
Target::WasmStreamerCtorTy Fn)
static void RegisterWasmStreamer(
llvm::Target& T,
Target::WasmStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1002
Parameters
- llvm::Target& T
- Target::WasmStreamerCtorTy Fn
¶static void RegisterXCOFFStreamer(
llvm::Target& T,
Target::XCOFFStreamerCtorTy Fn)
static void RegisterXCOFFStreamer(
llvm::Target& T,
Target::XCOFFStreamerCtorTy Fn)
Declared at: llvm/include/llvm/MC/TargetRegistry.h:1006
Parameters
- llvm::Target& T
- Target::XCOFFStreamerCtorTy Fn
¶TargetRegistry()
TargetRegistry()
Declared at: llvm/include/llvm/MC/TargetRegistry.h:718
¶static const llvm::Target* lookupTarget(
const std::string& ArchName,
llvm::Triple& TheTriple,
std::string& Error)
static const llvm::Target* lookupTarget(
const std::string& ArchName,
llvm::Triple& TheTriple,
std::string& Error)
Description
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.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:787
Parameters
- const std::string& ArchName
- - The architecture to use for finding a target.
- llvm::Triple& TheTriple
- - The triple to use for finding a target. The triple is updated with canonical architecture name if a lookup by architecture is done.
- std::string& Error
- - On failure, an error string describing why no target was found.
¶static const llvm::Target* lookupTarget(
const std::string& Triple,
std::string& Error)
static const llvm::Target* lookupTarget(
const std::string& Triple,
std::string& Error)
Description
lookupTarget - Lookup a target based on a target triple.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:773
Parameters
- const std::string& Triple
- - The triple to use for finding a target.
- std::string& Error
- - On failure, an error string describing why no target was found.
¶static void printRegisteredTargetsForVersion(
llvm::raw_ostream& OS)
static void printRegisteredTargetsForVersion(
llvm::raw_ostream& OS)
Description
printRegisteredTargetsForVersion - Print the registered targets appropriately for inclusion in a tool's version output.
Declared at: llvm/include/llvm/MC/TargetRegistry.h:761
Parameters
¶static iterator_range<
llvm::TargetRegistry::iterator>
targets()
static iterator_range<
llvm::TargetRegistry::iterator>
targets()
Description
@ {
Declared at: llvm/include/llvm/MC/TargetRegistry.h:766