Index: src/objects-body-descriptors-inl.h |
diff --git a/src/objects-body-descriptors-inl.h b/src/objects-body-descriptors-inl.h |
index 8fe4c0a84a078cebcca999e6f00160699f71984f..eb4af3002353645b8f0a9acd69804440026a25df 100644 |
--- a/src/objects-body-descriptors-inl.h |
+++ b/src/objects-body-descriptors-inl.h |
@@ -193,7 +193,8 @@ class JSArrayBuffer::BodyDescriptor final : public BodyDescriptorBase { |
class BytecodeArray::BodyDescriptor final : public BodyDescriptorBase { |
public: |
static bool IsValidSlot(HeapObject* obj, int offset) { |
- return offset == kConstantPoolOffset || offset == kHandlerTableOffset; |
+ return offset >= kConstantPoolOffset && |
+ offset <= kSourcePositionTableOffset; |
} |
template <typename ObjectVisitor> |
@@ -201,6 +202,7 @@ class BytecodeArray::BodyDescriptor final : public BodyDescriptorBase { |
ObjectVisitor* v) { |
IteratePointer(obj, kConstantPoolOffset, v); |
IteratePointer(obj, kHandlerTableOffset, v); |
+ IteratePointer(obj, kSourcePositionTableOffset, v); |
} |
template <typename StaticVisitor> |
@@ -208,6 +210,7 @@ class BytecodeArray::BodyDescriptor final : public BodyDescriptorBase { |
Heap* heap = obj->GetHeap(); |
IteratePointer<StaticVisitor>(heap, obj, kConstantPoolOffset); |
IteratePointer<StaticVisitor>(heap, obj, kHandlerTableOffset); |
+ IteratePointer<StaticVisitor>(heap, obj, kSourcePositionTableOffset); |
} |
static inline int SizeOf(Map* map, HeapObject* obj) { |