Lines Matching refs:SSD
2552 void SMSchedule::orderDependence(SwingSchedulerDAG *SSD, SUnit *SU,
2574 if (unsigned NewReg = SSD->getInstrBaseReg(SU))
2610 isLoopCarriedDefOfUse(SSD, (*I)->getInstr(), MO)) {
2667 orderDependence(SSD, UseSU, Insts);
2668 orderDependence(SSD, SU, Insts);
2669 orderDependence(SSD, DefSU, Insts);
2681 bool SMSchedule::isLoopCarried(SwingSchedulerDAG *SSD, MachineInstr &Phi) {
2685 SUnit *DefSU = SSD->getSUnit(&Phi);
2692 SUnit *UseSU = SSD->getSUnit(MRI.getVRegDef(LoopVal));
2709 bool SMSchedule::isLoopCarriedDefOfUse(SwingSchedulerDAG *SSD,
2718 if (!isLoopCarried(SSD, *Phi))
2735 bool SMSchedule::isValidSchedule(SwingSchedulerDAG *SSD) {
2736 for (int i = 0, e = SSD->SUnits.size(); i < e; ++i) {
2737 SUnit &SU = SSD->SUnits[i];
2902 void SMSchedule::finalizeSchedule(SwingSchedulerDAG *SSD) {
2923 for (int i = 0, e = SSD->SUnits.size(); i != e; ++i) {
2924 SUnit *SU = &SSD->SUnits[i];
2925 SSD->applyInstrChange(SU->getInstr(), *this);
2942 orderDependence(SSD, SU, newOrderI);
2947 SSD->fixupRegisterOverlaps(cycleInstrs);