• Dominik Inführ's avatar
    [heap] Reduce size of possibly empty buckets · 80caf2cf
    Dominik Inführ authored
    Before this CL a byte was used per bucket to store whether the bucket
    is possibly empty or not. This CL changes this such that each bucket
    only needs a single bit.
    
    PossiblyEmptyBuckets is now a word in the page header. If more bits
    are needed than fit into a single word, an external bitmap is
    allocated using AlignedAlloc. Storing this on the page header, allows
    to remove initial_buckets from the SlotSet. The SlotSet allocation is
    then again a power-of-2 in release mode.
    
    Change-Id: If61fd5cfa153f98757beeb444a530f6e2803fdb6
    Bug: chromium:1023139
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1906376
    Commit-Queue: Dominik Inführ <dinfuehr@chromium.org>
    Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#64991}
    80caf2cf
spaces.cc 152 KB