| Index: src/ic/arm/ic-arm.cc
|
| diff --git a/src/ic/arm/ic-arm.cc b/src/ic/arm/ic-arm.cc
|
| index e971843b9c6ee349737aadbce3d2206a64865a0c..70a5d84e93384e47729d71ea8c68286e49f47f9e 100644
|
| --- a/src/ic/arm/ic-arm.cc
|
| +++ b/src/ic/arm/ic-arm.cc
|
| @@ -283,7 +283,10 @@ void LoadIC::GenerateMiss(MacroAssembler* masm) {
|
| // The return address is in lr.
|
| Isolate* isolate = masm->isolate();
|
|
|
| - __ IncrementCounter(isolate->counters()->load_miss(), 1, r3, r4);
|
| + DCHECK(!FLAG_vector_ics ||
|
| + !AreAliased(r4, r5, VectorLoadICDescriptor::SlotRegister(),
|
| + VectorLoadICDescriptor::VectorRegister()));
|
| + __ IncrementCounter(isolate->counters()->load_miss(), 1, r4, r5);
|
|
|
| LoadIC_PushArgs(masm);
|
|
|
| @@ -417,7 +420,10 @@ void KeyedLoadIC::GenerateMiss(MacroAssembler* masm) {
|
| // The return address is in lr.
|
| Isolate* isolate = masm->isolate();
|
|
|
| - __ IncrementCounter(isolate->counters()->keyed_load_miss(), 1, r3, r4);
|
| + DCHECK(!FLAG_vector_ics ||
|
| + !AreAliased(r4, r5, VectorLoadICDescriptor::SlotRegister(),
|
| + VectorLoadICDescriptor::VectorRegister()));
|
| + __ IncrementCounter(isolate->counters()->keyed_load_miss(), 1, r4, r5);
|
|
|
| LoadIC_PushArgs(masm);
|
|
|
| @@ -818,8 +824,8 @@ void KeyedStoreIC::GenerateMegamorphic(MacroAssembler* masm,
|
| __ JumpIfNotUniqueNameInstanceType(r4, &slow);
|
| Code::Flags flags = Code::RemoveTypeAndHolderFromFlags(
|
| Code::ComputeHandlerFlags(Code::STORE_IC));
|
| - masm->isolate()->stub_cache()->GenerateProbe(masm, flags, false, receiver,
|
| - key, r3, r4, r5, r6);
|
| + masm->isolate()->stub_cache()->GenerateProbe(
|
| + masm, Code::STORE_IC, flags, false, receiver, key, r3, r4, r5, r6);
|
| // Cache miss.
|
| __ b(&miss);
|
|
|
| @@ -880,8 +886,8 @@ void StoreIC::GenerateMegamorphic(MacroAssembler* masm) {
|
| Code::Flags flags = Code::RemoveTypeAndHolderFromFlags(
|
| Code::ComputeHandlerFlags(Code::STORE_IC));
|
|
|
| - masm->isolate()->stub_cache()->GenerateProbe(masm, flags, false, receiver,
|
| - name, r3, r4, r5, r6);
|
| + masm->isolate()->stub_cache()->GenerateProbe(
|
| + masm, Code::STORE_IC, flags, false, receiver, name, r3, r4, r5, r6);
|
|
|
| // Cache miss: Jump to runtime.
|
| GenerateMiss(masm);
|
|
|