• Benedikt Meurer's avatar
    [ic] Handle String character loads in KeyedLoadIC_Megamorphic. · 8bb392d2
    Benedikt Meurer authored
    This was discovered on the babel test of the web-tooling-benchmark,
    which suffers from a high %KeyedGetProperty overhead, and most of
    these calls come from the fact that the KeyedLoadIC_Megamorphic bails
    out to the runtime call for all String instance types. Just handling
    in-bound accesses to characters reduces the overhead incurred by
    %KeyedGetProperty from roughly 9% to roughly 2% only.
    
    This reduces the number of runs per second on the babel test by around
    7-8% on average.
    
    Bug: v8:6936, v8:7014
    Change-Id: I0dc247d7d6457c7032636d2852cb54cef1b24979
    Reviewed-on: https://chromium-review.googlesource.com/743012Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#49021}
    8bb392d2
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
docs Loading commit data...
gni Loading commit data...
gypfiles Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.editorconfig Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...