• Jakob Gruber's avatar
    [compiler] Reimplement AsElementsKind transition walk · db8b9028
    Jakob Gruber authored
    MapRef::AsElementsKind can now concurrently walk transitions to find a
    map of the requested elements kind.
    
    Note this implementation is still less powerful than what we had before
    crrev.com/c/3021175, since we never allocate new maps. When the
    transition walk fails to find an appropriate map, we bail out.
    
    I don't expect this to be a problem - when optimizing, the code has
    already run multiple times and transitioned maps should exist.
    
    Bug: v8:7790, v8:11988
    Change-Id: Ic767b40c29bb86f7c4167097c76c5417985420fb
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3086471
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#76216}
    db8b9028
map.cc 90.1 KB