| Index: src/heap/concurrent-marking.h
|
| diff --git a/src/heap/concurrent-marking.h b/src/heap/concurrent-marking.h
|
| index 9d7b6b58caa2ceda29bd723e5f6cb41942f179f2..134fa38f6461dee6f4e762f73b6c14e5e2e4ef62 100644
|
| --- a/src/heap/concurrent-marking.h
|
| +++ b/src/heap/concurrent-marking.h
|
| @@ -5,8 +5,6 @@
|
| #ifndef V8_HEAP_CONCURRENT_MARKING_
|
| #define V8_HEAP_CONCURRENT_MARKING_
|
|
|
| -#include <vector>
|
| -
|
| #include "src/allocation.h"
|
| #include "src/cancelable-task.h"
|
| #include "src/utils.h"
|
| @@ -15,16 +13,16 @@
|
| namespace v8 {
|
| namespace internal {
|
|
|
| +class ConcurrentMarkingDeque;
|
| +class ConcurrentMarkingVisitor;
|
| class Heap;
|
| class Isolate;
|
|
|
| class ConcurrentMarking {
|
| public:
|
| - explicit ConcurrentMarking(Heap* heap);
|
| + ConcurrentMarking(Heap* heap, ConcurrentMarkingDeque* deque_);
|
| ~ConcurrentMarking();
|
|
|
| - void AddRoot(HeapObject* object);
|
| -
|
| void StartTask();
|
| void WaitForTaskToComplete();
|
| bool IsTaskPending() { return is_task_pending_; }
|
| @@ -32,10 +30,12 @@ class ConcurrentMarking {
|
|
|
| private:
|
| class Task;
|
| + void Run();
|
| Heap* heap_;
|
| base::Semaphore pending_task_semaphore_;
|
| + ConcurrentMarkingDeque* deque_;
|
| + ConcurrentMarkingVisitor* visitor_;
|
| bool is_task_pending_;
|
| - std::vector<HeapObject*> root_set_;
|
| };
|
|
|
| } // namespace internal
|
|
|