Lines Matching refs:LiveInterval
71 bool operator()(LiveInterval *A, LiveInterval *B) const { in operator ()()
94 std::priority_queue<LiveInterval*, std::vector<LiveInterval*>,
111 virtual float getPriority(LiveInterval *LI) { return LI->weight; } in getPriority()
113 virtual void enqueue(LiveInterval *LI) { in enqueue()
117 virtual LiveInterval *dequeue() { in dequeue()
120 LiveInterval *LI = Queue.top(); in dequeue()
125 virtual unsigned selectOrSplit(LiveInterval &VirtReg,
126 SmallVectorImpl<LiveInterval*> &SplitVRegs);
268 LiveInterval &VirtReg = *I->second; in seedLiveRegs()
276 void RegAllocBase::assign(LiveInterval &VirtReg, unsigned PhysReg) { in assign()
286 void RegAllocBase::unassign(LiveInterval &VirtReg, unsigned PhysReg) { in unassign()
301 while (LiveInterval *VirtReg = dequeue()) { in allocatePhysRegs()
320 typedef SmallVector<LiveInterval*, 4> VirtRegVec; in allocatePhysRegs()
348 LiveInterval *SplitVirtReg = *I; in allocatePhysRegs()
367 unsigned RegAllocBase::checkPhysRegInterference(LiveInterval &VirtReg, in checkPhysRegInterference()
377 void RegAllocBase::spillReg(LiveInterval& VirtReg, unsigned PhysReg, in spillReg()
378 SmallVectorImpl<LiveInterval*> &SplitVRegs) { in spillReg()
381 const SmallVectorImpl<LiveInterval*> &PendingSpills = Q.interferingVRegs(); in spillReg()
383 for (SmallVectorImpl<LiveInterval*>::const_iterator I = PendingSpills.begin(), in spillReg()
385 LiveInterval &SpilledVReg = **I; in spillReg()
406 RegAllocBase::spillInterferences(LiveInterval &VirtReg, unsigned PhysReg, in spillInterferences()
407 SmallVectorImpl<LiveInterval*> &SplitVRegs) { in spillInterferences()
482 unsigned RABasic::selectOrSplit(LiveInterval &VirtReg, in selectOrSplit()
483 SmallVectorImpl<LiveInterval*> &SplitVRegs) { in selectOrSplit()
502 LiveInterval *interferingVirtReg = in selectOrSplit()