[llvm-commits] CVS: llvm/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp

Chris Lattner lattner at cs.uiuc.edu
Mon Mar 6 09:58:20 PST 2006



Changes in directory llvm/lib/CodeGen/SelectionDAG:

ScheduleDAGList.cpp updated: 1.18 -> 1.19
---
Log message:

update file comment


---
Diffs of the changes:  (+8 -3)

 ScheduleDAGList.cpp |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)


Index: llvm/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp:1.18 llvm/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp:1.19
--- llvm/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp:1.18	Mon Mar  6 01:31:44 2006
+++ llvm/lib/CodeGen/SelectionDAG/ScheduleDAGList.cpp	Mon Mar  6 11:58:04 2006
@@ -7,9 +7,14 @@
 //
 //===----------------------------------------------------------------------===//
 //
-// This implements a simple two pass scheduler.  The first pass attempts to push
-// backward any lengthy instructions and critical paths.  The second pass packs
-// instructions into semi-optimal time slots.
+// This implements bottom-up and top-down list schedulers, using standard
+// algorithms.  The basic approach uses a priority queue of available nodes to
+// schedule.  One at a time, nodes are taken from the priority queue (thus in
+// priority order), checked for legality to schedule, and emitted if legal.
+//
+// Nodes may not be legal to schedule either due to structural hazards (e.g.
+// pipeline or resource constraints) or because an input to the instruction has
+// not completed execution.
 //
 //===----------------------------------------------------------------------===//
 






More information about the llvm-commits mailing list