[heap] Replace marking deque with marking worklist.

Change-Id: Id73c2c3a8b19c3e398d7de760dffe95e0e8b49a4
Reviewed-on: https://chromium-review.googlesource.com/566836
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46583}
This commit is contained in:
Ulan Degenbaev 2017-07-11 17:23:51 +02:00 committed by Commit Bot
parent 97f5e1fad0
commit 5e724050da

View File

@ -390,7 +390,6 @@ class MinorMarkCompactCollector final : public MarkCompactCollectorBase {
// Collector for young and old generation.
class MarkCompactCollector final : public MarkCompactCollectorBase {
public:
#ifdef V8_CONCURRENT_MARKING
// Wrapper for the shared and bailout worklists.
class MarkingWorklist {
public:
@ -408,7 +407,9 @@ class MarkCompactCollector final : public MarkCompactCollectorBase {
HeapObject* Pop() {
HeapObject* result;
#ifdef V8_CONCURRENT_MARKING
if (bailout_.Pop(kMainThread, &result)) return result;
#endif
if (shared_.Pop(kMainThread, &result)) return result;
return nullptr;
}
@ -458,9 +459,6 @@ class MarkCompactCollector final : public MarkCompactCollectorBase {
ConcurrentMarkingWorklist shared_;
ConcurrentMarkingWorklist bailout_;
};
#else
using MarkingWorklist = SequentialMarkingDeque;
#endif
class RootMarkingVisitor;