| Index: src/ic/mips64/stub-cache-mips64.cc
|
| diff --git a/src/ic/mips64/stub-cache-mips64.cc b/src/ic/mips64/stub-cache-mips64.cc
|
| index b1ec6407190080c52ae708f864040dd10fa51fab..4ab9f8e5b2ba3a3cb4dd65f8ec13e950e64b4f2e 100644
|
| --- a/src/ic/mips64/stub-cache-mips64.cc
|
| +++ b/src/ic/mips64/stub-cache-mips64.cc
|
| @@ -119,8 +119,14 @@ void StubCache::GenerateProbe(MacroAssembler* masm, Code::Kind ic_kind,
|
| // extra3 don't conflict with 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 = LoadWithVectorDescriptor::SlotRegister();
|
| + Register vector, slot;
|
| + if (ic_kind == Code::STORE_IC || ic_kind == Code::KEYED_STORE_IC) {
|
| + vector = VectorStoreICDescriptor::VectorRegister();
|
| + slot = VectorStoreICDescriptor::SlotRegister();
|
| + } else {
|
| + vector = LoadWithVectorDescriptor::VectorRegister();
|
| + slot = LoadWithVectorDescriptor::SlotRegister();
|
| + }
|
| DCHECK(!AreAliased(vector, slot, scratch, extra, extra2, extra3));
|
| }
|
| #endif
|
|
|