On Sat, 04 May 2024 17:25:52 +0900, Michael Tokarev wrote: > > 06.04.2024 08:37, Richard Henderson wrote: > > Zack's recent patches, tidied a little bit, and with > > test cases added. > > These fixes ended up in stable-8.2, but not in stable-7.2. > This is because in 7.2, the context is a bit different. > > Later, a couple other fixes in this area come from Philippe > (Fix ADDV & SUBV opcodes) which are easy to pick up but it > wants changes in tests/tcg/sh4/Makefile.target introduced > in this patchset. > > b0f2f2976b "target/sh4: mac.w: memory accesses are 16-bit words" > also needs 03a0d87e8d "target/sh4: Use MO_ALIGN where required", > but this one, while simple, is a big one and doesn't apply to > 7.2 directly in many places in target/sh4/translate.c, in parts > due to bebd5cb300 "target/sh4: Drop tcg_temp_free" (but can be > easily tweaked manually). > > Or I can hand-apply b0f2f2976b (s/MO_TESL/MO_TESW) without > 03a0d87e8d (add MO_ALIGN). > > Does picking up this stuff for 7.2 make sense? > > (Cc'ing Cole for general stable-7.2 feedback on redhat side). > > Thanks, > > /mjt > > > Richard Henderson (1): > > target/sh4: Merge mach and macl into a union > > > > Zack Buhman (3): > > target/sh4: mac.w: memory accesses are 16-bit words > > target/sh4: Fix mac.l with saturation enabled > > target/sh4: Fix mac.w with saturation enabled > > > > target/sh4/cpu.h | 14 ++++++-- > > target/sh4/helper.h | 4 +-- > > target/sh4/op_helper.c | 51 +++++++++++++++----------- > > target/sh4/translate.c | 4 +-- > > tests/tcg/sh4/test-macl.c | 67 +++++++++++++++++++++++++++++++++++ > > tests/tcg/sh4/test-macw.c | 61 +++++++++++++++++++++++++++++++ > > tests/tcg/sh4/Makefile.target | 8 +++++ > > 7 files changed, 182 insertions(+), 27 deletions(-) > > create mode 100644 tests/tcg/sh4/test-macl.c > > create mode 100644 tests/tcg/sh4/test-macw.c > > > > -- > GPG Key transition (from rsa2048 to rsa4096) since 2024-04-24. > New key: rsa4096/61AD3D98ECDF2C8E 9D8B E14E 3F2A 9DD7 9199 28F1 61AD 3D98 > ECDF 2C8E > Old key: rsa2048/457CE0A0804465C5 6EE1 95D1 886E 8FFB 810D 4324 457C E0A0 > 8044 65C5 > Transition statement: http://www.corpit.ru/mjt/gpg-transition-2024.txt >
Does this mean you changed it like this? I think this is fine. index 7db3468b01..f3bf0fc50a 100644 --- a/target/sh4/translate.c +++ b/target/sh4/translate.c @@ -844,9 +844,9 @@ static void _decode_opc(DisasContext * ctx) { TCGv arg0, arg1; arg0 = tcg_temp_new(); - tcg_gen_qemu_ld_i32(arg0, REG(B7_4), ctx->memidx, MO_TESL); + tcg_gen_qemu_ld_i32(arg0, REG(B7_4), ctx->memidx, MO_TESW); arg1 = tcg_temp_new(); - tcg_gen_qemu_ld_i32(arg1, REG(B11_8), ctx->memidx, MO_TESL); + tcg_gen_qemu_ld_i32(arg1, REG(B11_8), ctx->memidx, MO_TESW); gen_helper_macw(cpu_env, arg0, arg1); tcg_temp_free(arg1); tcg_temp_free(arg0); -- Yosinori Sato