• Camillo Bruni's avatar
    Reland "[parser] Inline byte scope data into PreparseData object" · a6f44629
    Camillo Bruni authored
    This is a reland of e2d44ede
    
    Original change's description:
    > [parser] Inline byte scope data into PreparseData object
    > 
    > Each PreparseData object had at least one pointer to a PodArray for its
    > serialized scope data. These objects usually have only tens of bytes of
    > payload. By inlining the byte data we save 3 words per PreparseData object.
    > This optimization saves 140KB of data on cnn.com.
    > 
    > 
    > - Store data_length and inner_length as int32 saving a words on 64bit
    > - Inline store byte data into PreparseData
    > - OnHeapConsumedPreparseData directly uses the PreparseData object
    > - get_inner, set_inner no longer allow Null sentinels
    > 
    > Change-Id: I1f62154d05ea2f98a6574efa738b32a8a84319d5
    > Reviewed-on: https://chromium-review.googlesource.com/c/1406673
    > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
    > Commit-Queue: Camillo Bruni <cbruni@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#58751}
    
    Change-Id: I1f0a22c641d0d67f435b01c82daf8da7f144bff4
    Reviewed-on: https://chromium-review.googlesource.com/c/1407066Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Commit-Queue: Camillo Bruni <cbruni@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#58785}
    a6f44629
objects-inl.h 43.3 KB