| Index: src/full-codegen/arm/full-codegen-arm.cc
|
| diff --git a/src/full-codegen/arm/full-codegen-arm.cc b/src/full-codegen/arm/full-codegen-arm.cc
|
| index a7cb24d8f653ff31270446073e3eaf43c0b5d955..07519d576eba02ad01d285ef73638e17c3d79a96 100644
|
| --- a/src/full-codegen/arm/full-codegen-arm.cc
|
| +++ b/src/full-codegen/arm/full-codegen-arm.cc
|
| @@ -3355,11 +3355,13 @@ void FullCodeGenerator::EmitCreateIterResultObject(CallRuntime* expr) {
|
|
|
|
|
| void FullCodeGenerator::EmitLoadJSRuntimeFunction(CallRuntime* expr) {
|
| + // Push function.
|
| + __ LoadNativeContextSlot(expr->context_index(), r0);
|
| + PushOperand(r0);
|
| +
|
| // Push undefined as the receiver.
|
| __ LoadRoot(r0, Heap::kUndefinedValueRootIndex);
|
| PushOperand(r0);
|
| -
|
| - __ LoadNativeContextSlot(expr->context_index(), r0);
|
| }
|
|
|
|
|
| @@ -3384,11 +3386,6 @@ void FullCodeGenerator::VisitCallRuntime(CallRuntime* expr) {
|
| Comment cmnt(masm_, "[ CallRuntime");
|
| EmitLoadJSRuntimeFunction(expr);
|
|
|
| - // Push the target function under the receiver.
|
| - __ ldr(ip, MemOperand(sp, 0));
|
| - PushOperand(ip);
|
| - __ str(r0, MemOperand(sp, kPointerSize));
|
| -
|
| // Push the arguments ("left-to-right").
|
| for (int i = 0; i < arg_count; i++) {
|
| VisitForStackValue(args->at(i));
|
|
|