Commit b1a91ce5 authored by Michael Lippautz's avatar Michael Lippautz Committed by Commit Bot

heap: Consider embedder objects when linearly processing ephemerons

Without the proper check V8 would not delegate to the embedder (Blink) for
processing wrappable objects.

Bug: chromium:946941
Change-Id: I5aa3ca85e5113ab8d28a61eca6a5e0593c62f6a1
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1547649
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#60545}
parent afba7942
...@@ -1645,6 +1645,7 @@ void MarkCompactCollector::ProcessEphemeronsLinear() { ...@@ -1645,6 +1645,7 @@ void MarkCompactCollector::ProcessEphemeronsLinear() {
// is necessary. // is necessary.
work_to_do = !marking_worklist()->IsEmpty() || work_to_do = !marking_worklist()->IsEmpty() ||
!marking_worklist()->IsEmbedderEmpty() ||
!heap()->local_embedder_heap_tracer()->IsRemoteTracingDone(); !heap()->local_embedder_heap_tracer()->IsRemoteTracingDone();
CHECK(weak_objects_.discovered_ephemerons.IsEmpty()); CHECK(weak_objects_.discovered_ephemerons.IsEmpty());
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment