| Index: src/compiler/scheduler.h
|
| diff --git a/src/compiler/scheduler.h b/src/compiler/scheduler.h
|
| index b73d1bb19cfbf29a5ffa7197262175f07ba06faa..2839a0cb7a0585eba86bd338bbed5ec7f5e0bc8a 100644
|
| --- a/src/compiler/scheduler.h
|
| +++ b/src/compiler/scheduler.h
|
| @@ -16,6 +16,8 @@ namespace v8 {
|
| namespace internal {
|
| namespace compiler {
|
|
|
| +class SpecialRPONumberer;
|
| +
|
| // Computes a schedule from a graph, placing nodes into basic blocks and
|
| // ordering the basic blocks in the special RPO order.
|
| class Scheduler {
|
| @@ -60,6 +62,7 @@ class Scheduler {
|
| NodeVector schedule_root_nodes_; // Fixed root nodes seed the worklist.
|
| ZoneQueue<Node*> schedule_queue_; // Worklist of schedulable nodes.
|
| ZoneVector<SchedulerData> node_data_; // Per-node data for all nodes.
|
| + SpecialRPONumberer* special_rpo_; // Special RPO numbering of blocks.
|
|
|
| Scheduler(Zone* zone, Graph* graph, Schedule* schedule);
|
|
|
| @@ -73,7 +76,6 @@ class Scheduler {
|
| void IncrementUnscheduledUseCount(Node* node, int index, Node* from);
|
| void DecrementUnscheduledUseCount(Node* node, int index, Node* from);
|
|
|
| - inline int GetRPONumber(BasicBlock* block);
|
| BasicBlock* GetCommonDominator(BasicBlock* b1, BasicBlock* b2);
|
|
|
| // Phase 1: Build control-flow graph.
|
| @@ -97,6 +99,9 @@ class Scheduler {
|
| friend class ScheduleLateNodeVisitor;
|
| void ScheduleLate();
|
|
|
| + // Phase 6: Seal the final schedule.
|
| + void SealFinalSchedule();
|
| +
|
| void FuseFloatingControl(BasicBlock* block, Node* node);
|
| void MovePlannedNodes(BasicBlock* from, BasicBlock* to);
|
| };
|
|
|