[sandbox] Fix DCHECK failure in ExternalPointerTable
When compaction is aborted during marking, the start_of_evacuation_area_ value would previously be set to -1. This would, however, cause some DCHECK failures during sweeping, which expect this value to contain the (previous) start value. This is now fixed by just setting the top bits of the start_of_evacuation_area_ value when aborting compaction. During sweeping, these bits are cleared again and the DCHECKs work as expected. Bug: v8:10391, chromium:1355640 Change-Id: Id48ee71a3942b3e0b88e8e1667a8f9e109a68bb3 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3849650 Commit-Queue: Samuel Groß <saelo@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82661}
Showing
Please
register
or
sign in
to comment