diff --git a/src/llv8-constants.cc b/src/llv8-constants.cc index 6e86a3b0..9c68b78f 100644 --- a/src/llv8-constants.cc +++ b/src/llv8-constants.cc @@ -501,7 +501,7 @@ void DescriptorArray::Load() { kFirstIndex = LoadOptionalConstant({"prop_idx_first"}, 0); kSize = LoadConstant({"prop_desc_size"}); kHeaderSize = LoadOptionalConstant( - {"class_DescriptorArray__header_size__uintptr_t"}, 0); + {"class_DescriptorArray__header_size__uintptr_t"}, 24); } diff --git a/src/llv8-inl.h b/src/llv8-inl.h index ad93e978..0293eb86 100644 --- a/src/llv8-inl.h +++ b/src/llv8-inl.h @@ -889,7 +889,7 @@ inline T DescriptorArray::Get(int index, int64_t offset) { if (v8()->descriptor_array()->kFirstIndex.Loaded()) { return FixedArray::Get( *(v8()->descriptor_array()->kFirstIndex) + index + offset, err); - } else if (v8()->descriptor_array()->kHeaderSize.Loaded()) { + } else if (v8()->descriptor_array()->kHeaderSize.Check()) { index *= v8()->common()->kPointerSize; index += *(v8()->descriptor_array()->kHeaderSize); index += (v8()->common()->kPointerSize * offset);