Index: src/heap/objects-visiting-inl.h |
diff --git a/src/heap/objects-visiting-inl.h b/src/heap/objects-visiting-inl.h |
index d1d52a4c7a7b0c548838d566fb2195364a4ceb7a..7f83f483ba750e9e149da2c8ed580f5f6fe0dee0 100644 |
--- a/src/heap/objects-visiting-inl.h |
+++ b/src/heap/objects-visiting-inl.h |
@@ -571,13 +571,8 @@ void StaticMarkingVisitor<StaticVisitor>::MarkTransitionArray( |
if (!StaticVisitor::MarkObjectWithoutPush(heap, transitions)) return; |
if (transitions->HasPrototypeTransitions()) { |
- // Mark prototype transitions array but do not push it onto marking |
- // stack, this will make references from it weak. We will clean dead |
- // prototype transitions in ClearNonLiveReferences. |
- Object** slot = transitions->GetPrototypeTransitionsSlot(); |
- HeapObject* obj = HeapObject::cast(*slot); |
- heap->mark_compact_collector()->RecordSlot(slot, slot, obj); |
- StaticVisitor::MarkObjectWithoutPush(heap, obj); |
+ StaticVisitor::VisitPointer(heap, |
+ transitions->GetPrototypeTransitionsSlot()); |
} |
int num_transitions = TransitionArray::NumberOfTransitions(transitions); |