Index: src/compiler/pipeline.cc |
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc |
index 165a7377e7133871f1206a2daf86d1398e9afca8..0e806238f1ed84c445dda34780012e0c18623b80 100644 |
--- a/src/compiler/pipeline.cc |
+++ b/src/compiler/pipeline.cc |
@@ -13,6 +13,7 @@ |
#include "src/compiler/basic-block-instrumentor.h" |
#include "src/compiler/change-lowering.h" |
#include "src/compiler/code-generator.h" |
+#include "src/compiler/common-operator-reducer.h" |
#include "src/compiler/control-reducer.h" |
#include "src/compiler/graph-replay.h" |
#include "src/compiler/graph-visualizer.h" |
@@ -421,12 +422,14 @@ struct TypedLoweringPhase { |
JSBuiltinReducer builtin_reducer(data->jsgraph()); |
JSTypedLowering typed_lowering(data->jsgraph(), temp_zone); |
SimplifiedOperatorReducer simple_reducer(data->jsgraph()); |
+ CommonOperatorReducer common_reducer; |
GraphReducer graph_reducer(data->graph(), temp_zone); |
graph_reducer.AddReducer(&vn_reducer); |
graph_reducer.AddReducer(&builtin_reducer); |
graph_reducer.AddReducer(&typed_lowering); |
graph_reducer.AddReducer(&load_elimination); |
graph_reducer.AddReducer(&simple_reducer); |
+ graph_reducer.AddReducer(&common_reducer); |
graph_reducer.ReduceGraph(); |
} |
}; |
@@ -443,10 +446,12 @@ struct SimplifiedLoweringPhase { |
ValueNumberingReducer vn_reducer(temp_zone); |
SimplifiedOperatorReducer simple_reducer(data->jsgraph()); |
MachineOperatorReducer machine_reducer(data->jsgraph()); |
+ CommonOperatorReducer common_reducer; |
GraphReducer graph_reducer(data->graph(), temp_zone); |
graph_reducer.AddReducer(&vn_reducer); |
graph_reducer.AddReducer(&simple_reducer); |
graph_reducer.AddReducer(&machine_reducer); |
+ graph_reducer.AddReducer(&common_reducer); |
graph_reducer.ReduceGraph(); |
} |
}; |
@@ -463,11 +468,13 @@ struct ChangeLoweringPhase { |
SimplifiedOperatorReducer simple_reducer(data->jsgraph()); |
ChangeLowering lowering(data->jsgraph(), &linkage); |
MachineOperatorReducer machine_reducer(data->jsgraph()); |
+ CommonOperatorReducer common_reducer; |
GraphReducer graph_reducer(data->graph(), temp_zone); |
graph_reducer.AddReducer(&vn_reducer); |
graph_reducer.AddReducer(&simple_reducer); |
graph_reducer.AddReducer(&lowering); |
graph_reducer.AddReducer(&machine_reducer); |
+ graph_reducer.AddReducer(&common_reducer); |
graph_reducer.ReduceGraph(); |
} |
}; |