| Index: src/ic/ic.cc
|
| diff --git a/src/ic/ic.cc b/src/ic/ic.cc
|
| index 985f1da99c27d8737f8974cc27e47f66ba1d42e6..012a188c9b2636c496c85958f8c82490ed700b58 100644
|
| --- a/src/ic/ic.cc
|
| +++ b/src/ic/ic.cc
|
| @@ -2404,11 +2404,11 @@ RUNTIME_FUNCTION(Runtime_StoreIC_Miss) {
|
| HandleScope scope(isolate);
|
| DCHECK_EQ(5, args.length());
|
| // Runtime functions don't follow the IC's calling convention.
|
| - Handle<Object> receiver = args.at<Object>(0);
|
| - Handle<Name> key = args.at<Name>(1);
|
| - Handle<Object> value = args.at<Object>(2);
|
| - Handle<Smi> slot = args.at<Smi>(3);
|
| - Handle<TypeFeedbackVector> vector = args.at<TypeFeedbackVector>(4);
|
| + Handle<Object> value = args.at<Object>(0);
|
| + Handle<Smi> slot = args.at<Smi>(1);
|
| + Handle<TypeFeedbackVector> vector = args.at<TypeFeedbackVector>(2);
|
| + Handle<Object> receiver = args.at<Object>(3);
|
| + Handle<Name> key = args.at<Name>(4);
|
| FeedbackVectorSlot vector_slot = vector->ToSlot(slot->value());
|
| if (vector->GetKind(vector_slot) == FeedbackVectorSlotKind::STORE_IC) {
|
| StoreICNexus nexus(vector, vector_slot);
|
| @@ -2460,11 +2460,11 @@ RUNTIME_FUNCTION(Runtime_KeyedStoreIC_Miss) {
|
| HandleScope scope(isolate);
|
| DCHECK_EQ(5, args.length());
|
| // Runtime functions don't follow the IC's calling convention.
|
| - Handle<Object> receiver = args.at<Object>(0);
|
| - Handle<Object> key = args.at<Object>(1);
|
| - Handle<Object> value = args.at<Object>(2);
|
| - Handle<Smi> slot = args.at<Smi>(3);
|
| - Handle<TypeFeedbackVector> vector = args.at<TypeFeedbackVector>(4);
|
| + Handle<Object> value = args.at<Object>(0);
|
| + Handle<Smi> slot = args.at<Smi>(1);
|
| + Handle<TypeFeedbackVector> vector = args.at<TypeFeedbackVector>(2);
|
| + Handle<Object> receiver = args.at<Object>(3);
|
| + Handle<Object> key = args.at<Object>(4);
|
| FeedbackVectorSlot vector_slot = vector->ToSlot(slot->value());
|
| KeyedStoreICNexus nexus(vector, vector_slot);
|
| KeyedStoreIC ic(IC::NO_EXTRA_FRAME, isolate, &nexus);
|
| @@ -2496,9 +2496,10 @@ RUNTIME_FUNCTION(Runtime_KeyedStoreIC_Slow) {
|
| HandleScope scope(isolate);
|
| DCHECK_EQ(5, args.length());
|
| // Runtime functions don't follow the IC's calling convention.
|
| - Handle<Object> object = args.at<Object>(0);
|
| - Handle<Object> key = args.at<Object>(1);
|
| - Handle<Object> value = args.at<Object>(2);
|
| + Handle<Object> value = args.at<Object>(0);
|
| + // slot and vector parameters are not used.
|
| + Handle<Object> object = args.at<Object>(3);
|
| + Handle<Object> key = args.at<Object>(4);
|
| LanguageMode language_mode;
|
| KeyedStoreICNexus nexus(isolate);
|
| KeyedStoreIC ic(IC::NO_EXTRA_FRAME, isolate, &nexus);
|
|
|