• adamk's avatar
    Rewrite Object.prototype.toString in C++ · ed698f3d
    adamk authored
    The main impetus is to improve performance when --harmony-tostring
    is enabled, thanks to using a generic property load instead of a
    megamorphic IC.
    
    This also reduces duplication, as the API function
    v8::Object::ObjectProtoToString can share the runtime implementation.
    
    The only functional change in this patch is to drop an accidental difference
    between the JS and API implementations: the arguments object should toString
    as "[object Arguments]". The JS side was corrected in
    https://code.google.com/p/v8/source/detail?r=3279, but the API version was
    missed in that patch.
    
    BUG=chromium:555127, v8:3502
    LOG=n
    CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
    
    Review URL: https://codereview.chromium.org/1509533003
    
    Cr-Commit-Position: refs/heads/master@{#32777}
    ed698f3d
Name
Last commit
Last update
..
OWNERS Loading commit data...
array-iterator.js Loading commit data...
array.js Loading commit data...
arraybuffer.js Loading commit data...
collection-iterator.js Loading commit data...
collection.js Loading commit data...
date.js Loading commit data...
generator.js Loading commit data...
harmony-array-includes.js Loading commit data...
harmony-atomics.js Loading commit data...
harmony-object-observe.js Loading commit data...
harmony-reflect.js Loading commit data...
harmony-regexp.js Loading commit data...
harmony-sharedarraybuffer.js Loading commit data...
harmony-simd.js Loading commit data...
i18n.js Loading commit data...
iterator-prototype.js Loading commit data...
json.js Loading commit data...
macros.py Loading commit data...
math.js Loading commit data...
messages.js Loading commit data...
object-observe.js Loading commit data...
prologue.js Loading commit data...
promise-extra.js Loading commit data...
promise.js Loading commit data...
proxy.js Loading commit data...
regexp.js Loading commit data...
runtime.js Loading commit data...
spread.js Loading commit data...
string-iterator.js Loading commit data...
string.js Loading commit data...
symbol.js Loading commit data...
templates.js Loading commit data...
typedarray.js Loading commit data...
uri.js Loading commit data...
v8natives.js Loading commit data...
weak-collection.js Loading commit data...