| Index: src/heap/mark-compact.cc
|
| diff --git a/src/heap/mark-compact.cc b/src/heap/mark-compact.cc
|
| index 38b8167d0d577560bac21ecbe3f70f0297dcb55c..2c998c8817a090478f0e209881aaad04efde6e61 100644
|
| --- a/src/heap/mark-compact.cc
|
| +++ b/src/heap/mark-compact.cc
|
| @@ -3585,16 +3585,14 @@ int NumberOfPointerUpdateTasks(int pages) {
|
|
|
| template <PointerDirection direction>
|
| void UpdatePointersInParallel(Heap* heap) {
|
| - PageParallelJob<PointerUpdateJobTraits<direction> >* job =
|
| - new PageParallelJob<PointerUpdateJobTraits<direction> >(
|
| - heap, heap->isolate()->cancelable_task_manager());
|
| + PageParallelJob<PointerUpdateJobTraits<direction> > job(
|
| + heap, heap->isolate()->cancelable_task_manager());
|
| RememberedSet<direction>::IterateMemoryChunks(
|
| - heap, [job](MemoryChunk* chunk) { job->AddPage(chunk, 0); });
|
| + heap, [&job](MemoryChunk* chunk) { job.AddPage(chunk, 0); });
|
| PointersUpdatingVisitor visitor(heap);
|
| - int num_pages = job->NumberOfPages();
|
| + int num_pages = job.NumberOfPages();
|
| int num_tasks = NumberOfPointerUpdateTasks(num_pages);
|
| - job->Run(num_tasks, [&visitor](int i) { return &visitor; });
|
| - delete job;
|
| + job.Run(num_tasks, [&visitor](int i) { return &visitor; });
|
| }
|
|
|
| void MarkCompactCollector::UpdatePointersAfterEvacuation() {
|
|
|