Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:VirtReg

28 void LiveIntervalUnion::unify(LiveInterval &VirtReg) {
29 if (VirtReg.empty())
34 LiveInterval::iterator RegPos = VirtReg.begin();
35 LiveInterval::iterator RegEnd = VirtReg.end();
39 SegPos.insert(RegPos->start, RegPos->end, &VirtReg);
49 SegPos.insert(RegEnd->start, RegEnd->end, &VirtReg);
51 SegPos.insert(RegPos->start, RegPos->end, &VirtReg);
55 void LiveIntervalUnion::extract(LiveInterval &VirtReg) {
56 if (VirtReg.empty())
61 LiveInterval::iterator RegPos = VirtReg.begin();
62 LiveInterval::iterator RegEnd = VirtReg.end();
66 assert(SegPos.value() == &VirtReg && "Inconsistent LiveInterval");
72 RegPos = VirtReg.advanceTo(RegPos, SegPos.start());
103 bool LiveIntervalUnion::Query::isSeenInterference(LiveInterval *VirtReg) const {
105 std::find(InterferingVRegs.begin(), InterferingVRegs.end(), VirtReg);
129 if (VirtReg->empty() || LiveUnion->empty()) {
134 // In most cases, the union will start before VirtReg.
135 VirtRegI = VirtReg->begin();
140 LiveInterval::iterator VirtRegEnd = VirtReg->end();
143 assert(VirtRegI != VirtRegEnd && "Reached end of VirtReg");
168 VirtRegI = VirtReg->advanceTo(VirtRegI, LiveUnionI.start());