| Index: src/ic/arm64/ic-arm64.cc | 
| diff --git a/src/ic/arm64/ic-arm64.cc b/src/ic/arm64/ic-arm64.cc | 
| index 27c4f714311b04d1d7c8360f3542d8eb0f280082..c4c856aab7ef96fc5faffef1b1236d72cee4e543 100644 | 
| --- a/src/ic/arm64/ic-arm64.cc | 
| +++ b/src/ic/arm64/ic-arm64.cc | 
| @@ -696,7 +696,7 @@ void KeyedStoreIC::GenerateMegamorphic(MacroAssembler* masm, | 
| // change the IC from any downstream misses, a dummy vector can be used. | 
| Register vector = VectorStoreICDescriptor::VectorRegister(); | 
| Register slot = VectorStoreICDescriptor::SlotRegister(); | 
| -    DCHECK(!AreAliased(vector, slot, x3, x4, x5, x6)); | 
| +    DCHECK(!AreAliased(vector, slot, x5, x6, x7, x8)); | 
| Handle<TypeFeedbackVector> dummy_vector = | 
| TypeFeedbackVector::DummyVector(masm->isolate()); | 
| int slot_index = dummy_vector->GetIndex( | 
| @@ -708,7 +708,7 @@ void KeyedStoreIC::GenerateMegamorphic(MacroAssembler* masm, | 
| Code::Flags flags = Code::RemoveTypeAndHolderFromFlags( | 
| Code::ComputeHandlerFlags(Code::STORE_IC)); | 
| masm->isolate()->stub_cache()->GenerateProbe(masm, Code::STORE_IC, flags, | 
| -                                               receiver, key, x3, x4, x5, x6); | 
| +                                               receiver, key, x5, x6, x7, x8); | 
| // Cache miss. | 
| __ B(&miss); | 
|  | 
| @@ -789,19 +789,21 @@ void StoreIC::GenerateNormal(MacroAssembler* masm) { | 
| Register value = StoreDescriptor::ValueRegister(); | 
| Register receiver = StoreDescriptor::ReceiverRegister(); | 
| Register name = StoreDescriptor::NameRegister(); | 
| -  Register dictionary = x3; | 
| -  DCHECK(!AreAliased(value, receiver, name, x3, x4, x5)); | 
| +  Register dictionary = x5; | 
| +  DCHECK(!AreAliased(value, receiver, name, | 
| +                     VectorStoreICDescriptor::SlotRegister(), | 
| +                     VectorStoreICDescriptor::VectorRegister(), x5, x6, x7)); | 
|  | 
| __ Ldr(dictionary, FieldMemOperand(receiver, JSObject::kPropertiesOffset)); | 
|  | 
| -  GenerateDictionaryStore(masm, &miss, dictionary, name, value, x4, x5); | 
| +  GenerateDictionaryStore(masm, &miss, dictionary, name, value, x6, x7); | 
| Counters* counters = masm->isolate()->counters(); | 
| -  __ IncrementCounter(counters->store_normal_hit(), 1, x4, x5); | 
| +  __ IncrementCounter(counters->store_normal_hit(), 1, x6, x7); | 
| __ Ret(); | 
|  | 
| // Cache miss: Jump to runtime. | 
| __ Bind(&miss); | 
| -  __ IncrementCounter(counters->store_normal_miss(), 1, x4, x5); | 
| +  __ IncrementCounter(counters->store_normal_miss(), 1, x6, x7); | 
| GenerateMiss(masm); | 
| } | 
|  | 
|  |