Index: src/compiler/pipeline.cc |
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc |
index 86b5ae5fa5ddea2a7f581ee771d4c7da854b54f4..32319491fa02e6c878812f070903686d8b1b3a7b 100644 |
--- a/src/compiler/pipeline.cc |
+++ b/src/compiler/pipeline.cc |
@@ -31,6 +31,7 @@ |
#include "src/compiler/js-context-specialization.h" |
#include "src/compiler/js-frame-specialization.h" |
#include "src/compiler/js-generic-lowering.h" |
+#include "src/compiler/js-global-object-specialization.h" |
#include "src/compiler/js-inlining-heuristic.h" |
#include "src/compiler/js-intrinsic-lowering.h" |
#include "src/compiler/js-native-context-specialization.h" |
@@ -500,15 +501,24 @@ struct NativeContextSpecializationPhase { |
data->common()); |
CommonOperatorReducer common_reducer(&graph_reducer, data->graph(), |
data->common(), data->machine()); |
+ JSGlobalObjectSpecialization global_object_specialization( |
+ &graph_reducer, data->jsgraph(), |
+ data->info()->is_deoptimization_enabled() |
+ ? JSGlobalObjectSpecialization::kDeoptimizationEnabled |
+ : JSGlobalObjectSpecialization::kNoFlags, |
+ handle(data->info()->global_object(), data->isolate()), |
+ data->info()->dependencies()); |
JSNativeContextSpecialization native_context_specialization( |
&graph_reducer, data->jsgraph(), |
data->info()->is_deoptimization_enabled() |
? JSNativeContextSpecialization::kDeoptimizationEnabled |
: JSNativeContextSpecialization::kNoFlags, |
- handle(data->info()->global_object(), data->isolate()), |
+ handle(data->info()->global_object()->native_context(), |
+ data->isolate()), |
data->info()->dependencies(), temp_zone); |
AddReducer(data, &graph_reducer, &dead_code_elimination); |
AddReducer(data, &graph_reducer, &common_reducer); |
+ AddReducer(data, &graph_reducer, &global_object_specialization); |
AddReducer(data, &graph_reducer, &native_context_specialization); |
graph_reducer.ReduceGraph(); |
} |