• Home
  • Raw
  • Download

Lines Matching refs:SU

245     SUnit *SU = NewSUnit(MI);  in BuildSchedGraph()  local
246 SU->isCall = MCID.isCall(); in BuildSchedGraph()
247 SU->isCommutable = MCID.isCommutable(); in BuildSchedGraph()
251 SU->Latency = 1; in BuildSchedGraph()
253 ComputeLatency(SU); in BuildSchedGraph()
279 if (DefSU != SU && in BuildSchedGraph()
282 DefSU->addPred(SDep(SU, Kind, AOLatency, /*Reg=*/Reg)); in BuildSchedGraph()
290 if (DefSU != SU && in BuildSchedGraph()
293 DefSU->addPred(SDep(SU, Kind, AOLatency, /*Reg=*/ *Alias)); in BuildSchedGraph()
299 unsigned DataLatency = SU->Latency; in BuildSchedGraph()
302 if (UseSU == SU) in BuildSchedGraph()
326 const SDep& dep = SDep(SU, SDep::Data, LDataLatency, Reg); in BuildSchedGraph()
328 ComputeOperandLatency(SU, UseSU, const_cast<SDep &>(dep)); in BuildSchedGraph()
329 ST.adjustSchedDependency(SU, UseSU, const_cast<SDep &>(dep)); in BuildSchedGraph()
337 if (UseSU == SU) in BuildSchedGraph()
339 const SDep& dep = SDep(SU, SDep::Data, DataLatency, *Alias); in BuildSchedGraph()
341 ComputeOperandLatency(SU, UseSU, const_cast<SDep &>(dep)); in BuildSchedGraph()
342 ST.adjustSchedDependency(SU, UseSU, const_cast<SDep &>(dep)); in BuildSchedGraph()
366 unsigned Latency = SU->Latency; in BuildSchedGraph()
374 ExitSU.addPred(SDep(SU, SDep::Order, Latency, in BuildSchedGraph()
385 SU->isScheduleHigh = true; in BuildSchedGraph()
401 if (SU->isCall) { in BuildSchedGraph()
405 DefList.push_back(SU); in BuildSchedGraph()
407 UseList.push_back(SU); in BuildSchedGraph()
429 I->second->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
434 I->second[i]->addPred(SDep(SU, SDep::Order, TrueMemOrderLatency)); in BuildSchedGraph()
440 BarrierChain->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
441 BarrierChain = SU; in BuildSchedGraph()
447 AliasChain->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
448 AliasChain = SU; in BuildSchedGraph()
450 PendingLoads[k]->addPred(SDep(SU, SDep::Order, TrueMemOrderLatency)); in BuildSchedGraph()
453 I->second->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
458 I->second[i]->addPred(SDep(SU, SDep::Order, TrueMemOrderLatency)); in BuildSchedGraph()
475 I->second->addPred(SDep(SU, SDep::Order, /*Latency=*/0, /*Reg=*/0, in BuildSchedGraph()
477 I->second = SU; in BuildSchedGraph()
480 AliasMemDefs[V] = SU; in BuildSchedGraph()
482 NonAliasMemDefs[V] = SU; in BuildSchedGraph()
491 J->second[i]->addPred(SDep(SU, SDep::Order, TrueMemOrderLatency, in BuildSchedGraph()
499 PendingLoads[k]->addPred(SDep(SU, SDep::Order, TrueMemOrderLatency)); in BuildSchedGraph()
502 AliasChain->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
506 BarrierChain->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
512 if (!ExitSU.isPred(SU)) in BuildSchedGraph()
515 ExitSU.addPred(SDep(SU, SDep::Order, 0, in BuildSchedGraph()
533 I->second->addPred(SDep(SU, SDep::Order, /*Latency=*/0, /*Reg=*/0, in BuildSchedGraph()
536 AliasMemUses[V].push_back(SU); in BuildSchedGraph()
538 NonAliasMemUses[V].push_back(SU); in BuildSchedGraph()
544 I->second->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
546 PendingLoads.push_back(SU); in BuildSchedGraph()
552 AliasChain->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
554 BarrierChain->addPred(SDep(SU, SDep::Order, /*Latency=*/0)); in BuildSchedGraph()
572 void ScheduleDAGInstrs::ComputeLatency(SUnit *SU) { in ComputeLatency() argument
575 SU->Latency = 1; in ComputeLatency()
579 if (SU->getInstr()->getDesc().mayLoad()) in ComputeLatency()
580 SU->Latency += 2; in ComputeLatency()
582 SU->Latency = TII->getInstrLatency(InstrItins, SU->getInstr()); in ComputeLatency()
643 void ScheduleDAGInstrs::dumpNode(const SUnit *SU) const { in dumpNode()
644 SU->getInstr()->dump(); in dumpNode()
647 std::string ScheduleDAGInstrs::getGraphNodeLabel(const SUnit *SU) const { in getGraphNodeLabel()
650 if (SU == &EntrySU) in getGraphNodeLabel()
652 else if (SU == &ExitSU) in getGraphNodeLabel()
655 SU->getInstr()->print(oss); in getGraphNodeLabel()
675 if (SUnit *SU = Sequence[i]) in EmitSchedule() local
676 BB->insert(InsertPos, SU->getInstr()); in EmitSchedule()