Index: src/ia32/ic-ia32.cc |
=================================================================== |
--- src/ia32/ic-ia32.cc (revision 8365) |
+++ src/ia32/ic-ia32.cc (working copy) |
@@ -801,12 +801,18 @@ |
Operand mapped_location = |
GenerateMappedArgumentsLookup(masm, edx, ecx, ebx, edi, ¬in, &slow); |
__ mov(mapped_location, eax); |
+ __ lea(ecx, mapped_location); |
+ __ mov(edx, eax); |
+ __ RecordWrite(ebx, ecx, edx); |
__ Ret(); |
__ bind(¬in); |
// The unmapped lookup expects that the parameter map is in ebx. |
Operand unmapped_location = |
GenerateUnmappedArgumentsLookup(masm, ecx, ebx, edi, &slow); |
__ mov(unmapped_location, eax); |
+ __ lea(edi, unmapped_location); |
+ __ mov(edx, eax); |
+ __ RecordWrite(ebx, edi, edx); |
__ Ret(); |
__ bind(&slow); |
GenerateMiss(masm, false); |