| Index: src/compiler/ast-graph-builder.cc
|
| diff --git a/src/compiler/ast-graph-builder.cc b/src/compiler/ast-graph-builder.cc
|
| index 5dc28518325ddadee2249ecdc856316682d0fb5f..2f44a0107179825287c915bb8db2b5770a2177be 100644
|
| --- a/src/compiler/ast-graph-builder.cc
|
| +++ b/src/compiler/ast-graph-builder.cc
|
| @@ -3431,7 +3431,7 @@ static inline Node* Record(JSTypeFeedbackTable* js_type_feedback, Node* node,
|
|
|
| Node* AstGraphBuilder::BuildKeyedLoad(Node* object, Node* key,
|
| const VectorSlotPair& feedback) {
|
| - const Operator* op = javascript()->LoadProperty(feedback);
|
| + const Operator* op = javascript()->LoadProperty(feedback, language_mode());
|
| return Record(js_type_feedback_, NewNode(op, object, key), feedback.slot());
|
| }
|
|
|
| @@ -3439,8 +3439,8 @@ Node* AstGraphBuilder::BuildKeyedLoad(Node* object, Node* key,
|
| Node* AstGraphBuilder::BuildNamedLoad(Node* object, Handle<Name> name,
|
| const VectorSlotPair& feedback,
|
| ContextualMode mode) {
|
| - const Operator* op =
|
| - javascript()->LoadNamed(MakeUnique(name), feedback, mode);
|
| + const Operator* op = javascript()->LoadNamed(MakeUnique(name), feedback,
|
| + language_mode(), mode);
|
| return Record(js_type_feedback_, NewNode(op, object), feedback.slot());
|
| }
|
|
|
| @@ -3464,8 +3464,9 @@ Node* AstGraphBuilder::BuildNamedSuperLoad(Node* receiver, Node* home_object,
|
| Handle<Name> name,
|
| const VectorSlotPair& feedback) {
|
| Node* name_node = jsgraph()->Constant(name);
|
| - const Operator* op = javascript()->CallRuntime(Runtime::kLoadFromSuper, 3);
|
| - Node* value = NewNode(op, receiver, home_object, name_node);
|
| + Node* language = jsgraph()->Constant(language_mode());
|
| + const Operator* op = javascript()->CallRuntime(Runtime::kLoadFromSuper, 4);
|
| + Node* value = NewNode(op, receiver, home_object, name_node, language);
|
| return Record(js_type_feedback_, value, feedback.slot());
|
| }
|
|
|
| @@ -3473,9 +3474,10 @@ Node* AstGraphBuilder::BuildNamedSuperLoad(Node* receiver, Node* home_object,
|
| Node* AstGraphBuilder::BuildKeyedSuperLoad(Node* receiver, Node* home_object,
|
| Node* key,
|
| const VectorSlotPair& feedback) {
|
| + Node* language = jsgraph()->Constant(language_mode());
|
| const Operator* op =
|
| - javascript()->CallRuntime(Runtime::kLoadKeyedFromSuper, 3);
|
| - Node* value = NewNode(op, receiver, home_object, key);
|
| + javascript()->CallRuntime(Runtime::kLoadKeyedFromSuper, 4);
|
| + Node* value = NewNode(op, receiver, home_object, key, language);
|
| return Record(js_type_feedback_, value, feedback.slot());
|
| }
|
|
|
|
|