[heap] Clear old-to-old recorded slots in the sweeper.
Currently we clear only old-to-new slots in the sweeper. For old-to-old slots we maintain the invariant that there are no recorded slots in dead objects by explicitly clearing them on object size change and array trimming. The write barrier for concurrent marking will record slots even when the host object is white. Thus, it can introduce slots in dead objects, which will break evacuation phase if we do not clear them in the sweeper. Besides that, the patch makes handling of slots more uniform and allows us to remove clearing of slots on object size changes. BUG=chromium:694255 Change-Id: I48f60eb25ddc48c6948be4461367e3f7abf74672 Reviewed-on: https://chromium-review.googlesource.com/592207Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46996}
Showing
Please
register
or
sign in
to comment