Index: src/mark-compact.cc |
diff --git a/src/mark-compact.cc b/src/mark-compact.cc |
index 160dba8d49d85a60ee4ec4d59ff1ccb42bc7e474..5d47ec724fa11ed19f10f935837a155f5c9c865e 100644 |
--- a/src/mark-compact.cc |
+++ b/src/mark-compact.cc |
@@ -1060,6 +1060,11 @@ void MarkCompactCollector::MarkUnmarkedObject(HeapObject* object) { |
map->ClearCodeCache(heap()); |
} |
SetMark(map); |
+ |
+ // When map collection is enabled we have to mark through map's transitions |
+ // in a special way to make transition links weak. |
+ // Only maps with instance types between FIRST_JS_OBJECT_TYPE and |
+ // JS_FUNCTION_TYPE can have transitions. |
if (FLAG_collect_maps && |
map->instance_type() >= FIRST_JS_OBJECT_TYPE && |
map->instance_type() <= JS_FUNCTION_TYPE) { |