This started out to be tcg and linux-user only, but then added a few target bug fixes, and the trolled back through my inbox and picked up some other safe patch sets that got lost.
r~ The following changes since commit ce64e6224affb8b4e4b019f76d2950270b391af5: Merge tag 'qemu-sparc-20240404' of https://github.com/mcayland/qemu into staging (2024-04-04 15:28:06 +0100) are available in the Git repository at: https://gitlab.com/rth7680/qemu.git tags/pull-misc-20240408 for you to fetch changes up to 50dbeda88ab71f9d426b7f4b126c79c44860e475: util/bufferiszero: Simplify test_buffer_is_zero_next_accel (2024-04-08 06:27:58 -1000) ---------------------------------------------------------------- util/bufferiszero: Optimizations and cleanups, esp code removal target/m68k: Semihosting for non-coldfire cpus target/m68k: Fix fp accrued exception reporting target/hppa: Fix IIAOQ, IIASQ for pa2.0 target/sh4: Fixes to mac.l and mac.w saturation target/sh4: Fixes to illegal delay slot reporting linux-user: Cleanups for do_setsockopt linux-user: Add FITRIM ioctl linux-user: Fix waitid return of siginfo_t and rusage tcg/optimize: Do not attempt to constant fold neg_vec accel/tcg: Improve can_do_io management, mmio bug fix ---------------------------------------------------------------- Alexander Monakov (5): util/bufferiszero: Remove SSE4.1 variant util/bufferiszero: Remove AVX512 variant util/bufferiszero: Reorganize for early test for acceleration util/bufferiszero: Remove useless prefetches util/bufferiszero: Optimize SSE2 and AVX2 variants Keith Packard (3): target/m68k: Map FPU exceptions to FPSR register target/m68k: Pass semihosting arg to exit target/m68k: Support semihosting on non-ColdFire targets Michael Tokarev (4): linux-user: do_setsockopt: fix SOL_ALG.ALG_SET_KEY linux-user: do_setsockopt: make ip_mreq local to the place it is used and inline target_to_host_ip_mreq() linux-user: do_setsockopt: make ip_mreq_source local to the place where it is used linux-user: do_setsockopt: eliminate goto in switch for SO_SNDTIMEO Michael Vogt (1): linux-user: Add FITRIM ioctl Nguyen Dinh Phi (1): linux-user: replace calloc() with g_new0() Richard Henderson (17): tcg/optimize: Do not attempt to constant fold neg_vec linux-user: Fix waitid return of siginfo_t and rusage target/hppa: Fix IIAOQ, IIASQ for pa2.0 target/sh4: Merge mach and macl into a union target/m68k: Perform the semihosting test during translate tcg: Add TCGContext.emit_before_op accel/tcg: Add insn_start to DisasContextBase target/arm: Use insn_start from DisasContextBase target/hppa: Use insn_start from DisasContextBase target/i386: Preserve DisasContextBase.insn_start across rewind target/microblaze: Use insn_start from DisasContextBase target/riscv: Use insn_start from DisasContextBase target/s390x: Use insn_start from DisasContextBase accel/tcg: Improve can_do_io management util/bufferiszero: Improve scalar variant util/bufferiszero: Introduce biz_accel_fn typedef util/bufferiszero: Simplify test_buffer_is_zero_next_accel Zack Buhman (4): 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: add missing CHECK_NOT_DELAY_SLOT include/exec/translator.h | 4 +- include/qemu/cutils.h | 32 +++- include/tcg/tcg.h | 6 + linux-user/ioctls.h | 3 + linux-user/syscall_defs.h | 1 + linux-user/syscall_types.h | 5 + target/arm/tcg/translate.h | 12 +- target/m68k/cpu.h | 5 +- target/m68k/helper.h | 2 + target/sh4/cpu.h | 14 +- target/sh4/helper.h | 4 +- accel/tcg/translator.c | 47 ++--- linux-user/main.c | 6 +- linux-user/syscall.c | 95 +++++----- target/arm/tcg/translate-a64.c | 2 +- target/arm/tcg/translate.c | 2 +- target/hppa/int_helper.c | 20 +- target/hppa/sys_helper.c | 18 +- target/hppa/translate.c | 10 +- target/i386/tcg/translate.c | 3 + target/m68k/cpu.c | 12 +- target/m68k/fpu_helper.c | 72 ++++++++ target/m68k/helper.c | 4 +- target/m68k/m68k-semi.c | 4 +- target/m68k/op_helper.c | 14 +- target/m68k/translate.c | 54 +++++- target/microblaze/translate.c | 8 +- target/riscv/translate.c | 11 +- target/s390x/tcg/translate.c | 4 +- target/sh4/op_helper.c | 51 ++--- target/sh4/translate.c | 7 +- tcg/optimize.c | 17 +- tcg/tcg.c | 14 +- tests/tcg/aarch64/test-2150.c | 12 ++ tests/tcg/sh4/test-macl.c | 67 +++++++ tests/tcg/sh4/test-macw.c | 61 ++++++ util/bufferiszero.c | 379 +++++++++++++++++--------------------- tests/tcg/aarch64/Makefile.target | 2 +- tests/tcg/sh4/Makefile.target | 8 + 39 files changed, 696 insertions(+), 396 deletions(-) create mode 100644 tests/tcg/aarch64/test-2150.c create mode 100644 tests/tcg/sh4/test-macl.c create mode 100644 tests/tcg/sh4/test-macw.c