Reviewers: Igor Sheludko,
Message:
PTAL
I think some more work could be done, but I am lacking the proper data
structures.
Something like a SortedHashSet would be perfect, but it seems like the
existing
implementation doesn't expose a proper C++ interface (those used by JSSet
and
JSMap). Then pass that along from GetKeys to all Union* calls as
accumulator.
https://codereview.chromium.org/1316213008/diff/20001/src/objects.cc
File src/objects.cc (right):
https://codereview.chromium.org/1316213008/diff/20001/src/objects.cc#newcode15167
src/objects.cc:15167: Handle<ObjectHashTable>
ObjectHashTable::Put(Isolate* isolate,
duplicated for tryout... has to be reverted
https://codereview.chromium.org/1316213008/diff/20001/src/objects.cc#newcode15185
src/objects.cc:15185: int32_t hash) {
again, test duplication
Description:
Speedup JSReceiver::GetKeys
The core bottleneck lies in the creation of union. Depending on the size
of the Arrays it makes sense to rely on a Dictionary / Map for the lookup.
BUG=
Please review this at https://codereview.chromium.org/1316213008/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+112, -11 lines):
M src/objects.h
M src/objects.cc
--
--
v8-dev mailing list
v8-dev@googlegroups.com
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 v8-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.