• Jakob Kummerow's avatar
    [wasm][liftoff][arm] Fix SIMD parameter args · 8463f36b
    Jakob Kummerow authored
    On arm, SIMD registers alias with pairs of double registers. When
    deciding where to allocate the parameter values, we expect to see
    all register-passed parameters before all stack-passed parameters;
    but due to s128 and f64 params being arbitrarily interleaved this
    doesn't always hold.
    This patch fixes that by first finding all registers used for
    parameters, and then blocking these when allocating registers
    for other parameters.
    
    Fixed: chromium:1355070
    Change-Id: I20deace58b960a9d1a5e3b794c46011f8f31b333
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3854497Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#82702}
    8463f36b
Name
Last commit
Last update
..
arm Loading commit data...
arm64 Loading commit data...
ia32 Loading commit data...
loong64 Loading commit data...
mips Loading commit data...
mips64 Loading commit data...
ppc Loading commit data...
riscv Loading commit data...
s390 Loading commit data...
x64 Loading commit data...
DEPS Loading commit data...
liftoff-assembler-defs.h Loading commit data...
liftoff-assembler.cc Loading commit data...
liftoff-assembler.h Loading commit data...
liftoff-compiler.cc Loading commit data...
liftoff-compiler.h Loading commit data...
liftoff-register.h Loading commit data...