| Index: src/full-codegen/ia32/full-codegen-ia32.cc
|
| diff --git a/src/full-codegen/ia32/full-codegen-ia32.cc b/src/full-codegen/ia32/full-codegen-ia32.cc
|
| index 26cf3c0f1ebd0a18c7f5c50102a60cd78b100770..6725a410b382f630f0444ae7b5672880779ab36f 100644
|
| --- a/src/full-codegen/ia32/full-codegen-ia32.cc
|
| +++ b/src/full-codegen/ia32/full-codegen-ia32.cc
|
| @@ -3243,10 +3243,12 @@ void FullCodeGenerator::EmitCreateIterResultObject(CallRuntime* expr) {
|
|
|
|
|
| void FullCodeGenerator::EmitLoadJSRuntimeFunction(CallRuntime* expr) {
|
| + // Push function.
|
| + __ LoadGlobalFunction(expr->context_index(), eax);
|
| + PushOperand(eax);
|
| +
|
| // Push undefined as receiver.
|
| PushOperand(isolate()->factory()->undefined_value());
|
| -
|
| - __ LoadGlobalFunction(expr->context_index(), eax);
|
| }
|
|
|
|
|
| @@ -3271,10 +3273,6 @@ void FullCodeGenerator::VisitCallRuntime(CallRuntime* expr) {
|
| Comment cmnt(masm_, "[ CallRuntime");
|
| EmitLoadJSRuntimeFunction(expr);
|
|
|
| - // Push the target function under the receiver.
|
| - PushOperand(Operand(esp, 0));
|
| - __ mov(Operand(esp, kPointerSize), eax);
|
| -
|
| // Push the arguments ("left-to-right").
|
| for (int i = 0; i < arg_count; i++) {
|
| VisitForStackValue(args->at(i));
|
|
|