| Index: src/heap/mark-compact.h
|
| diff --git a/src/heap/mark-compact.h b/src/heap/mark-compact.h
|
| index 843e73d8e7dfa7d026036e70a8c80d9cd206204f..12da2d66747a939140dcdaf0816574513cd9ad03 100644
|
| --- a/src/heap/mark-compact.h
|
| +++ b/src/heap/mark-compact.h
|
| @@ -668,6 +668,7 @@ class MarkCompactCollector {
|
| void RemoveObjectSlots(Address start_slot, Address end_slot);
|
|
|
| private:
|
| + class CompactionTask;
|
| class SweeperTask;
|
|
|
| explicit MarkCompactCollector(Heap* heap);
|
| @@ -705,8 +706,12 @@ class MarkCompactCollector {
|
| // True if concurrent or parallel sweeping is currently in progress.
|
| bool sweeping_in_progress_;
|
|
|
| + // Synchronize sweeper threads.
|
| base::Semaphore pending_sweeper_jobs_semaphore_;
|
|
|
| + // Synchronize compaction threads.
|
| + base::Semaphore pending_compaction_jobs_semaphore_;
|
| +
|
| bool evacuation_;
|
|
|
| SlotsBufferAllocator slots_buffer_allocator_;
|
| @@ -865,6 +870,8 @@ class MarkCompactCollector {
|
|
|
| void EvacuatePages();
|
|
|
| + void EvacuatePagesInParallel();
|
| +
|
| void EvacuateNewSpaceAndCandidates();
|
|
|
| void ReleaseEvacuationCandidates();
|
|
|