• mlippautz's avatar
    [heap] Move to LAB-based allocation for newspace evacuation. · a4e3a3b6
    mlippautz authored
    This CL prepare newspace evacuation for parallel execution wrt. to actual
    allocations. The priority for allocations is:
    * Try to allocate from LAB if objects are below kMaxLabObjectSize
    * Allocate directly (synchronized) from newspace for larger objects.
    * Fall back to old space allocation (which will be backed by a local compaction
      space in future).
    
    Semantical change: Previously we did fall back to regular new space promotion if
    we are OOM in old space. With this CL we fall back to new space promotion, which
    could fail because of fragmentation, again leading to an old space allocation
    that finally bails into OOM.
    
    Newspace evacuation is still single threaded and requires further changes to
    allocation site tracking.
    
    BUG=chromium:524425
    LOG=N
    
    Review URL: https://codereview.chromium.org/1487853002
    
    Cr-Commit-Position: refs/heads/master@{#32970}
    a4e3a3b6
mark-compact.cc 140 KB