• Dominik Inführ's avatar
    [heap] Heap::EnsureSweepingCompleted only sweeps one page · 31251988
    Dominik Inführ authored
    This CL optimizes Heap::EnsureSweepingCompleted() by only ensure that
    sweeping is finished for that object's page only and not for the whole
    heap.
    
    For this purpose the page is removed from the sweeping_list_ and
    processed on the main thread. In case the object is in new space,
    this method will just use EnsureIterabilityCompleted() since
    the iterability task doesn't currently have any kind of synchronization.
    Also the new space will generally be much smaller.
    
    Bug: v8:11837
    Change-Id: I7e878b5c84c223009fac0d58798197be5cd524e1
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2958488
    Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
    Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#75148}
    31251988
sweeper.cc 24.2 KB