struct TargetRegistry
Declaration
struct TargetRegistry { /* full declaration omitted */ };
Description
TargetRegistry - Generic interface to target specific features.
Declared at: llvm/include/llvm/Support/TargetRegistry.h:597
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 RegisterELFStreamer(llvm::Target & T, Target::ELFStreamerCtorTy 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 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 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 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/Support/TargetRegistry.h:804
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/Support/TargetRegistry.h:869
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/Support/TargetRegistry.h:848
Parameters
- llvm::Target& T
- Target::COFFStreamerCtorTy Fn
¶static void RegisterELFStreamer(
llvm::Target& T,
Target::ELFStreamerCtorTy Fn)
static void RegisterELFStreamer(
llvm::Target& T,
Target::ELFStreamerCtorTy Fn)
Declared at: llvm/include/llvm/Support/TargetRegistry.h:856
Parameters
- llvm::Target& T
- Target::ELFStreamerCtorTy Fn
¶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/Support/TargetRegistry.h:778
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/Support/TargetRegistry.h:705
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/Support/TargetRegistry.h:791
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/Support/TargetRegistry.h:844
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/Support/TargetRegistry.h:817
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/Support/TargetRegistry.h:831
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/Support/TargetRegistry.h:724
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/Support/TargetRegistry.h:718
Parameters
- llvm::Target& T
- - The target being registered.
- Target::MCInstrInfoCtorFnTy Fn
- - A function to construct a MCInstrInfo 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/Support/TargetRegistry.h:738
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/Support/TargetRegistry.h:889
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/Support/TargetRegistry.h:751
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/Support/TargetRegistry.h:903
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/Support/TargetRegistry.h:852
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/Support/TargetRegistry.h:864
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/Support/TargetRegistry.h:875
Parameters
- llvm::Target& T
- Target::ObjectTargetStreamerCtorTy 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/Support/TargetRegistry.h:691
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/Support/TargetRegistry.h:765
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/Support/TargetRegistry.h:860
Parameters
- llvm::Target& T
- Target::WasmStreamerCtorTy Fn
¶TargetRegistry()
TargetRegistry()
Declared at: llvm/include/llvm/Support/TargetRegistry.h:602
¶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/Support/TargetRegistry.h:666
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/Support/TargetRegistry.h:652
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/Support/TargetRegistry.h:640
Parameters
¶static iterator_range<
llvm::TargetRegistry::iterator>
targets()
static iterator_range<
llvm::TargetRegistry::iterator>
targets()
Description
@ {
Declared at: llvm/include/llvm/Support/TargetRegistry.h:645