• Michael Lippautz's avatar
    Reland "[heap] Fix bogus object size computation" · 10eac4eb
    Michael Lippautz authored
    This is a reland of commit 445190bf
    
    The fix addresses the issue where object size accounting went out of
    sync because of right-trimmed LO in new space that were migrated with
    a different size than they were accounted for.
    
    The fix now iterates only live objects for size computation which
    avoids accessing reclaimed maps and fixes up the objects accounting.
    
    Original change's description:
    > [heap] Fix bogus object size computation
    >
    > The map of an object may be gone by the time we try to compute its
    > size for accounting purposes.
    >
    > Bug: chromium:1319217
    > Change-Id: I93cca766a8cedebf4ed30a3a65fd6eff5bc72bcf
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3605817
    > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
    > Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#80271}
    
    Bug: chromium:1319217
    Change-Id: I8d032edf96a4bf4b0faa4bbd9b0be247051c49fb
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3616507Reviewed-by: 's avatarDominik Inführ <dinfuehr@chromium.org>
    Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#80316}
    10eac4eb
mark-compact.h 29.1 KB