| Index: src/x64/code-stubs-x64.cc
|
| diff --git a/src/x64/code-stubs-x64.cc b/src/x64/code-stubs-x64.cc
|
| index 8bc4b59ca4ff1877d881d1df1e49fa514c33fb34..abb3d4a988e58c1cb7ab7e6b16deaaa4892b8007 100644
|
| --- a/src/x64/code-stubs-x64.cc
|
| +++ b/src/x64/code-stubs-x64.cc
|
| @@ -2245,30 +2245,23 @@ void CallICStub::Generate(MacroAssembler* masm) {
|
|
|
|
|
| void CallICStub::GenerateMiss(MacroAssembler* masm) {
|
| - // Get the receiver of the function from the stack; 1 ~ return address.
|
| - __ movp(rcx, Operand(rsp, (arg_count() + 1) * kPointerSize));
|
| + FrameScope scope(masm, StackFrame::INTERNAL);
|
|
|
| - {
|
| - FrameScope scope(masm, StackFrame::INTERNAL);
|
| -
|
| - // Push the receiver and the function and feedback info.
|
| - __ Push(rcx);
|
| - __ Push(rdi);
|
| - __ Push(rbx);
|
| - __ Integer32ToSmi(rdx, rdx);
|
| - __ Push(rdx);
|
| + // Push the receiver and the function and feedback info.
|
| + __ Push(rdi);
|
| + __ Push(rbx);
|
| + __ Integer32ToSmi(rdx, rdx);
|
| + __ Push(rdx);
|
|
|
| - // Call the entry.
|
| - IC::UtilityId id = GetICState() == DEFAULT ? IC::kCallIC_Miss
|
| - : IC::kCallIC_Customization_Miss;
|
| + // Call the entry.
|
| + IC::UtilityId id = GetICState() == DEFAULT ? IC::kCallIC_Miss
|
| + : IC::kCallIC_Customization_Miss;
|
|
|
| - ExternalReference miss = ExternalReference(IC_Utility(id),
|
| - masm->isolate());
|
| - __ CallExternalReference(miss, 4);
|
| + ExternalReference miss = ExternalReference(IC_Utility(id), masm->isolate());
|
| + __ CallExternalReference(miss, 3);
|
|
|
| - // Move result to edi and exit the internal frame.
|
| - __ movp(rdi, rax);
|
| - }
|
| + // Move result to edi and exit the internal frame.
|
| + __ movp(rdi, rax);
|
| }
|
|
|
|
|
|
|