• Clemens Backes's avatar
    [compiler] Fix mixed same-as-input and unique registers · 10bbbf13
    Clemens Backes authored
    The mid-tier register allocator could not handle the case that the same
    virtual register was used for
    - the input corresponding to the 'same-as-input' output, and
    - another 'unique register' input.
    
    In this case, it cannot choose the already assigned register for the
    'unique' register. Instead, it needs to allocate a new register and
    introduce a gap move to duplicate the input value in two different
    registers.
    
    FYI, the instruction where the current logic failed was:
      (v5(0), v6(R)) = IA32AddPair v7(R) v7(*) v8(R) v7(R)
    (where the last input was marked 'unique').
    
    R=leszeks@chromium.org
    CC=thibaudm@chromium.org
    
    Bug: v8:12330, chromium:1272204
    Change-Id: Ie4843aa9f5e027afe503e0481a4acdfa325dfe0e
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3347821Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#78411}
    10bbbf13
Name
Last commit
Last update
..
benchmarks Loading commit data...
bigint Loading commit data...
cctest Loading commit data...
common Loading commit data...
debugger Loading commit data...
debugging Loading commit data...
fuzzer Loading commit data...
fuzzilli Loading commit data...
inspector Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mkgrokdump Loading commit data...
mozilla Loading commit data...
test262 Loading commit data...
torque Loading commit data...
unittests Loading commit data...
wasm-api-tests Loading commit data...
wasm-js Loading commit data...
wasm-spec-tests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...
OWNERS Loading commit data...