• Benedikt Meurer's avatar
    [ic] Internalize strings on the fly in KeyedLoadICGeneric. · 6366a010
    Benedikt Meurer authored
    This turns on the existing --internalize_on_the_fly flag for the
    MEGAMORPHIC KeyedLoadIC to properly internalize strings before
    looking up the property. This avoids the otherwise taken runtime
    call to %KeyedGetProperty, which is definitely slower.
    
    Initially the --internalize_on_the_fly flag was turned off because
    internalizing strings on the fly causes too much traffic on the
    megamorphic stub cache. We avoid this problem here by not probing
    the stub cache in that case, which still gives the benefit of not
    having to go to the runtime.
    
    This improves the babylon test on the web-tooling-benchmark by around
    2-3% and will probably also help with several tests (like React or
    Ember) on the Speedometer benchmark.
    
    If this CL causes trouble (i.e. tanks something important), we can
    just turn off the --internalize_on_the_fly flag again.
    
    Bug: v8:6936, v8:7026
    Change-Id: Ia59a8a3799d9624d831d66b05bae3ecef31cee0a
    Reviewed-on: https://chromium-review.googlesource.com/750821Reviewed-by: 's avatarIgor Sheludko <ishell@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#49072}
    6366a010
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...