Lines Matching refs:SUnit
52 EntrySU = SUnit(); in clearDAG()
53 ExitSU = SUnit(); in clearDAG()
65 bool SUnit::addPred(const SDep &D, bool Required) { in addPred()
76 SUnit *PredSU = I->getSUnit(); in addPred()
95 SUnit *N = D.getSUnit(); in addPred()
133 void SUnit::removePred(const SDep &D) { in removePred()
141 SUnit *N = D.getSUnit(); in removePred()
178 void SUnit::setDepthDirty() { in setDepthDirty()
180 SmallVector<SUnit*, 8> WorkList; in setDepthDirty()
183 SUnit *SU = WorkList.pop_back_val(); in setDepthDirty()
185 for (SUnit::const_succ_iterator I = SU->Succs.begin(), in setDepthDirty()
187 SUnit *SuccSU = I->getSUnit(); in setDepthDirty()
194 void SUnit::setHeightDirty() { in setHeightDirty()
196 SmallVector<SUnit*, 8> WorkList; in setHeightDirty()
199 SUnit *SU = WorkList.pop_back_val(); in setHeightDirty()
201 for (SUnit::const_pred_iterator I = SU->Preds.begin(), in setHeightDirty()
203 SUnit *PredSU = I->getSUnit(); in setHeightDirty()
213 void SUnit::setDepthToAtLeast(unsigned NewDepth) { in setDepthToAtLeast()
224 void SUnit::setHeightToAtLeast(unsigned NewHeight) { in setHeightToAtLeast()
234 void SUnit::ComputeDepth() { in ComputeDepth()
235 SmallVector<SUnit*, 8> WorkList; in ComputeDepth()
238 SUnit *Cur = WorkList.back(); in ComputeDepth()
242 for (SUnit::const_pred_iterator I = Cur->Preds.begin(), in ComputeDepth()
244 SUnit *PredSU = I->getSUnit(); in ComputeDepth()
267 void SUnit::ComputeHeight() { in ComputeHeight()
268 SmallVector<SUnit*, 8> WorkList; in ComputeHeight()
271 SUnit *Cur = WorkList.back(); in ComputeHeight()
275 for (SUnit::const_succ_iterator I = Cur->Succs.begin(), in ComputeHeight()
277 SUnit *SuccSU = I->getSUnit(); in ComputeHeight()
298 void SUnit::biasCriticalPath() { in biasCriticalPath()
302 SUnit::pred_iterator BestI = Preds.begin(); in biasCriticalPath()
304 for (SUnit::pred_iterator I = std::next(BestI), E = Preds.end(); I != E; in biasCriticalPath()
316 void SUnit::dump(const ScheduleDAG *G) const { in dump()
321 void SUnit::dumpAll(const ScheduleDAG *G) const { in dumpAll()
337 for (SUnit::const_succ_iterator I = Preds.begin(), E = Preds.end(); in dumpAll()
357 for (SUnit::const_succ_iterator I = Succs.begin(), E = Succs.end(); in dumpAll()
461 std::vector<SUnit*> WorkList; in InitDAGTopologicalSorting()
471 SUnit *SU = &SUnits[i]; in InitDAGTopologicalSorting()
487 SUnit *SU = WorkList.back(); in InitDAGTopologicalSorting()
491 for (SUnit::const_pred_iterator I = SU->Preds.begin(), E = SU->Preds.end(); in InitDAGTopologicalSorting()
493 SUnit *SU = I->getSUnit(); in InitDAGTopologicalSorting()
506 SUnit *SU = &SUnits[i]; in InitDAGTopologicalSorting()
507 for (SUnit::const_pred_iterator I = SU->Preds.begin(), E = SU->Preds.end(); in InitDAGTopologicalSorting()
518 void ScheduleDAGTopologicalSort::AddPred(SUnit *Y, SUnit *X) { in AddPred()
537 void ScheduleDAGTopologicalSort::RemovePred(SUnit *M, SUnit *N) { in RemovePred()
544 void ScheduleDAGTopologicalSort::DFS(const SUnit *SU, int UpperBound, in DFS()
546 std::vector<const SUnit*> WorkList; in DFS()
601 bool ScheduleDAGTopologicalSort::WillCreateCycle(SUnit *TargetSU, SUnit *SU) { in WillCreateCycle()
605 for (SUnit::pred_iterator in WillCreateCycle()
614 bool ScheduleDAGTopologicalSort::IsReachable(const SUnit *SU, in IsReachable()
615 const SUnit *TargetSU) { in IsReachable()
638 ScheduleDAGTopologicalSort(std::vector<SUnit> &sunits, SUnit *exitsu) in ScheduleDAGTopologicalSort()