parent
a00c61932d
commit
01aa752a36
|
|
@ -7,9 +7,14 @@
|
||||||
//
|
//
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// This implements a simple two pass scheduler. The first pass attempts to push
|
// This implements bottom-up and top-down list schedulers, using standard
|
||||||
// backward any lengthy instructions and critical paths. The second pass packs
|
// algorithms. The basic approach uses a priority queue of available nodes to
|
||||||
// instructions into semi-optimal time slots.
|
// 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.
|
||||||
//
|
//
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue