Lines Matching refs:Cand
142 SISchedulerCandidate &Cand, in tryLess() argument
149 if (Cand.Reason > Reason) in tryLess()
150 Cand.Reason = Reason; in tryLess()
153 Cand.setRepeat(Reason); in tryLess()
159 SISchedulerCandidate &Cand, in tryGreater() argument
166 if (Cand.Reason > Reason) in tryGreater()
167 Cand.Reason = Reason; in tryGreater()
170 Cand.setRepeat(Reason); in tryGreater()
184 void SIScheduleBlock::traceCandidate(const SISchedCandidate &Cand) { in traceCandidate() argument
186 dbgs() << " SU(" << Cand.SU->NodeNum << ") " << getReasonStr(Cand.Reason); in traceCandidate()
191 void SIScheduleBlock::tryCandidateTopDown(SISchedCandidate &Cand, in tryCandidateTopDown() argument
194 if (!Cand.isValid()) { in tryCandidateTopDown()
199 if (Cand.SGPRUsage > 60 && in tryCandidateTopDown()
200 SISched::tryLess(TryCand.SGPRUsage, Cand.SGPRUsage, in tryCandidateTopDown()
201 TryCand, Cand, RegUsage)) in tryCandidateTopDown()
220 Cand.HasLowLatencyNonWaitedParent, in tryCandidateTopDown()
221 TryCand, Cand, SIScheduleCandReason::Depth)) in tryCandidateTopDown()
224 if (SISched::tryGreater(TryCand.IsLowLatency, Cand.IsLowLatency, in tryCandidateTopDown()
225 TryCand, Cand, SIScheduleCandReason::Depth)) in tryCandidateTopDown()
229 SISched::tryLess(TryCand.LowLatencyOffset, Cand.LowLatencyOffset, in tryCandidateTopDown()
230 TryCand, Cand, SIScheduleCandReason::Depth)) in tryCandidateTopDown()
233 if (SISched::tryLess(TryCand.VGPRUsage, Cand.VGPRUsage, in tryCandidateTopDown()
234 TryCand, Cand, RegUsage)) in tryCandidateTopDown()
238 if (TryCand.SU->NodeNum < Cand.SU->NodeNum) { in tryCandidateTopDown()
1526 bool SIScheduleBlockScheduler::tryCandidateLatency(SIBlockSchedCandidate &Cand, in tryCandidateLatency() argument
1528 if (!Cand.isValid()) { in tryCandidateLatency()
1535 Cand.LastPosHighLatParentScheduled, TryCand, Cand, Latency)) in tryCandidateLatency()
1538 if (SISched::tryGreater(TryCand.IsHighLatency, Cand.IsHighLatency, in tryCandidateLatency()
1539 TryCand, Cand, Latency)) in tryCandidateLatency()
1541 if (TryCand.IsHighLatency && SISched::tryGreater(TryCand.Height, Cand.Height, in tryCandidateLatency()
1542 TryCand, Cand, Depth)) in tryCandidateLatency()
1545 Cand.NumHighLatencySuccessors, in tryCandidateLatency()
1546 TryCand, Cand, Successor)) in tryCandidateLatency()
1551 bool SIScheduleBlockScheduler::tryCandidateRegUsage(SIBlockSchedCandidate &Cand, in tryCandidateRegUsage() argument
1553 if (!Cand.isValid()) { in tryCandidateRegUsage()
1558 if (SISched::tryLess(TryCand.VGPRUsageDiff > 0, Cand.VGPRUsageDiff > 0, in tryCandidateRegUsage()
1559 TryCand, Cand, RegUsage)) in tryCandidateRegUsage()
1562 Cand.NumSuccessors > 0, in tryCandidateRegUsage()
1563 TryCand, Cand, Successor)) in tryCandidateRegUsage()
1565 if (SISched::tryGreater(TryCand.Height, Cand.Height, TryCand, Cand, Depth)) in tryCandidateRegUsage()
1567 if (SISched::tryLess(TryCand.VGPRUsageDiff, Cand.VGPRUsageDiff, in tryCandidateRegUsage()
1568 TryCand, Cand, RegUsage)) in tryCandidateRegUsage()
1574 SIBlockSchedCandidate Cand; in pickBlock() local
1598 Cand.Block = nullptr; in pickBlock()
1618 if (!tryCandidateRegUsage(Cand, TryCand) && in pickBlock()
1620 tryCandidateLatency(Cand, TryCand); in pickBlock()
1622 if (!tryCandidateLatency(Cand, TryCand)) in pickBlock()
1623 tryCandidateRegUsage(Cand, TryCand); in pickBlock()
1626 Cand.setBest(TryCand); in pickBlock()
1628 LLVM_DEBUG(dbgs() << "Best Current Choice: " << Cand.Block->getID() << ' ' in pickBlock()
1629 << getReasonStr(Cand.Reason) << '\n'); in pickBlock()
1633 LLVM_DEBUG(dbgs() << "Picking: " << Cand.Block->getID() << '\n'; in pickBlock()
1635 << (Cand.IsHighLatency ? "yes\n" : "no\n"); in pickBlock()
1637 << Cand.LastPosHighLatParentScheduled << '\n'; in pickBlock()
1638 dbgs() << "VGPRUsageDiff: " << Cand.VGPRUsageDiff << '\n'; in pickBlock()
1641 Block = Cand.Block; in pickBlock()