| Index: src/compiler/js-native-context-specialization.h
|
| diff --git a/src/compiler/js-native-context-specialization.h b/src/compiler/js-native-context-specialization.h
|
| index 436949596ca2dfc66bc7113f906adfcd72aae57b..7c8158fd954fdfa87629271280dab598bc45cca3 100644
|
| --- a/src/compiler/js-native-context-specialization.h
|
| +++ b/src/compiler/js-native-context-specialization.h
|
| @@ -57,6 +57,8 @@ class JSNativeContextSpecialization final : public AdvancedReducer {
|
| Reduction ReduceJSInstanceOf(Node* node);
|
| Reduction ReduceJSOrdinaryHasInstance(Node* node);
|
| Reduction ReduceJSLoadContext(Node* node);
|
| + Reduction ReduceJSLoadGlobal(Node* node);
|
| + Reduction ReduceJSStoreGlobal(Node* node);
|
| Reduction ReduceJSLoadNamed(Node* node);
|
| Reduction ReduceJSStoreNamed(Node* node);
|
| Reduction ReduceJSLoadProperty(Node* node);
|
| @@ -84,6 +86,8 @@ class JSNativeContextSpecialization final : public AdvancedReducer {
|
| LanguageMode language_mode,
|
| Handle<TypeFeedbackVector> vector,
|
| FeedbackVectorSlot slot, Node* index = nullptr);
|
| + Reduction ReduceGlobalAccess(Node* node, Node* receiver, Node* value,
|
| + Handle<Name> name, AccessMode access_mode);
|
|
|
| Reduction ReduceSoftDeoptimize(Node* node, DeoptimizeReason reason);
|
|
|
| @@ -156,6 +160,11 @@ class JSNativeContextSpecialization final : public AdvancedReducer {
|
| Handle<SharedFunctionInfo> shared_info,
|
| Handle<FunctionTemplateInfo> function_template_info);
|
|
|
| + // Script context lookup logic.
|
| + struct ScriptContextTableLookupResult;
|
| + bool LookupInScriptContextTable(Handle<Name> name,
|
| + ScriptContextTableLookupResult* result);
|
| +
|
| Graph* graph() const;
|
| JSGraph* jsgraph() const { return jsgraph_; }
|
| Isolate* isolate() const;
|
| @@ -165,12 +174,16 @@ class JSNativeContextSpecialization final : public AdvancedReducer {
|
| SimplifiedOperatorBuilder* simplified() const;
|
| MachineOperatorBuilder* machine() const;
|
| Flags flags() const { return flags_; }
|
| + Handle<JSGlobalObject> global_object() const { return global_object_; }
|
| + Handle<JSGlobalProxy> global_proxy() const { return global_proxy_; }
|
| Handle<Context> native_context() const { return native_context_; }
|
| CompilationDependencies* dependencies() const { return dependencies_; }
|
| Zone* zone() const { return zone_; }
|
|
|
| JSGraph* const jsgraph_;
|
| Flags const flags_;
|
| + Handle<JSGlobalObject> global_object_;
|
| + Handle<JSGlobalProxy> global_proxy_;
|
| Handle<Context> native_context_;
|
| CompilationDependencies* const dependencies_;
|
| Zone* const zone_;
|
|
|