| Index: src/heap/mark-compact.cc
|
| diff --git a/src/heap/mark-compact.cc b/src/heap/mark-compact.cc
|
| index af6894c5755b2a6d7a14a853c3d3fd1ddb83de73..4c8db42035bb8c5722fe9b2fbe73b35d87f43f54 100644
|
| --- a/src/heap/mark-compact.cc
|
| +++ b/src/heap/mark-compact.cc
|
| @@ -519,12 +519,15 @@ void MarkCompactCollector::EnsureSweepingCompleted() {
|
| SweepInParallel(heap()->paged_space(CODE_SPACE), 0);
|
| SweepInParallel(heap()->paged_space(MAP_SPACE), 0);
|
| }
|
| - // Wait twice for both jobs.
|
| +
|
| if (heap()->concurrent_sweeping_enabled()) {
|
| pending_sweeper_jobs_semaphore_.Wait();
|
| pending_sweeper_jobs_semaphore_.Wait();
|
| pending_sweeper_jobs_semaphore_.Wait();
|
| }
|
| +
|
| + heap()->WaitUntilUnmappingOfFreeChunksCompleted();
|
| +
|
| ParallelSweepSpacesComplete();
|
| sweeping_in_progress_ = false;
|
| RefillFreeList(heap()->paged_space(OLD_SPACE));
|
|
|