Index: src/ia32/full-codegen-ia32.cc |
diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc |
index d3b1dd8497a879f81f7a619c4dde5524037daed1..e43e5259e89cb5fae5f2669089781e8524c0af1d 100644 |
--- a/src/ia32/full-codegen-ia32.cc |
+++ b/src/ia32/full-codegen-ia32.cc |
@@ -2769,11 +2769,11 @@ void FullCodeGenerator::VisitCall(Call* expr) { |
{ PreservePositionScope scope(masm()->positions_recorder()); |
VisitForStackValue(callee); |
} |
- // Push the hole as receiver. |
- // It will be correctly replaced in the call stub. |
- __ push(Immediate(isolate()->factory()->the_hole_value())); |
+ // Load global receiver object. |
+ __ mov(ebx, GlobalObjectOperand()); |
+ __ push(FieldOperand(ebx, GlobalObject::kGlobalReceiverOffset)); |
// Emit function call. |
- EmitCallWithStub(expr, RECEIVER_IS_IMPLICIT); |
+ EmitCallWithStub(expr, NO_CALL_FUNCTION_FLAGS); |
} |
#ifdef DEBUG |