- // Generate MI -> SU map.
- std::map <MachineInstr*, SUnit*> MIToSUnit;
- for (unsigned i = 0, e = SUnits.size(); i != e; ++i) {
- SUnit *SU = &SUnits[i];
- MIToSUnit[SU->getInstr()] = SU;
- }
+ // Build the DAG without reordering instructions.
+ SchedulerImpl->schedule();
+
+ // Remember scheduling units.
+ SUnits = SchedulerImpl->SUnits;