16 #ifndef LLVM_CODEGEN_PBQPRACONSTRAINT_H
17 #define LLVM_CODEGEN_PBQPRACONSTRAINT_H
44 virtual void anchor();
54 for (
auto &
C : Constraints)
60 Constraints.push_back(std::move(C));
63 std::vector<std::unique_ptr<PBQPRAConstraint>> Constraints;
64 void anchor()
override;
PBQP register allocation constraint composer.
Abstract base for classes implementing PBQP register allocation constraints (e.g. ...
virtual void apply(PBQPRAGraph &G)=0
virtual ~PBQPRAConstraint()=0
MachineBlockFrequencyInfo pass uses BlockFrequencyInfoImpl implementation to estimate machine basic b...
void addConstraint(std::unique_ptr< PBQPRAConstraint > C)
TargetRegisterInfo base class - We assume that the target defines a static array of TargetRegisterDes...
static GCRegistry::Add< ShadowStackGC > C("shadow-stack","Very portable GC for uncooperative code generators")
PBQP::RegAlloc::PBQPRAGraph PBQPRAGraph
static cl::opt< RegisterRegAlloc::FunctionPassCtor, false, RegisterPassParser< RegisterRegAlloc > > RegAlloc("regalloc", cl::init(&useDefaultRegisterAllocator), cl::desc("Register allocator to use"))
-regalloc=... command line option.
void apply(PBQPRAGraph &G) override