• Mike Stanton's avatar
    [CSA builtins] Fast case array iteration does unnecessary prototype walks · 61bb129f
    Mike Stanton authored
    In ArrayBuiltinsAssembler::VisitAllFastElementsOneKind(), we enumerate
    an arrays elements, carefully checking for the "hole" when required.
    This code is only called for arrays whose prototype is the initial array
    prototype. And the path is only available when the initial array
    prototype is free of elements. Since that's the case, we only need to
    verify that the initial array prototype remains free of elements during
    an iteration with javascript callbacks. We don't need a body of code
    that can walk the prototype chain looking for elements visible through
    the "hole" value. In practice, this code was never run.
    
    Change-Id: Iba5e275c559d495aa1cf6a4f29d66e2ce475c981
    Reviewed-on: https://chromium-review.googlesource.com/1015023
    Commit-Queue: Michael Stanton <mvstanton@chromium.org>
    Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#52660}
    61bb129f
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...
unittests Loading commit data...
wasm-spec-tests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...