• Leszek Swirski's avatar
    [turbofan] Allow registers/accum/params to share state value nodes · 6c5cd4d2
    Leszek Swirski authored
    Previously, accumulators and registers each had a single element cache,
    distinct from the local register cache. This meant that
    
     a) Dead accumulator state nodes were not re-used if the accumulator
        became live.
     b) Functions with only one parameter (the this object) or only one
        local register could not reuse the single-valued state value node
        of the accumulator.
    
    This patch introduces heavier re-use of state-value nodes, decreasing
    memory use when building the graph and decreasing the number of nodes
    created overall.
    
    Change-Id: Ie3cc6913483aab0819d99be382eb2cb42de8c3d2
    Reviewed-on: https://chromium-review.googlesource.com/440926Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#43148}
    6c5cd4d2
bytecode-graph-builder.cc 88.2 KB