Il ven 9 gen 2026, 17:51 Philippe Mathieu-Daudé <[email protected]> ha scritto:
> Missing review: 2, 12, 20 > > Since v4: > - No change (RESEND) > For subpages, are you leaving for later the switch away from DEVICE_NATIVE_ENDIAN? Paolo Since v3: > - Assign device_endian enums (Richard) > - Add/use ldm_p() and stm_p() helpers (Paolo) > > Since v2: > - Changed opt-out to opt-in approach (Pierrick) > - Split big patches in smaller ones > - Mark ioport little-endian > > Philippe Mathieu-Daudé (22): > MAINTAINERS: Cover 'system/memory_ldst*.h.inc' files > util: Introduce ldm_p() and stm_p() load/store helpers > system/physmem: Inline and remove leul_to_cpu() > system/physmem: Convert DEBUG_SUBPAGE printf() to trace events > system/memory: Split MemoryRegionCache API to 'memory_cached.h' > system/memory: Inline address_space_stq_internal() > system/memory: Define address_space_ldst[W] endian variants via > template > system/memory: Define address_space_ldst[L] endian variants via > template > system/memory: Define address_space_ldst[Q] endian variants via > template > system/memory: Factor address_space_ldst[M]_internal() helper out > system/memory: Pass device_endian argument as MemOp bit > system/memory: Use ldm_p() and stm_p() helpers > system/memory: Directly call address_space_ldst[M]_internal() helper > system: Allow restricting the legacy ld/st_phys() 'native-endian' API > system: Allow restricting legacy address_space_ldst() native-endian > API > system: Allow restricting the legacy cpu_ld/st() 'native-endian' API > system: Allow restricting the legacy translator_ld() 'native-endian' > API > system: Allow restricting the legacy tswap() 'native-endian' API > system: Allow restricting the legacy MO_TE* 'native-endian' > definitions > system: Allow restricting the legacy DEVICE_NATIVE_ENDIAN definition > system/ioport: Declare x86-specific I/O port in little-endian order > system/ioport: Do not open-code address_space_ld/st_le() methods > > MAINTAINERS | 4 + > include/accel/tcg/cpu-ldst.h | 2 + > include/exec/memop.h | 4 + > include/exec/translator.h | 5 +- > include/exec/tswap.h | 3 + > include/hw/virtio/virtio-access.h | 1 + > include/qemu/bswap.h | 11 - > include/qemu/ldst_unaligned.h | 25 ++ > include/system/memory.h | 193 +------- > include/system/memory_cached.h | 212 +++++++++ > system/memory-internal.h | 2 + > include/system/memory_ldst.h.inc | 52 +-- > include/system/memory_ldst_endian.h.inc | 33 ++ > include/system/memory_ldst_phys.h.inc | 113 +---- > include/system/memory_ldst_phys_endian.h.inc | 57 +++ > system/ioport.c | 34 +- > system/physmem.c | 35 +- > tests/qtest/endianness-test.c | 10 +- > tests/qtest/libqtest.c | 13 +- > util/ldst.c | 69 +++ > system/memory_ldst.c.inc | 449 ++----------------- > system/memory_ldst_endian.c.inc | 70 +++ > scripts/make-config-poison.sh | 1 + > system/trace-events | 6 + > util/meson.build | 1 + > 25 files changed, 599 insertions(+), 806 deletions(-) > create mode 100644 include/system/memory_cached.h > create mode 100644 include/system/memory_ldst_endian.h.inc > create mode 100644 include/system/memory_ldst_phys_endian.h.inc > create mode 100644 util/ldst.c > create mode 100644 system/memory_ldst_endian.c.inc > > -- > 2.52.0 > >
