| Index: src/heap/mark-compact.cc
|
| diff --git a/src/heap/mark-compact.cc b/src/heap/mark-compact.cc
|
| index 08472e5b10448949ef761f91de3fbdaedeead34b..aae6593cc5ab0c47e3a2eb24bcb45b1aac0b2052 100644
|
| --- a/src/heap/mark-compact.cc
|
| +++ b/src/heap/mark-compact.cc
|
| @@ -3865,6 +3865,12 @@ int MarkCompactCollector::Sweeper::ParallelSweepPage(Page* page,
|
| } else {
|
| max_freed = RawSweep(page, REBUILD_FREE_LIST, free_space_mode);
|
| }
|
| +
|
| + // After finishing sweeping of a page we clean up its remembered set.
|
| + if (page->typed_old_to_new_slots()) {
|
| + page->typed_old_to_new_slots()->FreeToBeFreedChunks();
|
| + }
|
| +
|
| {
|
| base::LockGuard<base::Mutex> guard(&mutex_);
|
| swept_list_[identity].Add(page);
|
|
|