• pthier's avatar
    Reland "[strings] Fix raw hash lookup for forwarded strings" · 3cb7a814
    pthier authored
    This is a reland of commit 0a1f0e33
    
    Changes since revert:
    - Deferred label for loading from forwarding table.
    - Check if hash is computed instead of checking if it is a forwarding index.
    - Retreive hash from forwarding table only if hash is assumed to be computed.
    
    Original change's description:
    > [strings] Fix raw hash lookup for forwarded strings
    >
    > Raw hashes may need to be looked up via the forwarding table when
    > internalized strings are forwarded to external resources. Notably, the
    > megamorphic ICs were not correctly fetching the raw hash.
    >
    > Bug: v8:12007
    > Change-Id: Ibbc75de57e707788f544fbd1a0f8f0041350e29d
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3885379
    > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    > Commit-Queue: Shu-yu Guo <syg@chromium.org>
    > Reviewed-by: Patrick Thier <pthier@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#83115}
    
    Bug: v8:12007
    Change-Id: Ia88ed51a49c62170bc960b8f69673bb1e59a6009
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3888057
    Commit-Queue: Patrick Thier <pthier@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#83246}
    3cb7a814
Name
Last commit
Last update
..
arm Loading commit data...
arm64 Loading commit data...
ia32 Loading commit data...
loong64 Loading commit data...
mips64 Loading commit data...
ppc Loading commit data...
riscv Loading commit data...
s390 Loading commit data...
shared-ia32-x64 Loading commit data...
x64 Loading commit data...
DEPS Loading commit data...
DIR_METADATA Loading commit data...
OWNERS Loading commit data...
aligned-slot-allocator.cc Loading commit data...
aligned-slot-allocator.h Loading commit data...
assembler-arch.h Loading commit data...
assembler-inl.h Loading commit data...
assembler.cc Loading commit data...
assembler.h Loading commit data...
atomic-memory-order.h Loading commit data...
background-merge-task.h Loading commit data...
bailout-reason.cc Loading commit data...
bailout-reason.h Loading commit data...
callable.h Loading commit data...
code-comments.cc Loading commit data...
code-comments.h Loading commit data...
code-desc.cc Loading commit data...
code-desc.h Loading commit data...
code-factory.cc Loading commit data...
code-factory.h Loading commit data...
code-reference.cc Loading commit data...
code-reference.h Loading commit data...
code-stub-assembler.cc Loading commit data...
code-stub-assembler.h Loading commit data...
compilation-cache.cc Loading commit data...
compilation-cache.h Loading commit data...
compiler.cc Loading commit data...
compiler.h Loading commit data...
constant-pool.cc Loading commit data...
constant-pool.h Loading commit data...
constants-arch.h Loading commit data...
cpu-features.h Loading commit data...
external-reference-encoder.cc Loading commit data...
external-reference-encoder.h Loading commit data...
external-reference-table.cc Loading commit data...
external-reference-table.h Loading commit data...
external-reference.cc Loading commit data...
external-reference.h Loading commit data...
flush-instruction-cache.cc Loading commit data...
flush-instruction-cache.h Loading commit data...
handler-table.cc Loading commit data...
handler-table.h Loading commit data...
interface-descriptors-inl.h Loading commit data...
interface-descriptors.cc Loading commit data...
interface-descriptors.h Loading commit data...
label.h Loading commit data...
machine-type.cc Loading commit data...
machine-type.h Loading commit data...
macro-assembler-inl.h Loading commit data...
macro-assembler.h Loading commit data...
maglev-safepoint-table.cc Loading commit data...
maglev-safepoint-table.h Loading commit data...
optimized-compilation-info.cc Loading commit data...
optimized-compilation-info.h Loading commit data...
pending-optimization-table.cc Loading commit data...
pending-optimization-table.h Loading commit data...
register-arch.h Loading commit data...
register-base.h Loading commit data...
register-configuration.cc Loading commit data...
register-configuration.h Loading commit data...
register.h Loading commit data...
reglist-base.h Loading commit data...
reglist.h Loading commit data...
reloc-info.cc Loading commit data...
reloc-info.h Loading commit data...
safepoint-table-base.h Loading commit data...
safepoint-table.cc Loading commit data...
safepoint-table.h Loading commit data...
script-details.h Loading commit data...
signature.h Loading commit data...
source-position-table.cc Loading commit data...
source-position-table.h Loading commit data...
source-position.cc Loading commit data...
source-position.h Loading commit data...
string-constants.cc Loading commit data...
string-constants.h Loading commit data...
tick-counter.cc Loading commit data...
tick-counter.h Loading commit data...
tnode.cc Loading commit data...
tnode.h Loading commit data...
turbo-assembler.cc Loading commit data...
turbo-assembler.h Loading commit data...
unoptimized-compilation-info.cc Loading commit data...
unoptimized-compilation-info.h Loading commit data...