| Index: src/interpreter/interpreter.cc
|
| diff --git a/src/interpreter/interpreter.cc b/src/interpreter/interpreter.cc
|
| index 1d467e300fe3894a9590bac62d03a7ddca173d33..774aeea8abc47cde70a8c1dadc2e06f6ce9e7e6f 100644
|
| --- a/src/interpreter/interpreter.cc
|
| +++ b/src/interpreter/interpreter.cc
|
| @@ -1770,6 +1770,19 @@ void Interpreter::DoCreateUnmappedArguments(
|
| __ Dispatch();
|
| }
|
|
|
| +// CreateRestArguments
|
| +//
|
| +// Creates a new rest arguments object starting at |rest_index|.
|
| +void Interpreter::DoCreateRestArguments(
|
| + compiler::InterpreterAssembler* assembler) {
|
| + Node* closure = __ LoadRegister(Register::function_closure());
|
| + Node* constant_pool_index = __ BytecodeOperandIdx(0);
|
| + Node* rest_index = __ LoadConstantPoolEntry(constant_pool_index);
|
| + Node* result =
|
| + __ CallRuntime(Runtime::kNewRestArguments_Generic, closure, rest_index);
|
| + __ SetAccumulator(result);
|
| + __ Dispatch();
|
| +}
|
|
|
| // Throw
|
| //
|
|
|