summaryrefslogtreecommitdiff
path: root/deps/v8/src/objects/struct-inl.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/objects/struct-inl.h')
-rw-r--r--deps/v8/src/objects/struct-inl.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/deps/v8/src/objects/struct-inl.h b/deps/v8/src/objects/struct-inl.h
index 8a5b53efbb..9502698058 100644
--- a/deps/v8/src/objects/struct-inl.h
+++ b/deps/v8/src/objects/struct-inl.h
@@ -8,7 +8,9 @@
#include "src/objects/struct.h"
#include "src/heap/heap-write-barrier-inl.h"
+#include "src/objects-inl.h"
#include "src/objects/oddball.h"
+#include "src/roots-inl.h"
// Has to be the last include (doesn't have include guards):
#include "src/objects/object-macros.h"
@@ -23,15 +25,19 @@ Tuple2::Tuple2(Address ptr) : Struct(ptr) {}
Tuple3::Tuple3(Address ptr) : Tuple2(ptr) {}
OBJECT_CONSTRUCTORS_IMPL(AccessorPair, Struct)
+OBJECT_CONSTRUCTORS_IMPL(ClassPositions, Struct)
+
CAST_ACCESSOR(AccessorPair)
CAST_ACCESSOR(Struct)
CAST_ACCESSOR(Tuple2)
CAST_ACCESSOR(Tuple3)
+CAST_ACCESSOR(ClassPositions)
+
void Struct::InitializeBody(int object_size) {
Object value = GetReadOnlyRoots().undefined_value();
- for (int offset = kHeaderSize; offset < object_size; offset += kPointerSize) {
- WRITE_FIELD(this, offset, value);
+ for (int offset = kHeaderSize; offset < object_size; offset += kTaggedSize) {
+ WRITE_FIELD(*this, offset, value);
}
}
@@ -42,6 +48,9 @@ ACCESSORS(Tuple3, value3, Object, kValue3Offset)
ACCESSORS(AccessorPair, getter, Object, kGetterOffset)
ACCESSORS(AccessorPair, setter, Object, kSetterOffset)
+SMI_ACCESSORS(ClassPositions, start, kStartOffset)
+SMI_ACCESSORS(ClassPositions, end, kEndOffset)
+
Object AccessorPair::get(AccessorComponent component) {
return component == ACCESSOR_GETTER ? getter() : setter();
}