Index: src/ia32/code-stubs-ia32.cc |
diff --git a/src/ia32/code-stubs-ia32.cc b/src/ia32/code-stubs-ia32.cc |
index 78e3a79e7924c7675165f97c54ec298cfa4981cb..819a30587a791c03a80983815f44965d8584f0ad 100644 |
--- a/src/ia32/code-stubs-ia32.cc |
+++ b/src/ia32/code-stubs-ia32.cc |
@@ -2376,29 +2376,22 @@ void CallICStub::Generate(MacroAssembler* masm) { |
void CallICStub::GenerateMiss(MacroAssembler* masm) { |
- // Get the receiver of the function from the stack; 1 ~ return address. |
- __ mov(ecx, Operand(esp, (arg_count() + 1) * kPointerSize)); |
+ FrameScope scope(masm, StackFrame::INTERNAL); |
- { |
- FrameScope scope(masm, StackFrame::INTERNAL); |
- |
- // Push the receiver and the function and feedback info. |
- __ push(ecx); |
- __ push(edi); |
- __ push(ebx); |
- __ push(edx); |
+ // Push the function and feedback info. |
+ __ push(edi); |
+ __ push(ebx); |
+ __ push(edx); |
- // 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. |
- __ mov(edi, eax); |
- } |
+ // Move result to edi and exit the internal frame. |
+ __ mov(edi, eax); |
} |