-
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: Clemens 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 | ||
arm64 | ||
ia32 | ||
loong64 | ||
mips | ||
mips64 | ||
ppc | ||
riscv | ||
s390 | ||
x64 | ||
DEPS | ||
liftoff-assembler-defs.h | ||
liftoff-assembler.cc | ||
liftoff-assembler.h | ||
liftoff-compiler.cc | ||
liftoff-compiler.h | ||
liftoff-register.h |