• bmeurer's avatar
    [turbofan] Introduce a dedicated CheckMaps simplified operator. · 8201579e
    bmeurer authored
    So far we always create explicit control flow for map checks during
    JSNativeContextSpecialization, or in the monomorphic case we used a
    CheckIf combined with a map comparison. In either case we cannot
    currently effectively utilize the map check information during load
    elimination to optimize (polymorphic) map checks and elements kind
    transitions.
    
    With the introduction of CheckMaps, we can now start optimizing map
    checks in a more effective fashion. This CL doesn't change anything
    in that direction yet, but merely changes the fundamental mechanism.
    
    This also removes the stable map optimization from the Typer, where
    it was always a bit odd, and puts it into the typed lowering and
    the native context specialization instead.
    
    R=epertoso@chromium.org
    BUG=v8:4930,v8:5141
    
    Review-Url: https://codereview.chromium.org/2196653002
    Cr-Commit-Position: refs/heads/master@{#38166}
    8201579e
load-elimination.cc 20.8 KB