• Hai Dang's avatar
    Add fast path for spreading keys/values of JSMap and JSSet. · fb29a554
    Hai Dang authored
    This CL extends IterableToListWithSymbolLookup with fast paths
    for spreading keys/values iterators of JSMap, and values iterator
    of JSSet (which is also the iterator of Set.prototype.keys() and
    Set.prototype[Symbol.iterator]()). The fast paths are only taken
    if the target still has original iteration behavior.
    
    For iterators it is also required that the iterator is not
    partially consumed. After spreading, to be spec-compliant, the
    iterator is exhausted. Tests are added.
    
    Bug: v8:7980
    Change-Id: Ida74e5ecbbc5ba5488d13a40f2c4bda14c781cbf
    Reviewed-on: https://chromium-review.googlesource.com/c/1276632Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
    Commit-Queue: Hai Dang <dhai@google.com>
    Cr-Commit-Position: refs/heads/master@{#56716}
    fb29a554
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
common Loading commit data...
debugger Loading commit data...
fuzzer Loading commit data...
inspector Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mkgrokdump Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
test262 Loading commit data...
torque Loading commit data...
unittests Loading commit data...
wasm-spec-tests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...