| Index: src/objects.cc
|
| diff --git a/src/objects.cc b/src/objects.cc
|
| index f66275a3ae46d1f802db1e313190d11a6b201698..9520e2ce218cf6842e3efd3b8e0adc37ae702ed9 100644
|
| --- a/src/objects.cc
|
| +++ b/src/objects.cc
|
| @@ -9447,11 +9447,16 @@ void Map::ClearNonLiveTransitions(Heap* heap) {
|
| }
|
| }
|
|
|
| + // Note that we never eliminate a transition array, though we might right-trim
|
| + // such that number_of_transitions() == 0. If this assumption changes,
|
| + // TransitionArray::CopyInsert() will need to deal with the case that a
|
| + // transition array disappeared during GC.
|
| int trim = t->number_of_transitions() - transition_index;
|
| if (trim > 0) {
|
| RightTrimFixedArray<Heap::FROM_GC>(heap, t, t->IsSimpleTransition()
|
| ? trim : trim * TransitionArray::kTransitionSize);
|
| }
|
| + ASSERT(HasTransitionArray());
|
| }
|
|
|
|
|
|
|