aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp')
-rw-r--r--lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp b/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
index 2cda59758c..17aaa75c9e 100644
--- a/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
+++ b/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
@@ -1269,15 +1269,18 @@ bool bu_ls_rr_sort::operator()(const SUnit *left, const SUnit *right) const {
unsigned RScratch = calcMaxScratches(right);
if (LScratch > RScratch)
return true;
- else if (LScratch == RScratch)
+ else if (LScratch == RScratch) {
if (left->Height > right->Height)
return true;
- else if (left->Height == right->Height)
+ else if (left->Height == right->Height) {
if (left->Depth < right->Depth)
return true;
- else if (left->Depth == right->Depth)
+ else if (left->Depth == right->Depth) {
if (left->CycleBound > right->CycleBound)
return true;
+ }
+ }
+ }
}
}
return false;
@@ -1509,15 +1512,19 @@ bool td_ls_rr_sort::operator()(const SUnit *left, const SUnit *right) const {
if (LPriority+LBonus < RPriority+RBonus)
return true;
- else if (LPriority == RPriority)
+ else if (LPriority == RPriority) {
if (left->Depth < right->Depth)
return true;
- else if (left->Depth == right->Depth)
+ else if (left->Depth == right->Depth) {
if (left->NumSuccsLeft > right->NumSuccsLeft)
return true;
- else if (left->NumSuccsLeft == right->NumSuccsLeft)
+ else if (left->NumSuccsLeft == right->NumSuccsLeft) {
if (left->CycleBound > right->CycleBound)
return true;
+ }
+ }
+ }
+
return false;
}