summary refs log tree commit diff stats
path: root/rust/qemu-api/src/zeroable.rs
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2025-02-09 16:01:38 -0800
committerRichard Henderson <richard.henderson@linaro.org>2025-02-18 08:29:03 -0800
commit6b8abd244b9355bc840bc14182aae9043f86f2f6 (patch)
tree249a49c7b129191fff562078d2139fa368690e60 /rust/qemu-api/src/zeroable.rs
parentbf455ec50b6fea15b4d2493059365bf94c706273 (diff)
downloadfocaccia-qemu-6b8abd244b9355bc840bc14182aae9043f86f2f6.tar.gz
focaccia-qemu-6b8abd244b9355bc840bc14182aae9043f86f2f6.zip
tcg: Introduce the 'z' constraint for a hardware zero register
For loongarch, mips, riscv and sparc, a zero register is
available all the time.  For aarch64, register index 31
depends on context: sometimes it is the stack pointer,
and sometimes it is the zero register.

Introduce a new general-purpose constraint which maps 0
to TCG_REG_ZERO, if defined.  This differs from existing
constant constraints in that const_arg[*] is recorded as
false, indicating that the value is in a register.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'rust/qemu-api/src/zeroable.rs')
0 files changed, 0 insertions, 0 deletions