Index: src/mark-compact.h |
diff --git a/src/mark-compact.h b/src/mark-compact.h |
index 0f20440062710bbc0e9108a7e1092476ac04cdbe..a7f37db8e68e160d29f73a1c4a70f33f6e046e44 100644 |
--- a/src/mark-compact.h |
+++ b/src/mark-compact.h |
@@ -700,6 +700,13 @@ class MarkCompactCollector { |
encountered_weak_maps_ = weak_map; |
} |
+ inline Object* encountered_array_buffers() { |
+ return encountered_array_buffers_; |
+ } |
+ inline void set_encountered_array_buffers(Object* array_buffer) { |
+ encountered_array_buffers_ = array_buffer; |
+ } |
+ |
void InvalidateCode(Code* code); |
void ClearMarkbits(); |
@@ -810,6 +817,7 @@ class MarkCompactCollector { |
friend class MarkCompactMarkingVisitor; |
friend class CodeMarkingVisitor; |
friend class SharedFunctionInfoMarkingVisitor; |
+ friend class IncrementalMarking; |
// Mark code objects that are active on the stack to prevent them |
// from being flushed. |
@@ -894,6 +902,9 @@ class MarkCompactCollector { |
// The linked list of all encountered weak maps is destroyed. |
void ClearWeakMaps(); |
+ void ProcessArrayBuffers(); |
+ void ClearArrayBuffersOnAbort(); |
+ |
// ----------------------------------------------------------------------- |
// Phase 2: Sweeping to clear mark bits and free non-live objects for |
// a non-compacting collection. |
@@ -932,6 +943,7 @@ class MarkCompactCollector { |
MarkingDeque marking_deque_; |
CodeFlusher* code_flusher_; |
Object* encountered_weak_maps_; |
+ Object* encountered_array_buffers_; |
List<Page*> evacuation_candidates_; |
List<Code*> invalidated_code_; |