Index: src/x64/full-codegen-x64.cc |
diff --git a/src/x64/full-codegen-x64.cc b/src/x64/full-codegen-x64.cc |
index a56f22388484b0b0ef1414c1d933dafcf818d7e4..99206b97ed8b66deef2204fcae5a1664cf80440c 100644 |
--- a/src/x64/full-codegen-x64.cc |
+++ b/src/x64/full-codegen-x64.cc |
@@ -2746,11 +2746,11 @@ void FullCodeGenerator::VisitCall(Call* expr) { |
{ PreservePositionScope scope(masm()->positions_recorder()); |
VisitForStackValue(callee); |
} |
- // Load global receiver object. |
- __ movq(rbx, GlobalObjectOperand()); |
- __ push(FieldOperand(rbx, GlobalObject::kGlobalReceiverOffset)); |
+ // Push the hole as receiver. |
+ // It will be correctly replaced in the call stub. |
+ __ PushRoot(Heap::kTheHoleValueRootIndex); |
// Emit function call. |
- EmitCallWithStub(expr, NO_CALL_FUNCTION_FLAGS); |
+ EmitCallWithStub(expr, RECEIVER_IS_IMPLICIT); |
} |
#ifdef DEBUG |