Index: src/objects-inl.h |
diff --git a/src/objects-inl.h b/src/objects-inl.h |
index 5c848800b37ab8ad90da48b05ba6c022db18f494..61e9101cc5daa4d1780a59a2aad2488b5bbd9f57 100644 |
--- a/src/objects-inl.h |
+++ b/src/objects-inl.h |
@@ -674,6 +674,7 @@ bool Object::IsBoolean() { |
TYPE_CHECKER(JSArray, JS_ARRAY_TYPE) |
+TYPE_CHECKER(JSArrayBuffer, JS_ARRAY_BUFFER_TYPE) |
TYPE_CHECKER(JSRegExp, JS_REGEXP_TYPE) |
@@ -1562,6 +1563,8 @@ int JSObject::GetHeaderSize() { |
return JSDate::kSize; |
case JS_ARRAY_TYPE: |
return JSArray::kSize; |
+ case JS_ARRAY_BUFFER_TYPE: |
+ return JSArrayBuffer::kSize; |
case JS_SET_TYPE: |
return JSSet::kSize; |
case JS_MAP_TYPE: |
@@ -2448,6 +2451,7 @@ CAST_ACCESSOR(JSGlobalObject) |
CAST_ACCESSOR(JSBuiltinsObject) |
CAST_ACCESSOR(Code) |
CAST_ACCESSOR(JSArray) |
+CAST_ACCESSOR(JSArrayBuffer) |
CAST_ACCESSOR(JSRegExp) |
CAST_ACCESSOR(JSProxy) |
CAST_ACCESSOR(JSFunctionProxy) |
@@ -5131,6 +5135,21 @@ bool Code::contains(byte* inner_pointer) { |
ACCESSORS(JSArray, length, Object, kLengthOffset) |
+void* JSArrayBuffer::backing_store() { |
+ intptr_t ptr = READ_INTPTR_FIELD(this, kBackingStoreOffset); |
+ return reinterpret_cast<void*>(ptr); |
+} |
+ |
+ |
+void JSArrayBuffer::set_backing_store(void* value, WriteBarrierMode mode) { |
+ intptr_t ptr = reinterpret_cast<intptr_t>(value); |
+ WRITE_INTPTR_FIELD(this, kBackingStoreOffset, ptr); |
+} |
+ |
+ |
+ACCESSORS(JSArrayBuffer, byte_length, Object, kByteLengthOffset) |
+ |
+ |
ACCESSORS(JSRegExp, data, Object, kDataOffset) |