Index: src/heap/spaces.h |
diff --git a/src/heap/spaces.h b/src/heap/spaces.h |
index 97f9de996f6cc8abd753072b4c003ac36bb4add9..9246bd3de537b4b645df76772d94fb94ecb2d56f 100644 |
--- a/src/heap/spaces.h |
+++ b/src/heap/spaces.h |
@@ -27,6 +27,7 @@ class CompactionSpace; |
class CompactionSpaceCollection; |
class FreeList; |
class Isolate; |
+class LocalArrayBufferTracker; |
class MemoryAllocator; |
class MemoryChunk; |
class Page; |
@@ -528,7 +529,8 @@ class MemoryChunk { |
+ kPointerSize // AtomicValue next_chunk_ |
+ kPointerSize // AtomicValue prev_chunk_ |
// FreeListCategory categories_[kNumberOfCategories] |
- + FreeListCategory::kSize * kNumberOfCategories; |
+ + FreeListCategory::kSize * kNumberOfCategories + |
+ kPointerSize; // LocalArrayBufferTracker tracker_ |
// We add some more space to the computed header size to amount for missing |
// alignment requirements in our computation. |
@@ -637,6 +639,7 @@ class MemoryChunk { |
inline TypedSlotSet* typed_old_to_old_slots() { |
return typed_old_to_old_slots_; |
} |
+ inline LocalArrayBufferTracker* local_tracker() { return local_tracker_; } |
void AllocateOldToNewSlots(); |
void ReleaseOldToNewSlots(); |
@@ -646,6 +649,8 @@ class MemoryChunk { |
void ReleaseTypedOldToNewSlots(); |
void AllocateTypedOldToOldSlots(); |
void ReleaseTypedOldToOldSlots(); |
+ void AllocateLocalTracker(); |
+ void ReleaseLocalTracker(); |
Address area_start() { return area_start_; } |
Address area_end() { return area_end_; } |
@@ -832,6 +837,8 @@ class MemoryChunk { |
FreeListCategory categories_[kNumberOfCategories]; |
+ LocalArrayBufferTracker* local_tracker_; |
+ |
private: |
void InitializeReservedMemory() { reservation_.Reset(); } |