DescriptionAdd Array support for @@species and subclassing
This patch implements @@species, guarded behind the --harmony-species
flag, on Arrays. Methods which return an Array will instead return
the appropriate instance based on the ArraySpeciesCreate algorithm.
The algorithm is implemented in C++ to get access to realm information
and to implement some Array methods in C++, but it is also accessed
from JavaScript through a new runtime function. A couple interactive
Octane runs show no performance regression with the flag turned off,
but turning --harmony-species on will surely have a significant
regression, as Array methods now heavily use ObjectDefineProperty.
BUG=v8:4093
LOG=Y
R=adamk,cbruni
Committed: https://crrev.com/6e96223750a748a7030386cb12904c1163e61d9d
Cr-Commit-Position: refs/heads/master@{#33144}
Patch Set 1 #Patch Set 2 : Some fixes #
Total comments: 38
Patch Set 3 : Changes from Adam's review #Patch Set 4 : A few formatting fixes #
Total comments: 6
Patch Set 5 : Disable regress test temporarily #Patch Set 6 : Last couple comments #
Messages
Total messages: 19 (7 generated)
|