Index: src/heap/heap.cc |
diff --git a/src/heap/heap.cc b/src/heap/heap.cc |
index 2472d45b7faf8eced8091f8205348530c80902b7..2c51600aeb2e624bcd010f831530b252eea4ded0 100644 |
--- a/src/heap/heap.cc |
+++ b/src/heap/heap.cc |
@@ -2779,18 +2779,18 @@ void Heap::CreateInitialObjects() { |
{ |
StaticFeedbackVectorSpec spec; |
- FeedbackVectorSlot load_ic_slot = spec.AddLoadICSlot(); |
- FeedbackVectorSlot keyed_load_ic_slot = spec.AddKeyedLoadICSlot(); |
- FeedbackVectorSlot store_ic_slot = spec.AddStoreICSlot(); |
- FeedbackVectorSlot keyed_store_ic_slot = spec.AddKeyedStoreICSlot(); |
- |
- DCHECK_EQ(load_ic_slot, |
- FeedbackVectorSlot(TypeFeedbackVector::kDummyLoadICSlot)); |
- DCHECK_EQ(keyed_load_ic_slot, |
+ FeedbackVectorSlot slot = spec.AddLoadICSlot(); |
+ DCHECK_EQ(slot, FeedbackVectorSlot(TypeFeedbackVector::kDummyLoadICSlot)); |
+ |
+ slot = spec.AddKeyedLoadICSlot(); |
+ DCHECK_EQ(slot, |
FeedbackVectorSlot(TypeFeedbackVector::kDummyKeyedLoadICSlot)); |
- DCHECK_EQ(store_ic_slot, |
- FeedbackVectorSlot(TypeFeedbackVector::kDummyStoreICSlot)); |
- DCHECK_EQ(keyed_store_ic_slot, |
+ |
+ slot = spec.AddStoreICSlot(); |
+ DCHECK_EQ(slot, FeedbackVectorSlot(TypeFeedbackVector::kDummyStoreICSlot)); |
+ |
+ slot = spec.AddKeyedStoreICSlot(); |
+ DCHECK_EQ(slot, |
FeedbackVectorSlot(TypeFeedbackVector::kDummyKeyedStoreICSlot)); |
Handle<TypeFeedbackMetadata> dummy_metadata = |
@@ -2798,13 +2798,13 @@ void Heap::CreateInitialObjects() { |
Handle<TypeFeedbackVector> dummy_vector = |
TypeFeedbackVector::New(isolate(), dummy_metadata); |
- Object* megamorphic = *TypeFeedbackVector::MegamorphicSentinel(isolate()); |
- dummy_vector->Set(load_ic_slot, megamorphic, SKIP_WRITE_BARRIER); |
- dummy_vector->Set(keyed_load_ic_slot, megamorphic, SKIP_WRITE_BARRIER); |
- dummy_vector->Set(store_ic_slot, megamorphic, SKIP_WRITE_BARRIER); |
- dummy_vector->Set(keyed_store_ic_slot, megamorphic, SKIP_WRITE_BARRIER); |
- |
set_dummy_vector(*dummy_vector); |
+ |
+ // Now initialize dummy vector's entries. |
+ LoadICNexus(isolate()).ConfigureMegamorphic(); |
+ StoreICNexus(isolate()).ConfigureMegamorphic(); |
+ KeyedLoadICNexus(isolate()).ConfigureMegamorphicKeyed(PROPERTY); |
+ KeyedStoreICNexus(isolate()).ConfigureMegamorphicKeyed(PROPERTY); |
} |
{ |