Chromium Code Reviews| Index: src/a64/ic-a64.cc |
| diff --git a/src/a64/ic-a64.cc b/src/a64/ic-a64.cc |
| index 18677f79d7ff42f0a5dc883065519099a01383be..778b1a8d79c7b62bb30a2fa4c91723b8f53bf4b0 100644 |
| --- a/src/a64/ic-a64.cc |
| +++ b/src/a64/ic-a64.cc |
| @@ -392,8 +392,11 @@ static MemOperand GenerateMappedArgumentsLookup(MacroAssembler* masm, |
| // Load value from context and return it. |
| __ Ldr(scratch2, FieldMemOperand(map, FixedArray::kHeaderSize)); |
| __ SmiUntag(scratch1); |
| - __ Add(scratch2, scratch2, Context::kHeaderSize - kHeapObjectTag); |
| - return MemOperand(scratch2, scratch1, LSL, kPointerSizeLog2); |
| + __ Mov(scratch1, Operand(scratch1, LSL, kPointerSizeLog2)); |
|
m.m.capewell
2014/03/19 14:11:44
Might be clearer as Lsl(scratch1, scratch1, kPoint
ulan
2014/03/19 14:20:27
Done.
|
| + __ Add(scratch1, scratch1, Context::kHeaderSize - kHeapObjectTag); |
| + // The base of the result (scratch2) is passed to RecordWrite in |
| + // KeyedStoreIC::GenerateSloppyArguments and it must be a HeapObject. |
| + return MemOperand(scratch2, scratch1); |
| } |