| Index: src/heap/mark-compact.cc
|
| diff --git a/src/heap/mark-compact.cc b/src/heap/mark-compact.cc
|
| index a1736e9728a13ef05dff6e0c7da218d26cf271ca..aaa65f5e96a5fb28d312506fc5bafa9041c3c227 100644
|
| --- a/src/heap/mark-compact.cc
|
| +++ b/src/heap/mark-compact.cc
|
| @@ -857,9 +857,18 @@ void MarkCompactCollector::Prepare() {
|
| AbortWeakCells();
|
| AbortTransitionArrays();
|
| AbortCompaction();
|
| + if (heap_->UsingEmbedderHeapTracer()) {
|
| + heap_->mark_compact_collector()->embedder_heap_tracer()->AbortTracing();
|
| + }
|
| was_marked_incrementally_ = false;
|
| }
|
|
|
| + if (!was_marked_incrementally_) {
|
| + if (heap_->UsingEmbedderHeapTracer()) {
|
| + heap_->mark_compact_collector()->embedder_heap_tracer()->TracePrologue();
|
| + }
|
| + }
|
| +
|
| // Don't start compaction if we are in the middle of incremental
|
| // marking cycle. We did not collect any slots.
|
| if (!FLAG_never_compact && !was_marked_incrementally_) {
|
| @@ -2320,10 +2329,6 @@ void MarkCompactCollector::MarkLiveObjects() {
|
| {
|
| TRACE_GC(heap()->tracer(),
|
| GCTracer::Scope::MC_MARK_WEAK_CLOSURE_EPHEMERAL);
|
| - if (UsingEmbedderHeapTracer()) {
|
| - embedder_heap_tracer()->TracePrologue();
|
| - ProcessMarkingDeque();
|
| - }
|
| ProcessEphemeralMarking(&root_visitor, false);
|
| }
|
|
|
|
|