• ishell's avatar
    Filter invalid slots out from the SlotsBuffer after marking. · 5c47c1c0
    ishell authored
    There are two reasons that could cause invalid slots appearance in SlotsBuffer:
    1) If GC trims "tail" of an array for which it has already recorded a slots and then migrate another object to the "tail".
    2) Tagged slot could become a double slot after migrating of an object to another map with "shifted" fields (for example as a result of generalizing immutable data property to a data field).
    
    This CL also adds useful machinery that helps triggering incremental write barriers.
    
    BUG=chromium:454297
    LOG=Y
    
    Review URL: https://codereview.chromium.org/1010363005
    
    Cr-Commit-Position: refs/heads/master@{#27423}
    5c47c1c0
flag-definitions.h 45.1 KB