• 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
..
arm Loading commit data...
arm64 Loading commit data...
ia32 Loading commit data...
mips Loading commit data...
mips64 Loading commit data...
ppc Loading commit data...
s390 Loading commit data...
x64 Loading commit data...
OWNERS Loading commit data...
access-compiler-data.h Loading commit data...
access-compiler.cc Loading commit data...
access-compiler.h Loading commit data...
accessor-assembler.cc Loading commit data...
accessor-assembler.h Loading commit data...
binary-op-assembler.cc Loading commit data...
binary-op-assembler.h Loading commit data...
call-optimization.cc Loading commit data...
call-optimization.h Loading commit data...
handler-compiler.cc Loading commit data...
handler-compiler.h Loading commit data...
handler-configuration-inl.h Loading commit data...
handler-configuration.cc Loading commit data...
handler-configuration.h Loading commit data...
ic-inl.h Loading commit data...
ic-stats.cc Loading commit data...
ic-stats.h Loading commit data...
ic.cc Loading commit data...
ic.h Loading commit data...
keyed-store-generic.cc Loading commit data...
keyed-store-generic.h Loading commit data...
stub-cache.cc Loading commit data...
stub-cache.h Loading commit data...