• Mythri A's avatar
    Only flush feedback vector on bytecode flush · 92df7d10
    Mythri A authored
    When bytecode is flushed we also want to flush the feedback vectors to
    save memory. There was a bug in this code and we flushed
    ClosureFeedbackCellArray too. Flushing ClosureFeedbackCellArrays causes
    the closures created by this function before and after the bytecode
    flush to have different feedback cells and hence different feedback
    vectors. This cl fixes it so we only flush feedback vectors on a
    bytecode flush.
    
    Also this cl pretenures ClosureFeedbackCellArrays. Only FeedbackCells
    and FeedbackVectors can contain ClosureFeedbackCellArrays which are
    pretenured, so it is better to pretenure ClosureFeedbackCellArrays as
    well.
    
    
    Bug: chromium:1031479
    Change-Id: I7831441a95420b9e5711f4143461f1eb7fa1616a
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1980582
    Commit-Queue: Mythri Alle <mythria@chromium.org>
    Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
    Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Reviewed-by: 's avatarMichael Stanton <mvstanton@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#65866}
    92df7d10
js-objects-inl.h 38 KB