Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(192)

Unified Diff: src/objects-debug.cc

Issue 15943002: v8 typed arrays: add DataView type (Closed)
Patch Set: v8 typed arrays: add DataView type, v2 Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/objects-debug.cc
diff --git a/src/objects-debug.cc b/src/objects-debug.cc
index 891f0d2302daee66039130097592cd9981b56564..f58fd5f73abede94d748ad07e95ef6e77d74886a 100644
--- a/src/objects-debug.cc
+++ b/src/objects-debug.cc
@@ -201,6 +201,9 @@ void HeapObject::HeapObjectVerify() {
case JS_ARRAY_BUFFER_TYPE:
JSArrayBuffer::cast(this)->JSArrayBufferVerify();
break;
+ case JS_DATA_VIEW_TYPE:
+ JSDataView::cast(this)->JSDataViewVerify();
+ break;
case JS_TYPED_ARRAY_TYPE:
JSTypedArray::cast(this)->JSTypedArrayVerify();
break;
@@ -741,12 +744,29 @@ void JSFunctionProxy::JSFunctionProxyVerify() {
VerifyPointer(construct_trap());
}
+
void JSArrayBuffer::JSArrayBufferVerify() {
CHECK(IsJSArrayBuffer());
JSObjectVerify();
VerifyPointer(byte_length());
- CHECK(byte_length()->IsSmi() || byte_length()->IsHeapNumber()
- || byte_length()->IsUndefined());
+ CHECK(byte_length()->IsNumber() || byte_length()->IsUndefined());
+}
+
+
+void JSDataView::JSDataViewVerify() {
+ CHECK(IsJSDataView());
+ JSObjectVerify();
+
+ VerifyPointer(buffer());
+ CHECK(buffer()->IsJSArrayBuffer() || buffer()->IsUndefined());
+
+ VerifyPointer(byte_offset());
+ CHECK(byte_offset()->IsNumber() || byte_offset()->IsUndefined());
+
+ VerifyPointer(byte_length());
+ CHECK(byte_length()->IsNumber() || byte_length()->IsUndefined());
+
+ VerifyPointer(elements());
}
@@ -757,16 +777,13 @@ void JSTypedArray::JSTypedArrayVerify() {
CHECK(buffer()->IsJSArrayBuffer() || buffer()->IsUndefined());
VerifyPointer(byte_offset());
- CHECK(byte_offset()->IsSmi() || byte_offset()->IsHeapNumber()
- || byte_offset()->IsUndefined());
+ CHECK(byte_offset()->IsNumber() || byte_offset()->IsUndefined());
VerifyPointer(byte_length());
- CHECK(byte_length()->IsSmi() || byte_length()->IsHeapNumber()
- || byte_length()->IsUndefined());
+ CHECK(byte_length()->IsNumber() || byte_length()->IsUndefined());
VerifyPointer(length());
- CHECK(length()->IsSmi() || length()->IsHeapNumber()
- || length()->IsUndefined());
+ CHECK(length()->IsNumber() || length()->IsUndefined());
VerifyPointer(elements());
}

Powered by Google App Engine
This is Rietveld 408576698