Commit 8b97eb18 authored by Michael Starzinger's avatar Michael Starzinger Committed by Commit Bot

[heap] Add support for code data to concurrent marker.

R=ulan@chromium.org

Change-Id: I1ce0dbe909ffe3da784d5196e1c1d89f322f05c3
Reviewed-on: https://chromium-review.googlesource.com/739321Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#48973}
parent 872accb4
......@@ -203,11 +203,6 @@ class ConcurrentMarkingVisitor final
return 0;
}
int VisitCodeDataContainer(Map* map, CodeDataContainer* object) {
bailout_.Push(object);
return 0;
}
// ===========================================================================
// Objects with weak fields and/or side-effectiful visitation.
// ===========================================================================
......@@ -229,6 +224,14 @@ class ConcurrentMarkingVisitor final
return size;
}
int VisitCodeDataContainer(Map* map, CodeDataContainer* object) {
if (!ShouldVisit(object)) return 0;
int size = CodeDataContainer::BodyDescriptorWeak::SizeOf(map, object);
VisitMapPointer(object, object->map_slot());
CodeDataContainer::BodyDescriptorWeak::IterateBody(object, size, this);
return size;
}
int VisitJSFunction(Map* map, JSFunction* object) {
if (!ShouldVisit(object)) return 0;
int size = JSFunction::BodyDescriptorWeak::SizeOf(map, object);
......
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