Fix the check for an empty basic block to check for an empty SUnits

array instead, since this is what the scheduler actually cares about.
And remove a check that is unnecessary, since it can assume that
SUnits isn't empty.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62362 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman
2009-01-16 21:37:14 +00:00
parent febf71db2d
commit 8554449e31

View File

@@ -264,7 +264,7 @@ static SDep *CriticalPathStep(SUnit *SU) {
bool SchedulePostRATDList::BreakAntiDependencies() { bool SchedulePostRATDList::BreakAntiDependencies() {
// The code below assumes that there is at least one instruction, // The code below assumes that there is at least one instruction,
// so just duck out immediately if the block is empty. // so just duck out immediately if the block is empty.
if (BB->empty()) return false; if (SUnits.empty()) return false;
// Find the node at the bottom of the critical path. // Find the node at the bottom of the critical path.
SUnit *Max = 0; SUnit *Max = 0;
@@ -275,7 +275,7 @@ bool SchedulePostRATDList::BreakAntiDependencies() {
} }
DOUT << "Critical path has total latency " DOUT << "Critical path has total latency "
<< (Max ? Max->getDepth() + Max->Latency : 0) << "\n"; << (Max->getDepth() + Max->Latency) << "\n";
// Track progress along the critical path through the SUnit graph as we walk // Track progress along the critical path through the SUnit graph as we walk
// the instructions. // the instructions.