• Patrick Thier's avatar
    Revert "[turbofan] Handle Allocations in StoreStoreElimination" · 7796d60e
    Patrick Thier authored
    This reverts commit d87e5f42.
    
    Reason for revert: Causes issues by eliminating stores that can be observed by GC. Flagging stores as "initializing" needs better handling than what was done in this CL.
    
    Original change's description:
    > [turbofan] Handle Allocations in StoreStoreElimination
    >
    > Previously, StoreStoreElimination handled allocations as
    > "can observe anything". This is pretty conservative and prohibits
    > elimination of repeated double stores to the same field.
    > With this CL allocations are changed to "observes initializing stores".
    > This way it is guaranteed that initializing stores to a freshly created
    > object are not eliminated before allocations (that can trigger GC), but
    > allows elimination of non-initializing, unobservable stores in the
    > presence of allocations.
    >
    > Bug: v8:12200
    > Change-Id: I5ef1ca8892a84a3b332e081e2fa6285d0eba9d46
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3211585
    > Commit-Queue: Patrick Thier <pthier@chromium.org>
    > Reviewed-by: Maya Lekova <mslekova@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#77299}
    
    Bug: v8:12200
    Change-Id: I0f18cbc3e848011f1a998b073b05b3bdbc4e1223
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3218158
    Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Auto-Submit: Patrick Thier <pthier@chromium.org>
    Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
    Commit-Queue: Patrick Thier <pthier@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77342}
    7796d60e
store-store-elimination.cc 17.7 KB