| Index: src/compiler/graph-reducer.cc
|
| diff --git a/src/compiler/graph-reducer.cc b/src/compiler/graph-reducer.cc
|
| index 1be0b6dec7b6ecbfe4d38a3d19f9e7329dc69fdb..6f583d6b6ac4e3f59a2c94ed847c8b600b2f8c75 100644
|
| --- a/src/compiler/graph-reducer.cc
|
| +++ b/src/compiler/graph-reducer.cc
|
| @@ -23,6 +23,9 @@ enum class GraphReducer::State : uint8_t {
|
| };
|
|
|
|
|
| +void Reducer::Finalize() {}
|
| +
|
| +
|
| GraphReducer::GraphReducer(Zone* zone, Graph* graph, Node* dead)
|
| : graph_(graph),
|
| dead_(dead),
|
| @@ -58,7 +61,11 @@ void GraphReducer::ReduceNode(Node* node) {
|
| Push(node);
|
| }
|
| } else {
|
| - break;
|
| + // Run all finalizers.
|
| + for (Reducer* const reducer : reducers_) reducer->Finalize();
|
| +
|
| + // Check if we have new nodes to revisit.
|
| + if (revisit_.empty()) break;
|
| }
|
| }
|
| DCHECK(revisit_.empty());
|
|
|