Index: src/type-feedback-vector.cc |
diff --git a/src/type-feedback-vector.cc b/src/type-feedback-vector.cc |
index c5908c717b40f7964381fab7579947d00ece39fa..dee77a1df1b37cd7e220b63810b43f9ed8db7c03 100644 |
--- a/src/type-feedback-vector.cc |
+++ b/src/type-feedback-vector.cc |
@@ -252,10 +252,8 @@ Handle<TypeFeedbackVector> TypeFeedbackVector::New( |
// the empty literals array here. |
array->set(index, *factory->empty_literals_array(), SKIP_WRITE_BARRIER); |
} else { |
- // TODO(mvstanton): Create the array. |
- // Handle<FixedArray> value = factory->NewFixedArray(length); |
- // array->set(index, *value); |
- array->set(index, *factory->empty_literals_array(), SKIP_WRITE_BARRIER); |
+ Handle<FixedArray> value = factory->NewFixedArray(length); |
+ array->set(index, *value); |
} |
} |
i += entry_size; |
@@ -376,10 +374,10 @@ void TypeFeedbackVector::ClearSlotsImpl(SharedFunctionInfo* shared, |
break; |
} |
case FeedbackVectorSlotKind::CREATE_CLOSURE: { |
- // Fill the array with undefined. |
- FixedArray* array = FixedArray::cast(Get(slot)); |
- for (int i = 1; i < array->length(); i++) { |
- array->set_undefined(i); |
+ // Clear the literals in the embedded LiteralsArray. |
+ LiteralsArray* literals = LiteralsArray::cast(Get(slot)); |
+ for (int i = 0; i < literals->literals_count(); i++) { |
+ literals->set_literal_undefined(i); |
} |
break; |
} |