[PATCH-for-11.0 v3 00/22] accel/tcg: Remove most MO_TE uses in cpu_ld/st_data()

Philippe Mathieu-Daudé posted 22 patches 2 days, 13 hours ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20251126202200.23100-1-philmd@linaro.org
Maintainers: Richard Henderson <richard.henderson@linaro.org>, Paolo Bonzini <pbonzini@redhat.com>, Laurent Vivier <laurent@vivier.eu>, Brian Cain <brian.cain@oss.qualcomm.com>, Helge Deller <deller@gmx.de>, Zhao Liu <zhao1.liu@intel.com>, Eduardo Habkost <eduardo@habkost.net>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Aurelien Jarno <aurelien@aurel32.net>, Jiaxun Yang <jiaxun.yang@flygoat.com>, Aleksandar Rikalo <arikalo@gmail.com>, Nicholas Piggin <npiggin@gmail.com>, Chinmay Rath <rathc@linux.ibm.com>, Palmer Dabbelt <palmer@dabbelt.com>, Alistair Francis <alistair.francis@wdc.com>, Weiwei Li <liwei1518@gmail.com>, Daniel Henrique Barboza <dbarboza@ventanamicro.com>, Liu Zhiwei <zhiwei_liu@linux.alibaba.com>, Yoshinori Sato <yoshinori.sato@nifty.com>, Ilya Leoshkevich <iii@linux.ibm.com>, David Hildenbrand <david@kernel.org>, Thomas Huth <thuth@redhat.com>, Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>, Artyom Tarasenko <atar4qemu@gmail.com>, Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
include/accel/tcg/cpu-ldst.h         |  46 --------
target/hexagon/macros.h              |   6 +-
target/i386/ops_sse.h                |  12 +--
target/i386/tcg/seg_helper.h         |  12 +--
linux-user/vm86.c                    |   4 +-
target/hexagon/op_helper.c           |   6 +-
target/hppa/op_helper.c              |  44 ++++----
target/i386/tcg/mem_helper.c         |   8 +-
target/i386/tcg/mpx_helper.c         |  28 ++---
target/i386/tcg/seg_helper.c         |  16 +--
target/i386/tcg/system/excp_helper.c |   8 +-
target/i386/tcg/system/svm_helper.c  |  69 ++++++------
target/m68k/fpu_helper.c             |  12 +--
target/m68k/op_helper.c              |  91 ++++++++--------
target/mips/tcg/ldst_helper.c        | 108 ++++++++++++-------
target/mips/tcg/msa_helper.c         |  51 +++++----
target/mips/tcg/translate.c          |   9 +-
target/ppc/mem_helper.c              |  75 +++++++------
target/ppc/tcg-excp_helper.c         |   9 +-
target/riscv/vector_helper.c         |  12 +--
target/rx/helper.c                   |  14 +--
target/rx/op_helper.c                |   6 +-
target/s390x/tcg/mem_helper.c        |  48 ++++-----
target/s390x/tcg/vec_helper.c        |   8 +-
target/sh4/op_helper.c               |   5 +-
target/sparc/ldst_helper.c           |   6 +-
target/tricore/op_helper.c           | 152 +++++++++++++--------------
27 files changed, 440 insertions(+), 425 deletions(-)
[PATCH-for-11.0 v3 00/22] accel/tcg: Remove most MO_TE uses in cpu_ld/st_data()
Posted by Philippe Mathieu-Daudé 2 days, 13 hours ago
Since v2:
- Reworked SH4
- Completed PPC / MIPS.
Since v1:
- Fixed s/little/big/ typo (thuth)

Still trying to remove MO_TE uses, here looking at cpu_ld/st_data()
in fixed-endianness targets.

Series split of bigger one [*] where Richard made a comment on
*_code() patches. Since not related to *_data() uses, post separetely
since almost ready (still few PPC/MIPS paths to update, but I'd rather
check if this is heading in the correct direction before looking at
them).

[*] https://lore.kernel.org/qemu-devel/20251121134503.30914-1-philmd@linaro.org/

Philippe Mathieu-Daudé (22):
  target/hexagon: Use little-endian variant of cpu_ld/st_data*()
  target/i386: Use little-endian variant of cpu_ld/st_data*()
  target/riscv: Use little-endian variant of cpu_ld/st_data*() for
    vector
  target/rx: Use little-endian variant of cpu_ld/st_data*()
  target/tricore: Use little-endian variant of cpu_ld/st_data*()
  target/hppa: Use big-endian variant of cpu_ld/st_data*()
  target/m68k: Use big-endian variant of cpu_ld/st_data*()
  target/s390x: Use big-endian variant of cpu_ld/st_data*()
  target/sparc: Use big-endian variant of cpu_ld/st_data*()
  target/sh4: Replace cpu_stl_data() call in OCBI helper
  target/mips: Use big-endian variant of cpu_ld/st_data*() for MSA
    opcode
  target/mips: Introduce loadu8() & loads4() helpers
  target/mips: Pass MemOpIdx to atomic load helpers
  target/mips: Drop almask argument of HELPER_LD_ATOMIC() macro
  target/mips: Inline cpu_ld*_mmuidx_ra() calls in atomic load helpers
  target/mips: Expand HELPER_LD_ATOMIC()
  target/mips: Inline cpu_ld/st_mmuidx_ra() calls in memory helpers
  target/ppc: Inline cpu_ld/st_data_ra() calls in do_hash()
  target/ppc: Inline cpu_ld/st_mmuidx_ra() calls in memory helpers
  target/ppc: Inline cpu_ldl_data_ra() calls in ICBI helper
  target/ppc: Simplify endianness handling in Altivec opcodes
  accel/tcg: Remove non-explicit endian cpu_ld/st*_data*() helpers

 include/accel/tcg/cpu-ldst.h         |  46 --------
 target/hexagon/macros.h              |   6 +-
 target/i386/ops_sse.h                |  12 +--
 target/i386/tcg/seg_helper.h         |  12 +--
 linux-user/vm86.c                    |   4 +-
 target/hexagon/op_helper.c           |   6 +-
 target/hppa/op_helper.c              |  44 ++++----
 target/i386/tcg/mem_helper.c         |   8 +-
 target/i386/tcg/mpx_helper.c         |  28 ++---
 target/i386/tcg/seg_helper.c         |  16 +--
 target/i386/tcg/system/excp_helper.c |   8 +-
 target/i386/tcg/system/svm_helper.c  |  69 ++++++------
 target/m68k/fpu_helper.c             |  12 +--
 target/m68k/op_helper.c              |  91 ++++++++--------
 target/mips/tcg/ldst_helper.c        | 108 ++++++++++++-------
 target/mips/tcg/msa_helper.c         |  51 +++++----
 target/mips/tcg/translate.c          |   9 +-
 target/ppc/mem_helper.c              |  75 +++++++------
 target/ppc/tcg-excp_helper.c         |   9 +-
 target/riscv/vector_helper.c         |  12 +--
 target/rx/helper.c                   |  14 +--
 target/rx/op_helper.c                |   6 +-
 target/s390x/tcg/mem_helper.c        |  48 ++++-----
 target/s390x/tcg/vec_helper.c        |   8 +-
 target/sh4/op_helper.c               |   5 +-
 target/sparc/ldst_helper.c           |   6 +-
 target/tricore/op_helper.c           | 152 +++++++++++++--------------
 27 files changed, 440 insertions(+), 425 deletions(-)

-- 
2.51.0