Chromium Code Reviews| Index: src/heap/heap.cc | 
| diff --git a/src/heap/heap.cc b/src/heap/heap.cc | 
| index 2b072f302144b48a82ee29453d60fc813de2ae5d..3e49fea21d61da6b1b8e10e46b549f97fe266703 100644 | 
| --- a/src/heap/heap.cc | 
| +++ b/src/heap/heap.cc | 
| @@ -2721,17 +2721,36 @@ void Heap::CreateInitialObjects() { | 
| { | 
| FeedbackVectorSlotKind kinds[] = {FeedbackVectorSlotKind::LOAD_IC, | 
| + FeedbackVectorSlotKind::INVALID, | 
| FeedbackVectorSlotKind::KEYED_LOAD_IC, | 
| + FeedbackVectorSlotKind::INVALID, | 
| FeedbackVectorSlotKind::STORE_IC, | 
| - FeedbackVectorSlotKind::KEYED_STORE_IC}; | 
| - StaticFeedbackVectorSpec spec(0, 4, kinds); | 
| + FeedbackVectorSlotKind::INVALID, | 
| + FeedbackVectorSlotKind::KEYED_STORE_IC, | 
| + FeedbackVectorSlotKind::INVALID}; | 
| + StaticFeedbackVectorSpec spec(arraysize(kinds), kinds); | 
| Handle<TypeFeedbackVector> dummy_vector = | 
| - factory->NewTypeFeedbackVector(&spec); | 
| - for (int i = 0; i < 4; i++) { | 
| - dummy_vector->Set(FeedbackVectorICSlot(0), | 
| 
 
Igor Sheludko
2015/09/30 16:30:56
I guess we wanted to use FeedbackVectorICSlot(i) h
 
mvstanton
2015/10/01 10:24:31
Good catch.
 
 | 
| - *TypeFeedbackVector::MegamorphicSentinel(isolate()), | 
| - SKIP_WRITE_BARRIER); | 
| + TypeFeedbackVector::New(isolate(), &spec); | 
| + for (int i = 0; i < spec.slots(); i++) { | 
| + if (kinds[i] != FeedbackVectorSlotKind::INVALID) { | 
| + dummy_vector->Set(FeedbackVectorSlot(i), | 
| + *TypeFeedbackVector::MegamorphicSentinel(isolate()), | 
| + SKIP_WRITE_BARRIER); | 
| + } | 
| } | 
| + DCHECK_EQ(FeedbackVectorSlotKind::LOAD_IC, | 
| + dummy_vector->GetKind( | 
| + FeedbackVectorSlot(TypeFeedbackVector::kDummyLoadICSlot))); | 
| + DCHECK_EQ(FeedbackVectorSlotKind::KEYED_LOAD_IC, | 
| + dummy_vector->GetKind(FeedbackVectorSlot( | 
| + TypeFeedbackVector::kDummyKeyedLoadICSlot))); | 
| + DCHECK_EQ(FeedbackVectorSlotKind::STORE_IC, | 
| + dummy_vector->GetKind( | 
| + FeedbackVectorSlot(TypeFeedbackVector::kDummyStoreICSlot))); | 
| + DCHECK_EQ(FeedbackVectorSlotKind::KEYED_STORE_IC, | 
| + dummy_vector->GetKind(FeedbackVectorSlot( | 
| + TypeFeedbackVector::kDummyKeyedStoreICSlot))); | 
| + | 
| set_dummy_vector(*dummy_vector); | 
| } |