| Index: src/arm64/code-stubs-arm64.cc
|
| diff --git a/src/arm64/code-stubs-arm64.cc b/src/arm64/code-stubs-arm64.cc
|
| index 8e5fa8a35437e2aa9cbfc9b31541ab4702db2ef9..9a26c3d60b720c733870031ee79f9fc1f868d1ff 100644
|
| --- a/src/arm64/code-stubs-arm64.cc
|
| +++ b/src/arm64/code-stubs-arm64.cc
|
| @@ -3181,26 +3181,20 @@ void CallICStub::Generate(MacroAssembler* masm) {
|
| void CallICStub::GenerateMiss(MacroAssembler* masm) {
|
| ASM_LOCATION("CallICStub[Miss]");
|
|
|
| - // Get the receiver of the function from the stack.
|
| - __ Peek(x4, arg_count() * kPointerSize);
|
| + FrameScope scope(masm, StackFrame::INTERNAL);
|
|
|
| - {
|
| - FrameScope scope(masm, StackFrame::INTERNAL);
|
| + // Push the receiver and the function and feedback info.
|
| + __ Push(x1, x2, x3);
|
|
|
| - // Push the receiver and the function and feedback info.
|
| - __ Push(x4, x1, x2, x3);
|
| + // 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, 3);
|
|
|
| - ExternalReference miss = ExternalReference(IC_Utility(id),
|
| - masm->isolate());
|
| - __ CallExternalReference(miss, 4);
|
| -
|
| - // Move result to edi and exit the internal frame.
|
| - __ Mov(x1, x0);
|
| - }
|
| + // Move result to edi and exit the internal frame.
|
| + __ Mov(x1, x0);
|
| }
|
|
|
|
|
|
|