17 #define DEBUG_TYPE "regalloc"
42 for (
unsigned I = 0, E = Hints.
size();
I != E; ++
I)
48 for (
unsigned I = 0, E = Hints.
size();
I != E; ++
I)
49 assert(std::find(Order.
begin(), Order.
end(), Hints[
I]) != Order.
end() &&
50 "Target hint is outside allocation order.");
void rewind()
Start over from the beginning.
MachineFunction & getMachineFunction() const
const TargetRegisterClass * getRegClass(unsigned Reg) const
ArrayRef< MCPhysReg > getOrder(const TargetRegisterClass *RC) const
virtual void getRegAllocationHints(unsigned VirtReg, ArrayRef< MCPhysReg > Order, SmallVectorImpl< MCPhysReg > &Hints, const MachineFunction &MF, const VirtRegMap *VRM=0) const
bool LLVM_ATTRIBUTE_UNUSED_RESULT empty() const
AllocationOrder(unsigned VirtReg, const VirtRegMap &VRM, const RegisterClassInfo &RegClassInfo)
const TargetRegisterInfo & getTargetRegInfo() const
raw_ostream & dbgs()
dbgs - Return a circular-buffered debug stream.
MachineRegisterInfo & getRegInfo()