Index: src/snapshot/serialize.cc |
diff --git a/src/snapshot/serialize.cc b/src/snapshot/serialize.cc |
index 73b08ecc0a424fb5d75b16bd535725f7167ac433..096576f0a0e913b7aff318a6bb576bf6e7397779 100644 |
--- a/src/snapshot/serialize.cc |
+++ b/src/snapshot/serialize.cc |
@@ -1842,8 +1842,15 @@ void PartialSerializer::SerializeObject(HeapObject* obj, HowToCode how_to_code, |
// Clear literal boilerplates. |
if (obj->IsJSFunction()) { |
- FixedArray* literals = JSFunction::cast(obj)->literals(); |
- for (int i = 0; i < literals->length(); i++) literals->set_undefined(i); |
+ LiteralsArray* literals = JSFunction::cast(obj)->literals(); |
+ for (int i = 0; i < literals->literals_count(); i++) { |
+ literals->set_undefined(i); |
+ } |
+ // TODO(mvstanton): remove this line when the vector moves to the closure. |
+ // We need to clear the vector so the serializer doesn't try to serialize |
+ // the vector in the startup snapshot and the partial snapshot(s). |
+ literals->set_feedback_vector( |
+ TypeFeedbackVector::cast(isolate_->heap()->empty_fixed_array())); |
} |
// Object has not yet been serialized. Serialize it here. |