9#ifndef LLVM_CODEGEN_REGALLOCFAST_H
10#define LLVM_CODEGEN_REGALLOCFAST_H
A container for analyses that lazily runs them and caches their results.
Properties which a MachineFunction may have at a given point in time.
A set of analyses that are preserved following a run of a transformation pass.
MachineFunctionProperties getRequiredProperties() const
RegAllocFastPass(Options Opts=Options())
MachineFunctionProperties getClearedProperties() const
PreservedAnalyses run(MachineFunction &MF, MachineFunctionAnalysisManager &)
MachineFunctionProperties getSetProperties() const
void printPipeline(raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)
StringRef - Represent a constant reference to a string, i.e.
An efficient, type-erasing, non-owning reference to a callable.
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.
std::function< bool(const TargetRegisterInfo &TRI, const MachineRegisterInfo &MRI, const Register Reg)> RegAllocFilterFunc
Filter function for register classes during regalloc.
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
Implement std::hash so that hash_code can be used in STL containers.
A CRTP mix-in to automatically provide informational APIs needed for passes.
RegAllocFilterFunc Filter
Options(RegAllocFilterFunc F=nullptr, StringRef FN="all", bool CV=true)