| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_HEAP_MARK_COMPACT_H_ | 5 #ifndef V8_HEAP_MARK_COMPACT_H_ |
| 6 #define V8_HEAP_MARK_COMPACT_H_ | 6 #define V8_HEAP_MARK_COMPACT_H_ |
| 7 | 7 |
| 8 #include <deque> | 8 #include <deque> |
| 9 | 9 |
| 10 #include "src/base/bits.h" | 10 #include "src/base/bits.h" |
| (...skipping 595 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 606 // when mark bits are still intact. | 606 // when mark bits are still intact. |
| 607 bool IsSlotInBlackObject(MemoryChunk* p, Address slot); | 607 bool IsSlotInBlackObject(MemoryChunk* p, Address slot); |
| 608 HeapObject* FindBlackObjectBySlotSlow(Address slot); | 608 HeapObject* FindBlackObjectBySlotSlow(Address slot); |
| 609 | 609 |
| 610 // Removes all the slots in the slot buffers that are within the given | 610 // Removes all the slots in the slot buffers that are within the given |
| 611 // address range. | 611 // address range. |
| 612 void RemoveObjectSlots(Address start_slot, Address end_slot); | 612 void RemoveObjectSlots(Address start_slot, Address end_slot); |
| 613 | 613 |
| 614 Sweeper& sweeper() { return sweeper_; } | 614 Sweeper& sweeper() { return sweeper_; } |
| 615 | 615 |
| 616 std::vector<std::pair<void*, void*>>& wrappers_to_trace() { | 616 void RegisterWrappersWithEmbedderHeapTracer(); |
| 617 return wrappers_to_trace_; | |
| 618 } | |
| 619 | 617 |
| 620 void SetEmbedderHeapTracer(EmbedderHeapTracer* tracer); | 618 void SetEmbedderHeapTracer(EmbedderHeapTracer* tracer); |
| 621 | 619 |
| 622 EmbedderHeapTracer* embedder_heap_tracer() { return embedder_heap_tracer_; } | 620 EmbedderHeapTracer* embedder_heap_tracer() { return embedder_heap_tracer_; } |
| 623 | 621 |
| 624 bool UsingEmbedderHeapTracer() { return embedder_heap_tracer(); } | 622 bool UsingEmbedderHeapTracer() { return embedder_heap_tracer(); } |
| 625 | 623 |
| 626 void TracePossibleWrapper(JSObject* js_object); | 624 void TracePossibleWrapper(JSObject* js_object); |
| 627 | 625 |
| 628 void RegisterExternallyReferencedObject(Object** object); | 626 void RegisterExternallyReferencedObject(Object** object); |
| (...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 892 private: | 890 private: |
| 893 MarkCompactCollector* collector_; | 891 MarkCompactCollector* collector_; |
| 894 }; | 892 }; |
| 895 | 893 |
| 896 | 894 |
| 897 const char* AllocationSpaceName(AllocationSpace space); | 895 const char* AllocationSpaceName(AllocationSpace space); |
| 898 } // namespace internal | 896 } // namespace internal |
| 899 } // namespace v8 | 897 } // namespace v8 |
| 900 | 898 |
| 901 #endif // V8_HEAP_MARK_COMPACT_H_ | 899 #endif // V8_HEAP_MARK_COMPACT_H_ |
| OLD | NEW |