• Georg Neis's avatar
    Reland "[ic] Improve performance of KeyedStoreIC on literal-based arrays." · 024d3499
    Georg Neis authored
    This is a reland of 181ac2b0 that fixes
    the issue with load elimination.
    
    Original change's description:
    > [ic] Improve performance of KeyedStoreIC on literal-based arrays.
    >
    > In mode STORE_AND_GROW_NO_TRANSITION, the handler for elements stores
    > used to bail out when seeing a COW array, even if the store that
    > installed the handler had been operating on the very same array.
    >
    > This CL adds support for COW arrays to the mode (and renames it to
    > STORE_AND_GROW_NO_TRANSITION_HANDLE_COW).
    >
    > Bug: v8:7334
    > Change-Id: I6a15e8c1ff8d4ad4d5b8fc447745dce5d146c67c
    > Reviewed-on: https://chromium-review.googlesource.com/876014
    > Commit-Queue: Georg Neis <neis@chromium.org>
    > Reviewed-by: Igor Sheludko <ishell@chromium.org>
    > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#50840}
    
    TBR=bmeurer@chromium.org
    
    Bug: v8:7334, chromium:805768
    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: I3d9c1b08583e08d68a1d30242a25e4a2190c8c55
    Reviewed-on: https://chromium-review.googlesource.com/886261
    Commit-Queue: Georg Neis <neis@chromium.org>
    Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
    Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#50885}
    024d3499
load-elimination.cc 48.6 KB