• bmeurer's avatar
    [es6] Introduce %ToInteger and %ToLength. · 93b2b262
    bmeurer authored
    This adds ES6 compliant Object::ToInteger, Object::ToInt32,
    Object::ToUint32 and Object::ToLength, and replaces the old
    Execution wrappers of those abstract operations (which were
    not using the correct ToPrimitive).
    
    This also introduces proper %ToInteger and %ToLength runtime
    entries, with a fast path %_ToInteger supported in fullcodegen
    and Crankshaft (for now). Internal JavaScript code should use
    TO_INTEGER and TO_LENGTH respectively.
    
    CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_layout_dbg,v8_linux_nosnap_dbg
    BUG=v8:4307
    LOG=n
    
    Review URL: https://codereview.chromium.org/1378533002
    
    Cr-Commit-Position: refs/heads/master@{#30993}
    93b2b262
api.cc 286 KB