Commit 78abc31683 for qemu.org
commit 78abc316832032a0a0e9b805d15ebc8bb0d7c32f
Author: Richard Henderson <richard.henderson@linaro.org>
Date: Fri Jul 31 11:56:21 2026 -0700
target/s390x/tcg: Convert op_st8 to op_st
Begin unifying store operations by storing MemOp in insn->data.
Start with op_st8.
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-9-richard.henderson@linaro.org>
diff --git a/target/s390x/tcg/insn-data.h.inc b/target/s390x/tcg/insn-data.h.inc
index b7d174b7c6..fe90d61c88 100644
--- a/target/s390x/tcg/insn-data.h.inc
+++ b/target/s390x/tcg/insn-data.h.inc
@@ -859,10 +859,10 @@
D(0xc40f, STRL, RIL_b, GIE, r1_o, ri2, 0, 0, st32, 0, MO_ALIGN)
D(0xc40b, STGRL, RIL_b, GIE, r1_o, ri2, 0, 0, st64, 0, MO_ALIGN)
/* STORE CHARACTER */
- C(0x4200, STC, RX_a, Z, r1_o, a2, 0, 0, st8, 0)
- C(0xe372, STCY, RXY_a, LD, r1_o, a2, 0, 0, st8, 0)
+ D(0x4200, STC, RX_a, Z, r1_o, a2, 0, 0, st, 0, MO_UB)
+ D(0xe372, STCY, RXY_a, LD, r1_o, a2, 0, 0, st, 0, MO_UB)
/* STORE CHARACTER HIGH */
- C(0xe3c3, STCH, RXY_a, HW, r1_sr32, a2, 0, 0, st8, 0)
+ D(0xe3c3, STCH, RXY_a, HW, r1_sr32, a2, 0, 0, st, 0, MO_UB)
/* STORE CHARACTERS UNDER MASK */
D(0xbe00, STCM, RS_b, Z, r1_o, a2, 0, 0, stcm, 0, 0)
D(0xeb2d, STCMY, RSY_b, LD, r1_o, a2, 0, 0, stcm, 0, 0)
diff --git a/target/s390x/tcg/translate.c b/target/s390x/tcg/translate.c
index ffbef87f59..beb714b554 100644
--- a/target/s390x/tcg/translate.c
+++ b/target/s390x/tcg/translate.c
@@ -4344,9 +4344,9 @@ static DisasJumpType op_stfle(DisasContext *s, DisasOps *o)
return DISAS_NEXT;
}
-static DisasJumpType op_st8(DisasContext *s, DisasOps *o)
+static DisasJumpType op_st(DisasContext *s, DisasOps *o)
{
- tcg_gen_qemu_st_i64(o->in1, o->in2, get_mem_index(s), MO_UB);
+ tcg_gen_qemu_st_i64(o->in1, o->in2, get_mem_index(s), s->insn->data);
return DISAS_NEXT;
}