| Index: src/objects-debug.cc
|
| diff --git a/src/objects-debug.cc b/src/objects-debug.cc
|
| index ee58f02ed12c583515d04cb32560f6ea2bf966c5..ca9ccb63960960dd3e70c35aca61151fb0d6a87b 100644
|
| --- a/src/objects-debug.cc
|
| +++ b/src/objects-debug.cc
|
| @@ -75,6 +75,9 @@
|
| break;
|
| case BYTECODE_ARRAY_TYPE:
|
| BytecodeArray::cast(this)->BytecodeArrayVerify();
|
| + break;
|
| + case TRANSITION_ARRAY_TYPE:
|
| + TransitionArray::cast(this)->TransitionArrayVerify();
|
| break;
|
| case FREE_SPACE_TYPE:
|
| FreeSpace::cast(this)->FreeSpaceVerify();
|
| @@ -407,6 +410,17 @@
|
| }
|
|
|
|
|
| +void TransitionArray::TransitionArrayVerify() {
|
| + for (int i = 0; i < length(); i++) {
|
| + Object* e = get(i);
|
| + VerifyPointer(e);
|
| + }
|
| + CHECK_LE(LengthFor(number_of_transitions()), length());
|
| + CHECK(next_link()->IsUndefined() || next_link()->IsSmi() ||
|
| + next_link()->IsTransitionArray());
|
| +}
|
| +
|
| +
|
| void JSGeneratorObject::JSGeneratorObjectVerify() {
|
| // In an expression like "new g()", there can be a point where a generator
|
| // object is allocated but its fields are all undefined, as it hasn't yet been
|
|
|