Lines Matching refs:NewIdxOut
1306 LiveRange::iterator NewIdxOut = LR.find(NewIdx.getRegSlot());
1307 if (SlotIndex::isSameInstr(NewIdxOut->start, NewIdx)) {
1308 assert(NewIdxOut->valno != OldIdxVNI &&
1316 LR.removeValNo(NewIdxOut->valno);
1329 LiveRange::iterator NewIdxIn = NewIdxOut;
1345 std::next(NewIdxOut)->start);
1382 && SlotIndex::isEarlierInstr(NewIdxOut->start, NewIdx)
1383 && SlotIndex::isEarlierInstr(NewIdx, NewIdxOut->end)) {
1388 // in LR, so move OldIdxOut up to NewIdxOut. Slide [NewIdxOut;OldIdxOut)
1390 // |- X0/NewIdxOut -| ... |- Xn-1 -| |- Xn/OldIdxOut -| |- next - |
1391 // => |- X0/NewIdxOut -| |- X0 -| ... |- Xn-1 -| |- next -|
1392 std::copy_backward(NewIdxOut, OldIdxOut, std::next(OldIdxOut));
1393 // Modify the segment at NewIdxOut and the following segment to meet at
1396 *NewIdxOut = LiveRange::Segment(
1397 NewIdxOut->start, NewIdxDef.getRegSlot(), NewIdxOut->valno);
1398 *(NewIdxOut + 1) = LiveRange::Segment(
1399 NewIdxDef.getRegSlot(), (NewIdxOut + 1)->end, OldIdxVNI);
1402 for (auto *Idx = NewIdxOut + 2; Idx <= OldIdxOut; ++Idx)
1413 // in LR, so move OldIdxOut up to NewIdxOut. Slide [NewIdxOut;OldIdxOut)
1415 // |- X0/NewIdxOut -| ... |- Xn-1 -| |- Xn/OldIdxOut -| |- next - |
1416 // => |- undef/NewIdxOut -| |- X0 -| ... |- Xn-1 -| |- next -|
1417 std::copy_backward(NewIdxOut, OldIdxOut, std::next(OldIdxOut));
1419 LiveRange::iterator NewSegment = NewIdxOut;