Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:RegionEnd

312 /// scheduler must update the RegionBegin and RegionEnd positions cached by
417 // Break the block into scheduling regions [I, RegionEnd), and schedule each
418 // region as soon as it is discovered. RegionEnd points the scheduling
419 // boundary at the bottom of the region. The DAG does not include RegionEnd,
420 // but the region does (i.e. the next RegionEnd is above the previous
421 // RegionBegin). If the current block has no terminator then RegionEnd ==
426 // 'RegionEnd' are invalid across these calls.
431 for(MachineBasicBlock::iterator RegionEnd = MBB->end();
432 RegionEnd != MBB->begin(); RegionEnd = Scheduler.begin()) {
434 // Avoid decrementing RegionEnd for blocks with no terminator.
435 if (RegionEnd != MBB->end() ||
436 RegionEnd), &*MBB, MF, TII)) {
437 --RegionEnd;
445 MachineBasicBlock::iterator I = RegionEnd;
454 Scheduler.enterRegion(&*MBB, I, RegionEnd, NumRegionInstrs);
457 if (I == RegionEnd || I == std::prev(RegionEnd)) {
459 // This invalidates 'RegionEnd' and 'I'.
467 if (RegionEnd != MBB->end()) dbgs() << *RegionEnd;
478 // This invalidates 'RegionEnd' and 'I'.
486 RegionEnd = Scheduler.begin();
796 CurrentTop = nextIfDebug(RegionBegin, RegionEnd);
797 CurrentBottom = RegionEnd;
827 if (OrigPrevMI == std::prev(RegionEnd))
828 RegionEnd = DbgValue;
867 LiveRegionEnd = (RegionEnd == bb->end()) ? RegionEnd : std::next(RegionEnd);
907 if (LiveRegionEnd != RegionEnd
920 assert(BotRPTracker.getPos() == RegionEnd && "Can't find the region bottom");
1020 /// after setting up the current scheduling region. [RegionBegin, RegionEnd)
1117 if (LiveRegionEnd != RegionEnd)