| Index: src/interpreter/interpreter.cc
|
| diff --git a/src/interpreter/interpreter.cc b/src/interpreter/interpreter.cc
|
| index a4e5d99838d8f686ff165def79b4740373259d9f..0601082467238b301cb51a81a14b1c0300192aed 100644
|
| --- a/src/interpreter/interpreter.cc
|
| +++ b/src/interpreter/interpreter.cc
|
| @@ -470,9 +470,7 @@ void Interpreter::DoLoadLookupSlot(Runtime::FunctionId function_id,
|
| compiler::InterpreterAssembler* assembler) {
|
| Node* index = __ BytecodeOperandIdx(0);
|
| Node* name = __ LoadConstantPoolEntry(index);
|
| - Node* context = __ GetContext();
|
| - Node* result_pair = __ CallRuntime(function_id, context, name);
|
| - Node* result = __ Projection(0, result_pair);
|
| + Node* result = __ CallRuntime(function_id, name);
|
| __ SetAccumulator(result);
|
| __ Dispatch();
|
| }
|
| @@ -493,7 +491,7 @@ void Interpreter::DoLdaLookupSlot(compiler::InterpreterAssembler* assembler) {
|
| // dynamically without causing a NoReferenceError.
|
| void Interpreter::DoLdaLookupSlotInsideTypeof(
|
| compiler::InterpreterAssembler* assembler) {
|
| - DoLoadLookupSlot(Runtime::kLoadLookupSlotNoReferenceError, assembler);
|
| + DoLoadLookupSlot(Runtime::kLoadLookupSlotInsideTypeof, assembler);
|
| }
|
|
|
|
|
| @@ -522,10 +520,10 @@ void Interpreter::DoStoreLookupSlot(LanguageMode language_mode,
|
| Node* value = __ GetAccumulator();
|
| Node* index = __ BytecodeOperandIdx(0);
|
| Node* name = __ LoadConstantPoolEntry(index);
|
| - Node* context = __ GetContext();
|
| - Node* language_mode_node = __ NumberConstant(language_mode);
|
| - Node* result = __ CallRuntime(Runtime::kStoreLookupSlot, value, context, name,
|
| - language_mode_node);
|
| + Node* result = __ CallRuntime(is_strict(language_mode)
|
| + ? Runtime::kStoreLookupSlot_Strict
|
| + : Runtime::kStoreLookupSlot_Sloppy,
|
| + name, value);
|
| __ SetAccumulator(result);
|
| __ Dispatch();
|
| }
|
|
|