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); |
} |