Index: src/objects-debug.cc |
diff --git a/src/objects-debug.cc b/src/objects-debug.cc |
index eb8dd8a63b4e70a23e5827622def90bc65ab49fd..179e92f21a3600054a335501344dd49b44ef47cb 100644 |
--- a/src/objects-debug.cc |
+++ b/src/objects-debug.cc |
@@ -158,6 +158,44 @@ void HeapObject::HeapObjectVerify() { |
case JS_MAP_ITERATOR_TYPE: |
JSMapIterator::cast(this)->JSMapIteratorVerify(); |
break; |
+ case JS_TYPED_ARRAY_KEY_ITERATOR_TYPE: |
+ case JS_FAST_ARRAY_KEY_ITERATOR_TYPE: |
+ case JS_GENERIC_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_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_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: |
+ 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; |
@@ -788,6 +826,16 @@ void JSWeakMap::JSWeakMapVerify() { |
CHECK(table()->IsHashTable() || table()->IsUndefined(GetIsolate())); |
} |
+void JSArrayIterator::JSArrayIteratorVerify() { |
+ CHECK(IsJSArrayIterator()); |
+ JSObjectVerify(); |
+ CHECK(object()->IsJSReceiver() || object()->IsUndefined(GetIsolate())); |
+ |
+ CHECK_GE(index()->Number(), 0); |
+ CHECK_LE(index()->Number(), kMaxSafeInteger); |
+ CHECK(object_map()->IsMap() || object_map()->IsUndefined(GetIsolate())); |
+} |
+ |
void JSStringIterator::JSStringIteratorVerify() { |
CHECK(IsJSStringIterator()); |
JSObjectVerify(); |