Lines Matching refs:Scheduler
1 //===- MachineScheduler.cpp - Machine Instruction Scheduler ---------------===//
120 void scheduleRegions(ScheduleDAGInstrs &Scheduler, bool FixKillFlags);
159 "Machine Instruction Scheduler", false, false)
164 "Machine Instruction Scheduler", false, false)
189 "PostRA Machine Instruction Scheduler", false, false)
290 ScheduleDAGInstrs *Scheduler = PassConfig->createMachineScheduler(this);
291 if (Scheduler)
292 return Scheduler;
303 ScheduleDAGInstrs *Scheduler = PassConfig->createPostMachineScheduler(this);
304 if (Scheduler)
305 return Scheduler;
356 std::unique_ptr<ScheduleDAGInstrs> Scheduler(createMachineScheduler());
357 scheduleRegions(*Scheduler, false);
387 std::unique_ptr<ScheduleDAGInstrs> Scheduler(createPostMachineScheduler());
388 scheduleRegions(*Scheduler, true);
413 void MachineSchedulerBase::scheduleRegions(ScheduleDAGInstrs &Scheduler,
424 Scheduler.startBlock(&*MBB);
441 // The Scheduler may insert instructions during either schedule() or
448 RegionEnd != MBB->begin(); RegionEnd = Scheduler.begin()) {
468 Scheduler.enterRegion(&*MBB, I, RegionEnd, NumRegionInstrs);
474 Scheduler.exitRegion();
492 Scheduler.schedule();
495 Scheduler.exitRegion();
499 RegionEnd = Scheduler.begin();
501 Scheduler.finishBlock();
506 Scheduler.fixupKills(&*MBB);
508 Scheduler.finalizeSchedule();
3266 // ILP Scheduler. Currently for experimental analysis of heuristics.
3346 /// \brief Scheduler callback to notify that a new subtree is scheduled.