• Benedikt Meurer's avatar
    [objects] Change String::length field to uint32_t. · c7a0049e
    Benedikt Meurer authored
    This changes the Name::hash_field and Symbol::flags to uint32_t as
    well, so that both Symbols and Strings consume one fewer word on 64-bit
    architectures now. More importantly the access to String::length is
    always a 32-bit field load now, even with 31-bit Smis (i.e. on ARM or
    on 64-bit with pointer compression), so the access should be faster.
    
    Bug: v8:7065, v8:8171
    Change-Id: I1a38f4470d62fbeba2b3bc5fcf4ecdbada7d6b8a
    Tbr: ulan@chromium.org, yangguo@chromium.org, ishell@chromium.org
    Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;luci.v8.try:v8_linux_noi18n_rel_ng
    Reviewed-on: https://chromium-review.googlesource.com/1224432Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#55861}
    c7a0049e
string.h 33.3 KB