Index: src/compiler/pipeline.cc |
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc |
index 7e574b6df85c284a2ed35c86928b5b0253e01143..87f795f88db54524b6c36f6a6e7c7e9a52f1ab4f 100644 |
--- a/src/compiler/pipeline.cc |
+++ b/src/compiler/pipeline.cc |
@@ -63,6 +63,7 @@ |
#include "src/compiler/store-store-elimination.h" |
#include "src/compiler/tail-call-optimization.h" |
#include "src/compiler/type-hint-analyzer.h" |
+#include "src/compiler/typed-optimization.h" |
#include "src/compiler/typer.h" |
#include "src/compiler/value-numbering-reducer.h" |
#include "src/compiler/verifier.h" |
@@ -922,6 +923,12 @@ struct TypedLoweringPhase { |
JSTypedLowering typed_lowering(&graph_reducer, data->info()->dependencies(), |
typed_lowering_flags, data->jsgraph(), |
temp_zone); |
+ TypedOptimization typed_optimization( |
+ &graph_reducer, data->info()->dependencies(), |
+ data->info()->is_deoptimization_enabled() |
+ ? TypedOptimization::kDeoptimizationEnabled |
+ : TypedOptimization::kNoFlags, |
+ data->jsgraph()); |
SimplifiedOperatorReducer simple_reducer(&graph_reducer, data->jsgraph()); |
CheckpointElimination checkpoint_elimination(&graph_reducer); |
CommonOperatorReducer common_reducer(&graph_reducer, data->graph(), |
@@ -931,6 +938,7 @@ struct TypedLoweringPhase { |
if (data->info()->is_deoptimization_enabled()) { |
AddReducer(data, &graph_reducer, &create_lowering); |
} |
+ AddReducer(data, &graph_reducer, &typed_optimization); |
AddReducer(data, &graph_reducer, &typed_lowering); |
AddReducer(data, &graph_reducer, &simple_reducer); |
AddReducer(data, &graph_reducer, &checkpoint_elimination); |