Index: src/heap/objects-visiting-inl.h |
diff --git a/src/heap/objects-visiting-inl.h b/src/heap/objects-visiting-inl.h |
index 3ef51866b6341715e424292e44a6c68a06356cc8..4133e22f732f2ab0815e21b8654e4a766b7138da 100644 |
--- a/src/heap/objects-visiting-inl.h |
+++ b/src/heap/objects-visiting-inl.h |
@@ -601,13 +601,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); |