Changeset View
Changeset View
Standalone View
Standalone View
llvm/lib/Target/AMDGPU/GCNMinRegStrategy.cpp
Show First 20 Lines • Show All 242 Lines • ▼ Show 20 Lines | GCNMinRegScheduler::schedule(ArrayRef<const SUnit*> TopRoots, | ||||
initNumPreds(SUnits); | initNumPreds(SUnits); | ||||
int StepNo = 0; | int StepNo = 0; | ||||
for (auto SU : TopRoots) { | for (auto SU : TopRoots) { | ||||
RQ.push_back(*new (Alloc.Allocate()) Candidate(SU, StepNo)); | RQ.push_back(*new (Alloc.Allocate()) Candidate(SU, StepNo)); | ||||
} | } | ||||
releaseSuccessors(&DAG.EntrySU, StepNo); | |||||
while (!RQ.empty()) { | while (!RQ.empty()) { | ||||
LLVM_DEBUG(dbgs() << "\n=== Picking candidate, Step = " << StepNo | LLVM_DEBUG(dbgs() << "\n=== Picking candidate, Step = " << StepNo | ||||
<< "\n" | << "\n" | ||||
"Ready queue:"; | "Ready queue:"; | ||||
for (auto &C | for (auto &C | ||||
: RQ) dbgs() | : RQ) dbgs() | ||||
<< ' ' << C.SU->NodeNum << "(P" << C.Priority << ')'; | << ' ' << C.SU->NodeNum << "(P" << C.Priority << ')'; | ||||
Show All 31 Lines |