Commit bce715e8da for qemu.org
commit bce715e8da9a8f1ecffbca723821660eb28d8d25
Author: Richard Henderson <richard.henderson@linaro.org>
Date: Fri Jul 31 11:56:14 2026 -0700
target/s390x/tcg: Convert op_ld8s to op_ld
Begin unifying load operations by storing MemOp in insn->data.
Start with op_ld8s.
Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
Reviewed-by: Ilya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20260731185628.23161-2-richard.henderson@linaro.org>
diff --git a/target/s390x/tcg/insn-data.h.inc b/target/s390x/tcg/insn-data.h.inc
index 1ea72248a6..be698ee002 100644
--- a/target/s390x/tcg/insn-data.h.inc
+++ b/target/s390x/tcg/insn-data.h.inc
@@ -481,10 +481,10 @@
/* LOAD BYTE */
C(0xb926, LBR, RRE, EI, 0, r2_8s, 0, r1_32, mov2, 0)
C(0xb906, LGBR, RRE, EI, 0, r2_8s, 0, r1, mov2, 0)
- C(0xe376, LB, RXY_a, LD, 0, a2, new, r1_32, ld8s, 0)
- C(0xe377, LGB, RXY_a, LD, 0, a2, r1, 0, ld8s, 0)
+ D(0xe376, LB, RXY_a, LD, 0, a2, new, r1_32, ld, 0, MO_SB)
+ D(0xe377, LGB, RXY_a, LD, 0, a2, r1, 0, ld, 0, MO_SB)
/* LOAD BYTE HIGH */
- C(0xe3c0, LBH, RXY_a, HW, 0, a2, new, r1_32h, ld8s, 0)
+ D(0xe3c0, LBH, RXY_a, HW, 0, a2, new, r1_32h, ld, 0, MO_SB)
/* LOAD COMPLEMENT */
C(0x1300, LCR, RR_a, Z, 0, r2, new, r1_32, neg, neg32)
C(0xb903, LCGR, RRE, Z, 0, r2, r1, 0, neg, neg64)
diff --git a/target/s390x/tcg/translate.c b/target/s390x/tcg/translate.c
index 1b6023168b..4a0573820d 100644
--- a/target/s390x/tcg/translate.c
+++ b/target/s390x/tcg/translate.c
@@ -2749,9 +2749,9 @@ static DisasJumpType op_llgt(DisasContext *s, DisasOps *o)
return DISAS_NEXT;
}
-static DisasJumpType op_ld8s(DisasContext *s, DisasOps *o)
+static DisasJumpType op_ld(DisasContext *s, DisasOps *o)
{
- tcg_gen_qemu_ld_i64(o->out, o->in2, get_mem_index(s), MO_SB);
+ tcg_gen_qemu_ld_i64(o->out, o->in2, get_mem_index(s), s->insn->data);
return DISAS_NEXT;
}