tcg: Split INDEX_op_qemu_{ld,st}* for guest address size
commitfecccfcc542370caedbfc09fe9963d128f5e73a0
authorRichard Henderson <richard.henderson@linaro.org>
Wed, 17 May 2023 03:07:20 +0000 (16 20:07 -0700)
committerRichard Henderson <richard.henderson@linaro.org>
Wed, 17 May 2023 03:07:20 +0000 (16 20:07 -0700)
tree78d60fe5833e95d65d2344981ea4ea0ddeaa1386
parent0700ceb3939f08619d7f323209597ef62b489514
tcg: Split INDEX_op_qemu_{ld,st}* for guest address size

For 32-bit hosts, we cannot simply rely on TCGContext.addr_bits,
as we need one or two host registers to represent the guest address.

Create the new opcodes and update all users.  Since we have not
yet eliminated TARGET_LONG_BITS, only one of the two opcodes will
ever be used, so we can get away with treating them the same in
the backends.

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
15 files changed:
include/tcg/tcg-opc.h
tcg/aarch64/tcg-target.c.inc
tcg/arm/tcg-target.c.inc
tcg/i386/tcg-target.c.inc
tcg/loongarch64/tcg-target.c.inc
tcg/mips/tcg-target.c.inc
tcg/optimize.c
tcg/ppc/tcg-target.c.inc
tcg/riscv/tcg-target.c.inc
tcg/s390x/tcg-target.c.inc
tcg/sparc64/tcg-target.c.inc
tcg/tcg-op-ldst.c
tcg/tcg.c
tcg/tci.c
tcg/tci/tcg-target.c.inc