| Index: src/objects-debug.cc
|
| diff --git a/src/objects-debug.cc b/src/objects-debug.cc
|
| index c509fe86c9231f92b025ee59791bfeccd07de4af..d649134a4c0a4b2d514219d86918ae41ae1519a7 100644
|
| --- a/src/objects-debug.cc
|
| +++ b/src/objects-debug.cc
|
| @@ -155,6 +155,46 @@ void HeapObject::HeapObjectVerify() {
|
| case JS_MAP_ITERATOR_TYPE:
|
| JSMapIterator::cast(this)->JSMapIteratorVerify();
|
| break;
|
| + case JS_TYPED_ARRAY_KEY_ITERATOR_TYPE:
|
| + case JS_UINT8_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_INT8_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_UINT16_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_INT16_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_UINT32_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_INT32_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_FLOAT32_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_FLOAT64_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_UINT8_CLAMPED_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_UINT8_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_INT8_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_UINT16_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_INT16_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_UINT32_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_INT32_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_FLOAT32_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_FLOAT64_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_UINT8_CLAMPED_ARRAY_VALUE_ITERATOR_TYPE:
|
| + JSTypedArrayIterator::cast(this)->JSTypedArrayIteratorVerify();
|
| + break;
|
| +
|
| + case JS_GENERIC_ARRAY_KEY_ITERATOR_TYPE:
|
| + case JS_FAST_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_HOLEY_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_SMI_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_HOLEY_SMI_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_DOUBLE_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_HOLEY_DOUBLE_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_GENERIC_ARRAY_KEY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_HOLEY_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_SMI_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_HOLEY_SMI_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_DOUBLE_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_FAST_HOLEY_DOUBLE_ARRAY_VALUE_ITERATOR_TYPE:
|
| + case JS_GENERIC_ARRAY_VALUE_ITERATOR_TYPE:
|
| + JSArrayIterator::cast(this)->JSArrayIteratorVerify();
|
| + break;
|
| +
|
| case JS_STRING_ITERATOR_TYPE:
|
| JSStringIterator::cast(this)->JSStringIteratorVerify();
|
| break;
|
| @@ -785,6 +825,24 @@ void JSWeakMap::JSWeakMapVerify() {
|
| CHECK(table()->IsHashTable() || table()->IsUndefined(GetIsolate()));
|
| }
|
|
|
| +void JSTypedArrayIterator::JSTypedArrayIteratorVerify() {
|
| + CHECK(IsJSTypedArrayIterator());
|
| + JSObjectVerify();
|
| + CHECK(object()->IsJSTypedArray() || object()->IsUndefined(GetIsolate()));
|
| +
|
| + CHECK_GE(index(), 0);
|
| + CHECK_LE(index(), Smi::kMaxValue);
|
| +}
|
| +
|
| +void JSArrayIterator::JSArrayIteratorVerify() {
|
| + CHECK(IsJSArrayIterator());
|
| + JSObjectVerify();
|
| + CHECK(object()->IsJSReceiver() || object()->IsUndefined(GetIsolate()));
|
| +
|
| + CHECK_GE(index()->Number(), 0);
|
| + CHECK_LE(index()->Number(), kMaxSafeInteger);
|
| +}
|
| +
|
| void JSStringIterator::JSStringIteratorVerify() {
|
| CHECK(IsJSStringIterator());
|
| JSObjectVerify();
|
|
|