• bmeurer's avatar
    [for-in] Sanitize for-in optimizations and fix bailout points. · f48bf12f
    bmeurer authored
    The PrepareId bailout location was used incorrectly in Crankshaft and,
    as it turns out, is not required anyway (once you do it right). Also
    there was some premature optimization going on with the CheckEnumCache
    (trying to load null from roots only once), plus we can be smarter about
    the null/undefined check anyway.
    
    The idea behind this changes is to prepare unification of the two
    different ForInPrepare implementations that we now have, with the end
    result being that we only use the new implementation that was recently
    added for the interpreter.
    
    R=jarin@chromium.org
    BUG=v8:3650
    LOG=n
    
    Review URL: https://codereview.chromium.org/1618613002
    
    Cr-Commit-Position: refs/heads/master@{#33426}
    f48bf12f
full-codegen-arm.cc 166 KB