Lines Matching defs:SU
29 static bool isExport(const SUnit &SU) {
30 return SIInstrInfo::isEXP(*SU.getInstr());
33 static bool isPositionExport(const SIInstrInfo *TII, SUnit *SU) {
34 const MachineInstr *MI = SU->getInstr();
51 for (SUnit *SU : Copy) {
52 if (isPositionExport(TII, SU))
53 Chain[PosIdx++] = SU;
55 Chain[OtherIdx++] = SU;
82 static void removeExportDependencies(ScheduleDAGInstrs *DAG, SUnit &SU) {
85 for (const SDep &Pred : SU.Preds) {
89 if (isExport(SU))
103 SU.removePred(Pred);
105 DAG->addEdge(&SU, Pred);
118 for (SUnit &SU : DAG->SUnits) {
119 if (!isExport(SU))
122 Chain.push_back(&SU);
123 if (isPositionExport(TII, &SU))
126 removeExportDependencies(DAG, SU);
128 SmallVector<SDep, 4> Succs(SU.Succs);