Index: src/mips/ic-mips.cc |
diff --git a/src/mips/ic-mips.cc b/src/mips/ic-mips.cc |
index 16f969546bce1fd955225f18fcd78349739505c5..36d71151418b4d35c03076c5f4e13c511b26404d 100644 |
--- a/src/mips/ic-mips.cc |
+++ b/src/mips/ic-mips.cc |
@@ -1006,8 +1006,9 @@ void KeyedStoreIC::GenerateNonStrictArguments(MacroAssembler* masm) { |
MemOperand mapped_location = |
GenerateMappedArgumentsLookup(masm, a2, a1, a3, t0, t1, ¬in, &slow); |
__ sw(a0, mapped_location); |
- __ Addu(t2, a3, t1); |
- __ RecordWrite(a3, t2, t5); |
+ // Verify mapped_location MemOperand is register, with no offset. |
+ ASSERT_EQ(mapped_location.offset(), 0); |
+ __ RecordWrite(a3, mapped_location.rm(), t5); |
__ Ret(USE_DELAY_SLOT); |
__ mov(v0, a0); // (In delay slot) return the value stored in v0. |
__ bind(¬in); |
@@ -1015,8 +1016,8 @@ void KeyedStoreIC::GenerateNonStrictArguments(MacroAssembler* masm) { |
MemOperand unmapped_location = |
GenerateUnmappedArgumentsLookup(masm, a1, a3, t0, &slow); |
__ sw(a0, unmapped_location); |
- __ Addu(t2, a3, t0); |
- __ RecordWrite(a3, t2, t5); |
+ ASSERT_EQ(unmapped_location.offset(), 0); |
+ __ RecordWrite(a3, unmapped_location.rm(), t5); |
__ Ret(USE_DELAY_SLOT); |
__ mov(v0, a0); // (In delay slot) return the value stored in v0. |
__ bind(&slow); |