| 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 39080189276c72f848a1ca2ed6db179cebaef7ba..9a9dfe9f4bc34e76b138b2d8249356182411b4dc 100644
|
| --- a/src/ic/x64/stub-cache-x64.cc
|
| +++ b/src/ic/x64/stub-cache-x64.cc
|
| @@ -110,9 +110,16 @@ void StubCache::GenerateProbe(MacroAssembler* masm, Code::Kind ic_kind,
|
| // the vector and slot registers, which need to be preserved for a handler
|
| // call or miss.
|
| if (IC::ICUseVector(ic_kind)) {
|
| - Register vector = LoadWithVectorDescriptor::VectorRegister();
|
| - Register slot = LoadDescriptor::SlotRegister();
|
| - DCHECK(!AreAliased(vector, slot, scratch));
|
| + if (ic_kind == Code::LOAD_IC || ic_kind == Code::KEYED_LOAD_IC) {
|
| + Register vector = LoadWithVectorDescriptor::VectorRegister();
|
| + Register slot = LoadDescriptor::SlotRegister();
|
| + DCHECK(!AreAliased(vector, slot, scratch));
|
| + } else {
|
| + DCHECK(ic_kind == Code::STORE_IC || ic_kind == Code::KEYED_STORE_IC);
|
| + Register vector = VectorStoreICDescriptor::VectorRegister();
|
| + Register slot = VectorStoreICDescriptor::SlotRegister();
|
| + DCHECK(!AreAliased(vector, slot, scratch));
|
| + }
|
| }
|
| #endif
|
|
|
|
|