Reviewers: Igor Sheludko,

Message:
PTAL


https://codereview.chromium.org/1330483003/diff/120001/src/array.js
File src/array.js (right):

https://codereview.chromium.org/1330483003/diff/120001/src/array.js#newcode525
src/array.js:525: function ArrayConcatJS(arg1) {  // length == 1
This is no longer needed, however, I don't know how to properly remove
it, since it complains during mksnapshot and/or linking.

https://codereview.chromium.org/1330483003/diff/120001/src/builtins.cc
File src/builtins.cc (right):

https://codereview.chromium.org/1330483003/diff/120001/src/builtins.cc#newcode622
src/builtins.cc:622: class ArrayConcatVisitor {
Probably ElementsAccessor would be a better place for this?

https://codereview.chromium.org/1330483003/diff/120001/src/builtins.cc#newcode1177
src/builtins.cc:1177: bool HasConcatSpreadableModifier(Isolate* isolate,
Handle<Object> obj) {
At some point we need something faster here, since we have a massive
penalty with the FLAG_harmony_concat_spreadable enabled. At least we are
more correct this way (see https://codereview.chromium.org/1247243003)

https://codereview.chromium.org/1330483003/diff/120001/src/builtins.cc#newcode1409
src/builtins.cc:1409: if (HasConcatSpreadableModifier(isolate, array)) {
Needed for certain cases (see
https://codereview.chromium.org/1247243003)

https://codereview.chromium.org/1330483003/diff/120001/src/runtime/runtime-array.cc
File src/runtime/runtime-array.cc (right):

https://codereview.chromium.org/1330483003/diff/120001/src/runtime/runtime-array.cc#newcode448
src/runtime/runtime-array.cc:448: RUNTIME_FUNCTION(Runtime_ArrayConcat)
{
Again, I need to see on how to remove this.

Description:
Adding ElementsAccessor::Concat
- Moving parts of ArrayConcat from builtins.cc to the ElementsAccessor
- Removing ArrayConcat Runtime Function

BUG=v8:4317
LOG=N

Please review this at https://codereview.chromium.org/1330483003/

Base URL: https://chromium.googlesource.com/v8/v8.git@2015-09-01_array_builtins_shift

Affected files (+924, -865 lines):
  M src/array.js
  M src/bootstrapper.cc
  M src/builtins.cc
  M src/elements.h
  M src/elements.cc
  M src/runtime/runtime.h
  M src/runtime/runtime-array.cc
  M test/mjsunit/array-natives-elements.js
  M test/test262-es6/test262-es6.status


--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to