Chromium Code Reviews| Index: src/x64/ic-x64.cc |
| diff --git a/src/x64/ic-x64.cc b/src/x64/ic-x64.cc |
| index ea118d076383cb32cff4ea8b46b0ce983a2e17ae..5dd863123378755cd8b8c9708ee5b31f62d5b627 100644 |
| --- a/src/x64/ic-x64.cc |
| +++ b/src/x64/ic-x64.cc |
| @@ -421,9 +421,9 @@ void KeyedLoadIC::GenerateGeneric(MacroAssembler* masm) { |
| // based on 32 bits of the map pointer and the string hash. |
| __ movp(rbx, FieldOperand(rdx, HeapObject::kMapOffset)); |
| __ movl(rcx, rbx); |
| - __ shr(rcx, Immediate(KeyedLookupCache::kMapHashShift)); |
| + __ shrp(rcx, Immediate(KeyedLookupCache::kMapHashShift)); |
|
Toon Verwaest
2014/03/27 16:12:42
shrl?
haitao.feng
2014/03/28 04:14:40
Done.
|
| __ movl(rdi, FieldOperand(rax, String::kHashFieldOffset)); |
|
Toon Verwaest
2014/03/27 16:12:42
shrl?
haitao.feng
2014/03/28 04:14:40
Done.
|
| - __ shr(rdi, Immediate(String::kHashShift)); |
| + __ shrp(rdi, Immediate(String::kHashShift)); |
| __ xorp(rcx, rdi); |
| int mask = (KeyedLookupCache::kCapacityMask & KeyedLookupCache::kHashMask); |
| __ andp(rcx, Immediate(mask)); |
| @@ -439,7 +439,7 @@ void KeyedLoadIC::GenerateGeneric(MacroAssembler* masm) { |
| for (int i = 0; i < kEntriesPerBucket - 1; i++) { |
| Label try_next_entry; |
| __ movp(rdi, rcx); |
| - __ shl(rdi, Immediate(kPointerSizeLog2 + 1)); |
| + __ shlp(rdi, Immediate(kPointerSizeLog2 + 1)); |
| __ LoadAddress(kScratchRegister, cache_keys); |
| int off = kPointerSize * i * 2; |
| __ cmpp(rbx, Operand(kScratchRegister, rdi, times_1, off)); |