| Index: src/arm/lithium-codegen-arm.cc
|
| diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc
|
| index 2a707a83fab6b851a1b80400a143fcf7f9d0e5fa..c4ad74889fec66b22ba8dbf7d9cf1bef1392b5b7 100644
|
| --- a/src/arm/lithium-codegen-arm.cc
|
| +++ b/src/arm/lithium-codegen-arm.cc
|
| @@ -2760,15 +2760,10 @@ void LCodeGen::DoArgumentsLength(LArgumentsLength* instr) {
|
| }
|
|
|
|
|
| -void LCodeGen::DoApplyArguments(LApplyArguments* instr) {
|
| +void LCodeGen::DoWrapReceiver(LWrapReceiver* instr) {
|
| Register receiver = ToRegister(instr->receiver());
|
| Register function = ToRegister(instr->function());
|
| - Register length = ToRegister(instr->length());
|
| - Register elements = ToRegister(instr->elements());
|
| Register scratch = scratch0();
|
| - ASSERT(receiver.is(r0)); // Used for parameter count.
|
| - ASSERT(function.is(r1)); // Required by InvokeFunction.
|
| - ASSERT(ToRegister(instr->result()).is(r0));
|
|
|
| // If the receiver is null or undefined, we have to pass the global
|
| // object as a receiver to normal functions. Values have to be
|
| @@ -2809,6 +2804,18 @@ void LCodeGen::DoApplyArguments(LApplyArguments* instr) {
|
| __ ldr(receiver,
|
| FieldMemOperand(receiver, JSGlobalObject::kGlobalReceiverOffset));
|
| __ bind(&receiver_ok);
|
| +}
|
| +
|
| +
|
| +void LCodeGen::DoApplyArguments(LApplyArguments* instr) {
|
| + Register receiver = ToRegister(instr->receiver());
|
| + Register function = ToRegister(instr->function());
|
| + Register length = ToRegister(instr->length());
|
| + Register elements = ToRegister(instr->elements());
|
| + Register scratch = scratch0();
|
| + ASSERT(receiver.is(r0)); // Used for parameter count.
|
| + ASSERT(function.is(r1)); // Required by InvokeFunction.
|
| + ASSERT(ToRegister(instr->result()).is(r0));
|
|
|
| // Copy the arguments to this function possibly from the
|
| // adaptor frame below it.
|
|
|