[PATCH 0/8] target/s390x: Use explicit big-endian LD/ST API

Philippe Mathieu-Daudé posted 8 patches 1 month, 2 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20251224162036.90404-1-philmd@linaro.org
Maintainers: Laurent Vivier <laurent@vivier.eu>, Halil Pasic <pasic@linux.ibm.com>, Christian Borntraeger <borntraeger@linux.ibm.com>, Eric Farman <farman@linux.ibm.com>, Farhan Ali <alifm@linux.ibm.com>, Thomas Huth <thuth@redhat.com>, Richard Henderson <richard.henderson@linaro.org>, Ilya Leoshkevich <iii@linux.ibm.com>, David Hildenbrand <david@kernel.org>, Matthew Rosato <mjrosato@linux.ibm.com>, "Michael S. Tsirkin" <mst@redhat.com>, Cornelia Huck <cohuck@redhat.com>
configs/targets/s390x-linux-user.mak |   1 +
configs/targets/s390x-softmmu.mak    |   1 +
target/s390x/tcg/insn-data.h.inc     |  54 +++++-----
hw/s390x/css.c                       |  24 ++---
hw/s390x/s390-pci-bus.c              |   4 +-
hw/s390x/virtio-ccw.c                |  24 ++---
target/s390x/cpu-system.c            |   2 +-
target/s390x/gdbstub.c               |  26 ++---
target/s390x/kvm/kvm.c               |   8 +-
target/s390x/mmu_helper.c            |   3 +-
target/s390x/tcg/excp_helper.c       |  16 +--
target/s390x/tcg/mem_helper.c        |  71 +++++++------
target/s390x/tcg/translate.c         | 144 +++++++++++++--------------
target/s390x/tcg/vec_helper.c        |   8 +-
target/s390x/tcg/translate_vx.c.inc  |  38 +++----
15 files changed, 215 insertions(+), 209 deletions(-)
[PATCH 0/8] target/s390x: Use explicit big-endian LD/ST API
Posted by Philippe Mathieu-Daudé 1 month, 2 weeks ago
S390x is big-endian. Use the explicit 'big'
endianness instead of the 'native' one.
Forbid further uses of legacy APIs.

tag: https://gitlab.com/philmd/qemu/-/tags/endian_s390x-v1
CI: https://gitlab.com/philmd/qemu/-/pipelines/2231223066

Philippe Mathieu-Daudé (8):
  hw/s390x: Use explicit big-endian LD/ST API
  target/s390x: Use explicit big-endian LD/ST API
  target/s390x: Replace gdb_get_regl() -> gdb_get_reg64()
  target/s390x: Replace MO_TE -> MO_BE
  target/s390x: Inline cpu_ld{uw,l}_code() calls in EX opcode helper
  target/s390x: Use big-endian variant of cpu_ld/st_data*()
  target/s390x: Inline translator_lduw() and translator_ldl()
  configs/targets: Forbid S390x to use legacy native endianness APIs

 configs/targets/s390x-linux-user.mak |   1 +
 configs/targets/s390x-softmmu.mak    |   1 +
 target/s390x/tcg/insn-data.h.inc     |  54 +++++-----
 hw/s390x/css.c                       |  24 ++---
 hw/s390x/s390-pci-bus.c              |   4 +-
 hw/s390x/virtio-ccw.c                |  24 ++---
 target/s390x/cpu-system.c            |   2 +-
 target/s390x/gdbstub.c               |  26 ++---
 target/s390x/kvm/kvm.c               |   8 +-
 target/s390x/mmu_helper.c            |   3 +-
 target/s390x/tcg/excp_helper.c       |  16 +--
 target/s390x/tcg/mem_helper.c        |  71 +++++++------
 target/s390x/tcg/translate.c         | 144 +++++++++++++--------------
 target/s390x/tcg/vec_helper.c        |   8 +-
 target/s390x/tcg/translate_vx.c.inc  |  38 +++----
 15 files changed, 215 insertions(+), 209 deletions(-)

-- 
2.52.0


Re: [PATCH 0/8] target/s390x: Use explicit big-endian LD/ST API
Posted by Eric Farman 1 month ago
On Wed, 2025-12-24 at 17:20 +0100, Philippe Mathieu-Daudé wrote:
> S390x is big-endian. Use the explicit 'big'
> endianness instead of the 'native' one.
> Forbid further uses of legacy APIs.
> 
> tag: https://gitlab.com/philmd/qemu/-/tags/endian_s390x-v1
> CI: https://gitlab.com/philmd/qemu/-/pipelines/2231223066
> 
> Philippe Mathieu-Daudé (8):
>   hw/s390x: Use explicit big-endian LD/ST API
>   target/s390x: Use explicit big-endian LD/ST API
>   target/s390x: Replace gdb_get_regl() -> gdb_get_reg64()
>   target/s390x: Replace MO_TE -> MO_BE
>   target/s390x: Inline cpu_ld{uw,l}_code() calls in EX opcode helper
>   target/s390x: Use big-endian variant of cpu_ld/st_data*()
>   target/s390x: Inline translator_lduw() and translator_ldl()
>   configs/targets: Forbid S390x to use legacy native endianness APIs

For the series:

Reviewed-by: Eric Farman <farman@linux.ibm.com>

> 
>  configs/targets/s390x-linux-user.mak |   1 +
>  configs/targets/s390x-softmmu.mak    |   1 +
>  target/s390x/tcg/insn-data.h.inc     |  54 +++++-----
>  hw/s390x/css.c                       |  24 ++---
>  hw/s390x/s390-pci-bus.c              |   4 +-
>  hw/s390x/virtio-ccw.c                |  24 ++---
>  target/s390x/cpu-system.c            |   2 +-
>  target/s390x/gdbstub.c               |  26 ++---
>  target/s390x/kvm/kvm.c               |   8 +-
>  target/s390x/mmu_helper.c            |   3 +-
>  target/s390x/tcg/excp_helper.c       |  16 +--
>  target/s390x/tcg/mem_helper.c        |  71 +++++++------
>  target/s390x/tcg/translate.c         | 144 +++++++++++++--------------
>  target/s390x/tcg/vec_helper.c        |   8 +-
>  target/s390x/tcg/translate_vx.c.inc  |  38 +++----
>  15 files changed, 215 insertions(+), 209 deletions(-)
Re: [PATCH 0/8] target/s390x: Use explicit big-endian LD/ST API
Posted by Richard Henderson 1 month ago
On 12/25/25 03:20, Philippe Mathieu-Daudé wrote:
> S390x is big-endian. Use the explicit 'big'
> endianness instead of the 'native' one.
> Forbid further uses of legacy APIs.
> 
> tag:https://gitlab.com/philmd/qemu/-/tags/endian_s390x-v1
> CI:https://gitlab.com/philmd/qemu/-/pipelines/2231223066
> 
> Philippe Mathieu-Daudé (8):
>    hw/s390x: Use explicit big-endian LD/ST API
>    target/s390x: Use explicit big-endian LD/ST API
>    target/s390x: Replace gdb_get_regl() -> gdb_get_reg64()
>    target/s390x: Replace MO_TE -> MO_BE
>    target/s390x: Inline cpu_ld{uw,l}_code() calls in EX opcode helper
>    target/s390x: Use big-endian variant of cpu_ld/st_data*()
>    target/s390x: Inline translator_lduw() and translator_ldl()
>    configs/targets: Forbid S390x to use legacy native endianness APIs

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~