Chromium Code Reviews| Index: src/ic/x64/stub-cache-x64.cc |
| diff --git a/src/ic/x64/stub-cache-x64.cc b/src/ic/x64/stub-cache-x64.cc |
| index a54ddcaf96c25aaa0609cfb83e598a691efd8d6d..8aff1ea48c8c7f4ed785ac12908fd3a0cfadb61e 100644 |
| --- a/src/ic/x64/stub-cache-x64.cc |
| +++ b/src/ic/x64/stub-cache-x64.cc |
| @@ -41,14 +41,14 @@ static void ProbeTable(Isolate* isolate, MacroAssembler* masm, |
| __ LoadAddress(kScratchRegister, key_offset); |
| // Check that the key in the entry matches the name. |
| - // Multiply entry offset by 16 to get the entry address. Since the |
| - // offset register already holds the entry offset times four, multiply |
| - // by a further four. |
| - __ cmpl(name, Operand(kScratchRegister, offset, scale_factor, 0)); |
| + __ cmpp(name, Operand(kScratchRegister, offset, scale_factor, 0)); |
|
mvstanton
2014/10/08 14:04:51
+1, simpler :)
|
| __ j(not_equal, &miss); |
| // Get the map entry from the cache. |
| // Use key_offset + kPointerSize * 2, rather than loading map_offset. |
| + DCHECK(isolate->stub_cache()->map_reference(table).address() - |
| + isolate->stub_cache()->key_reference(table).address() == |
| + kPointerSize * 2); |
| __ movp(kScratchRegister, |
| Operand(kScratchRegister, offset, scale_factor, kPointerSize * 2)); |
| __ cmpp(kScratchRegister, FieldOperand(receiver, HeapObject::kMapOffset)); |