| Index: src/x64/full-codegen-x64.cc
 | 
| diff --git a/src/x64/full-codegen-x64.cc b/src/x64/full-codegen-x64.cc
 | 
| index 97168cdce4615ebbe96ddd9ed1dd0c460eee885f..781f5c2e39d0c5eb39fb3806caa3283ee46e97e3 100644
 | 
| --- a/src/x64/full-codegen-x64.cc
 | 
| +++ b/src/x64/full-codegen-x64.cc
 | 
| @@ -3043,15 +3043,14 @@ void FullCodeGenerator::EmitMathSqrt(ZoneList<Expression*>* args) {
 | 
|  void FullCodeGenerator::EmitCallFunction(ZoneList<Expression*>* args) {
 | 
|    ASSERT(args->length() >= 2);
 | 
|  
 | 
| -  int arg_count = args->length() - 2;  // For receiver and function.
 | 
| -  VisitForStackValue(args->at(0));  // Receiver.
 | 
| -  for (int i = 0; i < arg_count; i++) {
 | 
| -    VisitForStackValue(args->at(i + 1));
 | 
| +  int arg_count = args->length() - 2;  // 2 ~ receiver and function.
 | 
| +  for (int i = 0; i < arg_count + 1; i++) {
 | 
| +    VisitForStackValue(args->at(i));
 | 
|    }
 | 
| -  VisitForAccumulatorValue(args->at(arg_count + 1));  // Function.
 | 
| +  VisitForAccumulatorValue(args->last());  // Function.
 | 
|  
 | 
| -  // InvokeFunction requires function in rdi. Move it in there.
 | 
| -  if (!result_register().is(rdi)) __ movq(rdi, result_register());
 | 
| +  // InvokeFunction requires the function in rdi. Move it in there.
 | 
| +  __ movq(rdi, result_register());
 | 
|    ParameterCount count(arg_count);
 | 
|    __ InvokeFunction(rdi, count, CALL_FUNCTION);
 | 
|    __ movq(rsi, Operand(rbp, StandardFrameConstants::kContextOffset));
 | 
| 
 |