14#ifndef LLVM_CODEGEN_REGALLOCREGISTRY_H
15#define LLVM_CODEGEN_REGALLOCREGISTRY_H
29template <
class SubClass>
49 return static_cast<SubClass *
>(
Registry.getList());
69MachinePassRegistry<typename RegisterRegAllocBase<T>::FunctionPassCtor>
static GCRegistry::Add< StatepointGC > D("statepoint-example", "an example strategy for statepoint")
FunctionPass class - This class is used to implement most global optimizations.
MachinePassRegistryListener - Listener to adds and removals of nodes in registration list.
MachinePassRegistryNode - Machine pass node stored in registration list.
MachinePassRegistryNode * getNext() const
MachinePassRegistry - Track the registration of machine passes.
RegisterRegAllocBase class - Track the registration of register allocators.
SubClass * getNext() const
static FunctionPassCtor getDefault()
static MachinePassRegistry< FunctionPassCtor > Registry
RegisterRegAlloc's global Registry tracks allocator registration.
static SubClass * getList()
static void setDefault(FunctionPassCtor C)
static void setListener(MachinePassRegistryListener< FunctionPassCtor > *L)
FunctionPass *(*)() FunctionPassCtor
RegisterRegAllocBase(const char *N, const char *D, FunctionPassCtor C)
RegisterRegAlloc(const char *N, const char *D, FunctionPassCtor C)
A static registration template.
A global registry used in conjunction with static constructors to make pluggable components (like tar...
@ C
The default llvm calling convention, compatible with C.
This is an optimization pass for GlobalISel generic memory operations.