Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 6af7da930a1811c93635c070415e22ddb967d446
https://github.com/qemu/qemu/commit/6af7da930a1811c93635c070415e22ddb967d446
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M MAINTAINERS
Log Message:
-----------
MAINTAINERS: Cover 'system/memory_ldst*.h.inc' files
Missed in commit c611228c0ed ("include: move memory_ldst*
to include/system").
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: c8c395542482a3c05c2217314f41acc70f753772
https://github.com/qemu/qemu/commit/c8c395542482a3c05c2217314f41acc70f753772
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M docs/devel/loads-stores.rst
Log Message:
-----------
docs/devel/loads-stores: Fix ld/stn_*_p() regexp
Fixes: afa4f6653dc ("bswap: Add stn_*_p() and ldn_*_p() functions")
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: f44866719f6e1d25d5dc853e4737c1cb945ef4e7
https://github.com/qemu/qemu/commit/f44866719f6e1d25d5dc853e4737c1cb945ef4e7
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M include/qemu/host-utils.h
M include/qemu/int128.h
Log Message:
-----------
bswap: Consistently use builtin bswap() functions
Since these headers use some __builtin_bswap*(), use it
consistently in all the cases, allowing to remove the
"qemu/bswap.h" inclusion (which only defines bswap* to
the builtin equivalent).
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 8afde4364dac1eeb5d0fe291f625af4f907921ae
https://github.com/qemu/qemu/commit/8afde4364dac1eeb5d0fe291f625af4f907921ae
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M tests/qtest/aspeed_smc-test.c
M tests/qtest/ast2700-smc-test.c
M tests/qtest/libqos/fw_cfg.c
M tests/qtest/libqos/i2c-omap.c
M tests/qtest/pnv-spi-seeprom-test.c
M tests/qtest/pnv-xive2-common.h
Log Message:
-----------
tests/qtest: Remove unnecessary 'qemu/bswap.h' include
None of these files use API declared in "qemu/bswap.h",
remove the unnecessary inclusion.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Cédric Le Goater <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 31ec6109920dcf9b3f440a18b7dffb3df39ac58f
https://github.com/qemu/qemu/commit/31ec6109920dcf9b3f440a18b7dffb3df39ac58f
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M include/qemu/bswap.h
M system/physmem.c
Log Message:
-----------
system/physmem: Inline and remove leul_to_cpu()
leul_to_cpu() is only used within physmem.c: inline it
and remove.
Since @bitmap is of 'unsigned long' type, use its size
with ldn_le_p() instead of using HOST_LONG_BITS.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: f0d1d7f3794a127ee2b2e77e2da5bd28e12708b9
https://github.com/qemu/qemu/commit/f0d1d7f3794a127ee2b2e77e2da5bd28e12708b9
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M system/physmem.c
M system/trace-events
Log Message:
-----------
system/physmem: Convert DEBUG_SUBPAGE printf() to trace events
Defining DEBUG_SUBPAGE allows to use raw printf() statements to
print information about some events; convert these to tracepoints.
Suggested-by: Richard Henderson <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 00531d0567353985c39f074518d43aaa32258575
https://github.com/qemu/qemu/commit/00531d0567353985c39f074518d43aaa32258575
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M MAINTAINERS
M include/hw/virtio/virtio-access.h
M include/system/memory.h
A include/system/memory_cached.h
M system/physmem.c
Log Message:
-----------
system/memory: Split MemoryRegionCache API to 'memory_cached.h'
We have 115 direct inclusions of "system/memory.h", and 91 headers
in include/ use it: hundreds of files have to process it.
However only one single header really uses the MemoryRegionCache
API: "hw/virtio/virtio-access.h". Split it out to a new header,
avoiding processing unused inlined functions hundreds of times.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: d78e91a31195802e806d650ea88724a41360de1c
https://github.com/qemu/qemu/commit/d78e91a31195802e806d650ea88724a41360de1c
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M system/memory_ldst.c.inc
Log Message:
-----------
system/memory: Inline address_space_stq_internal()
As its name suggests, address_space_stq_internal() is an
internal method which can be inlined like all the other
ones in this file.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 35ddb78b65802a9ea0166ea494b829529fadbbf4
https://github.com/qemu/qemu/commit/35ddb78b65802a9ea0166ea494b829529fadbbf4
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M system/ioport.c
M tests/qtest/endianness-test.c
M tests/qtest/libqtest.c
Log Message:
-----------
system/ioport: Declare x86-specific I/O port in little-endian order
X86 in/out port (related to ISA bus) uses little endianness:
- enforce little endianness in x86 cpu_in/out() accessors,
- serialize QTest in/out port accesses as little-endian.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Fabiano Rosas <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 5a17a542ac898df2d0797ea9247a4f795917aea3
https://github.com/qemu/qemu/commit/5a17a542ac898df2d0797ea9247a4f795917aea3
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M system/ioport.c
Log Message:
-----------
system/ioport: Do not open-code address_space_ld/st_le() methods
When a variable size is known, prefer the address_space_ld/st()
API. Keep address_space_read/write() for blobs.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 83d5db95d3890cdc600901ae3d5d1c9c72dedfcb
https://github.com/qemu/qemu/commit/83d5db95d3890cdc600901ae3d5d1c9c72dedfcb
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M meson.build
Log Message:
-----------
meson: Allow system binaries to not have target-specific units
As we are moving toward a single binary, targets might end
without any target-specific objects (all objects being in
the 'common' source set). Allow this by checking the
target_system_arch[] dictionary contains the target key
before using it.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Message-ID: <[email protected]>
Commit: bd595bfa2d411f2e610391d166917812fb7e41e3
https://github.com/qemu/qemu/commit/bd595bfa2d411f2e610391d166917812fb7e41e3
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M hw/alpha/dp264.c
M hw/alpha/typhoon.c
Log Message:
-----------
hw/alpha: Use explicit little-endian LD/ST API
The Alpha architecture uses little endianness. Directly
use the little-endian LD/ST API.
Mechanical change running:
$ for a in uw w l q; do \
sed -i -e "s/ld${a}_p(/ld${a}_le_p(/" \
$(git grep -wlE '(ld|st)u?[wlq]_p' hw/alpha/);
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 076bcbd7e24f3f324d8e6090556fa09bf48936c5
https://github.com/qemu/qemu/commit/076bcbd7e24f3f324d8e6090556fa09bf48936c5
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/alpha/mem_helper.c
Log Message:
-----------
target/alpha: Inline cpu_ldl_code() call in do_unaligned_access()
In preparation of removing the cpu_ldl_code wrapper, inline it.
Use the return address argument.
Since Alpha instructions are always stored in little-endian
order, replace MO_TE -> MO_LE.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 62e8edfe1b5b9824a93500265562a9d6dde83fd6
https://github.com/qemu/qemu/commit/62e8edfe1b5b9824a93500265562a9d6dde83fd6
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/alpha/translate.c
Log Message:
-----------
target/alpha: Inline translator_ldl()
translator_ldl() is defined in "exec/translator.h" as:
198 static inline uint32_t
199 translator_ldl(CPUArchState *env, DisasContextBase *db, vaddr pc)
200 {
201 return translator_ldl_end(env, db, pc, MO_TE);
202 }
Directly use the inlined form.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: f5fa259b502ac6fc4412ca4e762c5aa33bbddc79
https://github.com/qemu/qemu/commit/f5fa259b502ac6fc4412ca4e762c5aa33bbddc79
Author: Anton Johansson <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M linux-user/alpha/target_proc.h
Log Message:
-----------
target/alpha: Introduce alpha_phys_addr_space_bits()
In preparation for dropping TARGET_PHYS_ADDR_SPACE_BITS, add a
a runtime function to correctly represent the size of the physical
address space for EV4-6 based on the current CPU version.
Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Anton Johansson <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Commit: 8d9a3353bca59602ede113abc2a370ade37c149c
https://github.com/qemu/qemu/commit/8d9a3353bca59602ede113abc2a370ade37c149c
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/avr/translate.c
Log Message:
-----------
target/avr: Inline translator_lduw()
translator_lduw() is defined in "exec/translator.h" as:
192 static inline uint16_t
193 translator_lduw(CPUArchState *env, DisasContextBase *db, vaddr pc)
194 {
195 return translator_lduw_end(env, db, pc, MO_TE);
196 }
Directly use the inlined form, expanding MO_TE -> MO_LE
since AVR only exists in little-endian.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Commit: 989b25c73b793959127b7578cca6dc49c840c5cd
https://github.com/qemu/qemu/commit/989b25c73b793959127b7578cca6dc49c840c5cd
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/hexagon/translate.c
Log Message:
-----------
target/hexagon: Inline translator_ldl()
translator_ldl() is defined in "exec/translator.h" as:
198 static inline uint32_t
199 translator_ldl(CPUArchState *env, DisasContextBase *db, vaddr pc)
200 {
201 return translator_ldl_end(env, db, pc, MO_TE);
202 }
Directly use the inlined form, expanding MO_TE -> MO_LE
since Hexagon use little-endian order.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Commit: dffb3938aa4ced8c967c63175a788facf664a3a2
https://github.com/qemu/qemu/commit/dffb3938aa4ced8c967c63175a788facf664a3a2
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/hexagon/macros.h
M target/hexagon/op_helper.c
Log Message:
-----------
target/hexagon: Use little-endian variant of cpu_ld/st_data*()
We only build the Hexagon target using little endianness order,
therefore the cpu_ld/st_data*() definitions expand to the little
endian declarations. Use the explicit little-endian variants.
Mechanical change running:
$ tgt=hexagon; \
end=le; \
for op in data mmuidx_ra; do \
for ac in uw sw l q; do \
sed -i -e "s/cpu_ld${ac}_${op}/cpu_ld${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
for ac in w l q; do \
sed -i -e "s/cpu_st${ac}_${op}/cpu_st${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Brian Cain <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: c77d0e9009362fe9f4784f8df31d52f377350dbf
https://github.com/qemu/qemu/commit/c77d0e9009362fe9f4784f8df31d52f377350dbf
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/hppa/op_helper.c
Log Message:
-----------
target/hppa: Use big-endian variant of cpu_ld/st_data*()
We only build the HPPA target using big endianness order,
therefore the cpu_ld/st_data*() definitions expand to the big
endian declarations. Use the explicit big-endian variants.
Mechanical change running:
$ tgt=hppa; \
end=be; \
for op in data mmuidx_ra; do \
for ac in uw sw l q; do \
sed -i -e "s/cpu_ld${ac}_${op}/cpu_ld${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
for ac in w l q; do \
sed -i -e "s/cpu_st${ac}_${op}/cpu_st${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: c53afb5ed5cfeff1211c255f86f38d87e3a5d5fc
https://github.com/qemu/qemu/commit/c53afb5ed5cfeff1211c255f86f38d87e3a5d5fc
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/hppa/gdbstub.c
Log Message:
-----------
target/hppa: Remove unnecessary @cpu variable by using cpu_env()
Partly revert changes introduced by commit b2c2d00f48c ("target/hppa:
add 64 bit support to gdbstub"), restoring the cpu_env() call and
removing the unused @cpu argument.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 75498b3f7b921fe70f0072d1b157fc1ea8367432
https://github.com/qemu/qemu/commit/75498b3f7b921fe70f0072d1b157fc1ea8367432
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/hppa/gdbstub.c
M target/hppa/int_helper.c
Log Message:
-----------
target/hppa: Use explicit big-endian LD/ST API
The HPPA architecture uses big endianness. Directly use
the big-endian LD/ST API.
Mechanical change using:
$ end=be; \
for acc in uw w l q tul; do \
sed -i -e "s/ld${acc}_p(/ld${acc}_${end}_p(/" \
-e "s/st${acc}_p(/st${acc}_${end}_p(/" \
$(git grep -wlE '(ld|st)t?u?[wlq]_p' target/hppa/); \
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: bcf5e5d3e33f0123daaff077dd1dfb5f7bb4e41b
https://github.com/qemu/qemu/commit/bcf5e5d3e33f0123daaff077dd1dfb5f7bb4e41b
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/hppa/translate.c
Log Message:
-----------
target/hppa: Inline translator_ldl()
translator_ldl() is defined in "exec/translator.h" as:
198 static inline uint32_t
199 translator_ldl(CPUArchState *env, DisasContextBase *db, vaddr pc)
200 {
201 return translator_ldl_end(env, db, pc, MO_TE);
202 }
Directly use the inlined form, expanding MO_TE -> mo_endian().
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 253b483940d910cb30084aa38144faf2cec9733f
https://github.com/qemu/qemu/commit/253b483940d910cb30084aa38144faf2cec9733f
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/hppa/machine.c
Log Message:
-----------
target/hppa: Avoid target-specific migration headers in machine.c
machine.c doesn't use any target-specific macro defined by
the "migration/cpu.h" header. Use the minimum header required:
"migration/qemu-file-types.h" and "migration/vmstate.h", which
are not target-specific.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Prasad Pandit <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 10a860dd5db64a11968f7766aa2e524e8003a234
https://github.com/qemu/qemu/commit/10a860dd5db64a11968f7766aa2e524e8003a234
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/hppa/translate.c
Log Message:
-----------
target/hppa: Remove target_ulong use in disas_log() handler
Since commit 85c19af63e7 ("include/exec: Use vaddr in DisasContextBase
virtual addresses") the DisasContextBase::pc_first field is a vaddr
type.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 2d3c00965a482d89fc4f0af70e5012a768680e31
https://github.com/qemu/qemu/commit/2d3c00965a482d89fc4f0af70e5012a768680e31
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M hw/loongarch/virt.c
Log Message:
-----------
hw/loongarch: Use explicit little-endian LD/ST API
The LoongArch architecture uses little endianness. Directly
use the little-endian LD/ST API.
Mechanical change using:
$ end=le; \
for acc in uw w l q tul; do \
sed -i -e "s/ld${acc}_p(/ld${acc}_${end}_p(/" \
-e "s/st${acc}_p(/st${acc}_${end}_p(/" \
$(git grep -wlE '(ld|st)t?u?[wlq]_p' hw/loongarch/); \
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Bibo Mao <[email protected]>
Message-ID: <[email protected]>
Commit: 99d8a33fe686c6e3b0739da94e98bcb2c2ed4074
https://github.com/qemu/qemu/commit/99d8a33fe686c6e3b0739da94e98bcb2c2ed4074
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/loongarch/cpu_helper.c
M target/loongarch/tcg/tlb_helper.c
Log Message:
-----------
target/loongarch: Replace target_ulong -> uint64_t for DMW and TLBRBADV
The Direct Mapping Configuration Window and Bad Virtual
Address CSR registers are declared as uint64_t since their
introduction in commit 398cecb9c3e ("target/loongarch: Add
CSRs definition"):
296 typedef struct CPUArchState {
...
345 uint64_t CSR_TLBRBADV;
...
359 uint64_t CSR_DMW[4];
...
385 } CPULoongArchState;
Use the proper uint64_t type instead of target_ulong
(which would otherwise be truncated on 32-bit builds).
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Bibo Mao <[email protected]>
Message-Id: <[email protected]>
Commit: dfb8034a9a330fea901af54f4d7bf3167a2abfbd
https://github.com/qemu/qemu/commit/dfb8034a9a330fea901af54f4d7bf3167a2abfbd
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/loongarch/cpu_helper.c
M target/loongarch/tcg/tlb_helper.c
Log Message:
-----------
target/loongarch: Use hwaddr type for physical addresses
Replace variables used with get_physical_address(), which
expect a physical addresses, by the 'hwaddr' type, instead
of the 'target_ulong' one.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Bibo Mao <[email protected]>
Message-ID: <[email protected]>
Commit: 492b2799c647c048ce2757513404037436294bd9
https://github.com/qemu/qemu/commit/492b2799c647c048ce2757513404037436294bd9
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/loongarch/tcg/insn_trans/trans_atomic.c.inc
M target/loongarch/tcg/insn_trans/trans_fmemory.c.inc
M target/loongarch/tcg/insn_trans/trans_memory.c.inc
M target/loongarch/tcg/insn_trans/trans_vec.c.inc
Log Message:
-----------
target/loongarch: Replace MO_TE -> MO_LE
We only build the LoongArch target using little endianness
order, therefore the MO_TE definitions expand to the little
endian one. Use the latter which is more explicit.
Mechanical change running:
$ sed -i -e s/MO_TE/MO_LE/ \
$(git grep -wl MO_TE target/loongarch/)
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Bibo Mao <[email protected]>
Message-ID: <[email protected]>
Commit: 91312a6d046d10506f6326168ea275a9b765cdba
https://github.com/qemu/qemu/commit/91312a6d046d10506f6326168ea275a9b765cdba
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/loongarch/tcg/tcg_cpu.c
Log Message:
-----------
target/loongarch: Inline cpu_ldl_code() call in cpu_do_interrupt()
In preparation of removing the cpu_ldl_code wrapper, inline it.
Since LoongArch instructions are always stored in little-endian
order, replace MO_TE -> MO_LE.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Bibo Mao <[email protected]>
Message-Id: <[email protected]>
Commit: f9a03787c7fea997a5aa0641a5c16c7b15e21a2a
https://github.com/qemu/qemu/commit/f9a03787c7fea997a5aa0641a5c16c7b15e21a2a
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/loongarch/cpu_helper.c
M target/loongarch/tcg/iocsr_helper.c
M target/loongarch/tcg/tlb_helper.c
Log Message:
-----------
target/loongarch: Use explicit little-endian LD/ST API
The LoongArch architecture uses little endianness. Directly
use the little-endian LD/ST API.
Mechanical change using:
$ end=le; \
for acc in uw w l q tul; do \
sed -i -e "s/ld${acc}_p(/ld${acc}_${end}_p(/" \
-e "s/st${acc}_p(/st${acc}_${end}_p(/" \
$(git grep -wlE '(ld|st)t?u?[wlq]_p' target/loongarch/); \
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Bibo Mao <[email protected]>
Message-ID: <[email protected]>
Commit: 6b4c30465c0372c042b20b5f16f76f87e15118a5
https://github.com/qemu/qemu/commit/6b4c30465c0372c042b20b5f16f76f87e15118a5
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/loongarch/tcg/translate.c
Log Message:
-----------
target/loongarch: Inline translator_ldl()
translator_ldl() is defined in "exec/translator.h" as:
198 static inline uint32_t
199 translator_ldl(CPUArchState *env, DisasContextBase *db, vaddr pc)
200 {
201 return translator_ldl_end(env, db, pc, MO_TE);
202 }
Directly use the inlined form, expanding MO_TE -> MO_LE
since LoongArch use little-endian order.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Bibo Mao <[email protected]>
Message-ID: <[email protected]>
Commit: 10c5799fac4d90479f8b6211a60aa7940ec14c6e
https://github.com/qemu/qemu/commit/10c5799fac4d90479f8b6211a60aa7940ec14c6e
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/m68k/monitor.c
Log Message:
-----------
target/m68k: Replace MD_TLONG -> MD_I32 in monitor.c
m68k's monitor_defs[] array implicitly uses type=MD_TLONG for
all its entries. Since we only build this target as 32-bit,
use the explicit MD_I32 type to avoid an indirect target_long
use.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 9281c68deca37a1bec053b3cb8b9a7b9c18a9e65
https://github.com/qemu/qemu/commit/9281c68deca37a1bec053b3cb8b9a7b9c18a9e65
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/microblaze/translate.c
Log Message:
-----------
target/microblaze: Directly check endianness via CPUConfig::endi flag
The MicroBlazeCPUConfig::endi flag reports whether the CPU is
configure in little endianness. Directly use this knowledge
instead of evaluating MemOp from mo_endian().
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Message-ID: <[email protected]>
Commit: f2cd7f507e21ad0a4c89fed67def244d76b015c7
https://github.com/qemu/qemu/commit/f2cd7f507e21ad0a4c89fed67def244d76b015c7
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/microblaze/machine.c
Log Message:
-----------
target/microblaze: Avoid target-specific migration headers in machine.c
machine.c doesn't use any target-specific macro defined by
the "migration/cpu.h" header. Use the minimum header requiered:
"migration/qemu-file-types.h" and "migration/vmstate.h", which
are not target-specific.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Message-ID: <[email protected]>
Commit: 195060d9c82802f7d56d5ec990a9007bd0f36a07
https://github.com/qemu/qemu/commit/195060d9c82802f7d56d5ec990a9007bd0f36a07
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/microblaze/meson.build
Log Message:
-----------
target/microblaze: Build system files once
Previous commit removed the last target-specific use in
system units, we can now build them once.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Message-ID: <[email protected]>
Commit: 1346a811234ea51a6399a139f5c92b777e89d071
https://github.com/qemu/qemu/commit/1346a811234ea51a6399a139f5c92b777e89d071
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M hw/microblaze/petalogix_s3adsp1800_mmu.c
Log Message:
-----------
hw/microblaze: Replace TARGET_BIG_ENDIAN -> target_big_endian()
Check endianness at runtime to remove the target-specific
TARGET_BIG_ENDIAN definition.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Message-ID: <[email protected]>
Commit: a1ced4875492eb7f4c1622570533d2b8619eabf6
https://github.com/qemu/qemu/commit/a1ced4875492eb7f4c1622570533d2b8619eabf6
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M hw/microblaze/meson.build
Log Message:
-----------
hw/microblaze: Build files once
Previous commit removed the last target-specific use in
hw model units, we can now build them once.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Message-ID: <[email protected]>
Commit: 32d425683922f97445d10c048a756e67b954f1b1
https://github.com/qemu/qemu/commit/32d425683922f97445d10c048a756e67b954f1b1
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M hw/intc/ompic.c
Log Message:
-----------
hw/intc: Mark OpenRISC-specific peripheral as big-endian
The Open Multi-Processor Interrupt Controller (ompic) is only
used by the OpenRISC target, which is only built as big-endian.
Therefore the DEVICE_NATIVE_ENDIAN definition expand to
DEVICE_BIG_ENDIAN (besides, the DEVICE_LITTLE_ENDIAN case isn't
tested). Simplify directly using DEVICE_BIG_ENDIAN.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 16c0efb5a7a088f90510f0f9315bfd1dde962f65
https://github.com/qemu/qemu/commit/16c0efb5a7a088f90510f0f9315bfd1dde962f65
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/openrisc/gdbstub.c
Log Message:
-----------
target/openrisc: Use explicit big-endian LD/ST API
The OpenRISC architecture uses big endianness. Directly
use the big-endian LD/ST API.
Mechanical change running:
$ for a in uw w l q; do \
sed -i -e "s/ld${a}_p(/ld${a}_be_p(/" \
$(git grep -wlE '(ld|st)u?[wlq]_p' target/openrisc/);
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 52392f95e694a8c95812bea0db399868c07ade35
https://github.com/qemu/qemu/commit/52392f95e694a8c95812bea0db399868c07ade35
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/openrisc/translate.c
Log Message:
-----------
target/openrisc: Inline translator_ldl()
translator_ldl() is defined in "exec/translator.h" as:
198 static inline uint32_t
199 translator_ldl(CPUArchState *env, DisasContextBase *db, vaddr pc)
200 {
201 return translator_ldl_end(env, db, pc, MO_TE);
202 }
Directly use the inlined form, expanding MO_TE -> mo_endian().
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 4685aa3e515cc6c3de83c899e16b06b7bbeca46b
https://github.com/qemu/qemu/commit/4685aa3e515cc6c3de83c899e16b06b7bbeca46b
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/openrisc/interrupt.c
M target/openrisc/mmu.c
Log Message:
-----------
target/openrisc: Remove unused 'gdbstub/helpers.h' header in helper.c
"gdbstub/helpers.h" uses target-specific symbols, but we don't
need it, so remove it.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 6238fc2f6590b527a8c47a1ea363f06f38aa8221
https://github.com/qemu/qemu/commit/6238fc2f6590b527a8c47a1ea363f06f38aa8221
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/openrisc/machine.c
Log Message:
-----------
target/openrisc: Avoid target-specific migration headers in machine.c
machine.c doesn't use any target-specific macro defined by
the "migration/cpu.h" header. Use the minimum header required:
"migration/qemu-file-types.h" and "migration/vmstate.h", which
are not target-specific.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Prasad Pandit <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 5059b259dd960a26afcdae8ebf870f90b668f53c
https://github.com/qemu/qemu/commit/5059b259dd960a26afcdae8ebf870f90b668f53c
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/openrisc/meson.build
Log Message:
-----------
target/openrisc: Build system units in common source set
Since previous 2 commits and range 2795bc52af4..5b67dbf1dc3 we
remove all uses of the target_ulong type in target/rx/. Use the
meson target_common_system_arch[] source set to prevent further
uses of target-specific types.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: de1f3d628e6e8f0859bf5202908c4e24d4175941
https://github.com/qemu/qemu/commit/de1f3d628e6e8f0859bf5202908c4e24d4175941
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/rx/helper.c
M target/rx/op_helper.c
Log Message:
-----------
target/rx: Use little-endian variant of cpu_ld/st_data*()
We only build the RX target using little endianness order,
therefore the cpu_ld/st_data*() definitions expand to the little
endian declarations. Use the explicit little-endian variants.
Mechanical change running:
$ tgt=rx; \
end=le; \
for op in data mmuidx_ra; do \
for ac in uw sw l q; do \
sed -i -e "s/cpu_ld${ac}_${op}/cpu_ld${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
for ac in w l q; do \
sed -i -e "s/cpu_st${ac}_${op}/cpu_st${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Commit: 41a1b46c3b294b046b439fb46febf4b4a16d9350
https://github.com/qemu/qemu/commit/41a1b46c3b294b046b439fb46febf4b4a16d9350
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/rx/cpu.c
M target/rx/gdbstub.c
Log Message:
-----------
target/rx: Use explicit little-endian LD/ST API
The RX architecture uses little endianness. Directly use
the little-endian LD/ST API.
Mechanical change using:
$ end=le; \
for acc in uw w l q tul; do \
sed -i -e "s/ld${acc}_p(/ld${acc}_${end}_p(/" \
-e "s/st${acc}_p(/st${acc}_${end}_p(/" \
$(git grep -wlE '(ld|st)t?u?[wlq]_p' target/rx/); \
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: b0afb81271a4e03f9bdee9442e4abfd7a0002cf6
https://github.com/qemu/qemu/commit/b0afb81271a4e03f9bdee9442e4abfd7a0002cf6
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/rx/translate.c
Log Message:
-----------
target/rx: Inline translator_lduw() and translator_ldl()
translator_lduw() and translator_ldl() are defined in
"exec/translator.h" as:
192 static inline uint16_t
193 translator_lduw(CPUArchState *env, DisasContextBase *db, vaddr pc)
194 {
195 return translator_lduw_end(env, db, pc, MO_TE);
196 }
198 static inline uint32_t
199 translator_ldl(CPUArchState *env, DisasContextBase *db, vaddr pc)
200 {
201 return translator_ldl_end(env, db, pc, MO_TE);
202 }
Directly use the inlined form, expanding MO_TE -> mo_endian().
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 90d14b8d0da2154d59c72d5237e8ae3f017ebbbd
https://github.com/qemu/qemu/commit/90d14b8d0da2154d59c72d5237e8ae3f017ebbbd
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/rx/meson.build
Log Message:
-----------
target/rx: Build system units in common source set
Since commit range 2982b948a9f..86114e43ffd we remove all
uses of the target_ulong type in target/rx/. Use the meson
target_common_system_arch[] source set to prevent further
uses of target-specific types.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 678805a7ef15c62d1cddd768f2e73d9df0b77389
https://github.com/qemu/qemu/commit/678805a7ef15c62d1cddd768f2e73d9df0b77389
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/sh4/meson.build
Log Message:
-----------
target/sh4: Build system units in common source set
Since commit range 42c90609b8f..82a1e739010 we remove all
uses of the target_ulong type in target/rx/. Use the meson
target_common_system_arch[] source set to prevent further
uses of target-specific types.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: be9fe81e29988927a9c66aca04130a85a729a4f3
https://github.com/qemu/qemu/commit/be9fe81e29988927a9c66aca04130a85a729a4f3
Author: Alex Bennée <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/sh4/cpu.c
Log Message:
-----------
target/sh4: drop cpu_reset from realizefn
Shuffle things around to ensure that gdb register creation was
done after dependant peripherals had created their cpu interfaces.
Signed-off-by: Alex Bennée <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Commit: 21932912a08f3b8c9f6210ba41232cc4ae1a0ae6
https://github.com/qemu/qemu/commit/21932912a08f3b8c9f6210ba41232cc4ae1a0ae6
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M hw/audio/cs4231.c
M hw/char/grlib_apbuart.c
M hw/display/cg3.c
M hw/display/tcx.c
M hw/dma/sparc32_dma.c
M hw/intc/grlib_irqmp.c
M hw/intc/slavio_intctl.c
M hw/misc/eccmemctl.c
M hw/misc/slavio_misc.c
M hw/rtc/sun4v-rtc.c
M hw/timer/grlib_gptimer.c
M hw/timer/slavio_timer.c
Log Message:
-----------
hw/sparc: Mark SPARC-specific peripherals as big-endian
These devices are only used by the SPARC target, which is
only built as big-endian. Therefore the DEVICE_NATIVE_ENDIAN
definition expand to DEVICE_BIG_ENDIAN (besides, the
DEVICE_LITTLE_ENDIAN case isn't tested). Simplify directly
using DEVICE_BIG_ENDIAN.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 3b3033a0bfba40a751ec79ab67ed62023910f383
https://github.com/qemu/qemu/commit/3b3033a0bfba40a751ec79ab67ed62023910f383
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M hw/sparc/leon3.c
M hw/sparc/sun4m.c
M hw/sparc64/sun4u.c
Log Message:
-----------
hw/sparc: Use explicit big-endian LD/ST API
The SPARC architecture uses big endianness. Directly use
the big-endian LD/ST API.
Mechanical change running:
$ for a in uw w l q; do \
sed -i -e "s/ld${a}_p(/ld${a}_be_p(/" \
$(git grep -wlE '(ld|st)u?[wlq]_p' hw/sparc*/);
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Chigot Clément <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Commit: 18a91deb41b8f4a3bc7935b0a7b9fbc091bdceae
https://github.com/qemu/qemu/commit/18a91deb41b8f4a3bc7935b0a7b9fbc091bdceae
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/sparc/ldst_helper.c
M target/sparc/mmu_helper.c
Log Message:
-----------
target/sparc: Use explicit big-endian LD/ST API
The SPARC architecture uses big endianness. Directly use
the big-endian LD/ST API.
Mechanical change running:
$ for a in uw w l q; do \
sed -i -e "s/ld${a}_p(/ld${a}_be_p(/" \
$(git grep -wlE '(ld|st)u?[wlq]_p' target/sparc/);
done
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: f7a00f64fa90b8e0d752b7eec9124f97a7dff34e
https://github.com/qemu/qemu/commit/f7a00f64fa90b8e0d752b7eec9124f97a7dff34e
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/sparc/translate.c
Log Message:
-----------
target/sparc: Inline translator_ldl()
translator_ldl() is defined in "exec/translator.h" as:
198 static inline uint32_t
199 translator_ldl(CPUArchState *env, DisasContextBase *db, vaddr pc)
200 {
201 return translator_ldl_end(env, db, pc, MO_TE);
202 }
Directly use the inlined form, expanding MO_TE -> MO_BE
since we only build the SPARC targets as big-endian.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: a8f70781d760e48e30e0bc9ed05343454563ef69
https://github.com/qemu/qemu/commit/a8f70781d760e48e30e0bc9ed05343454563ef69
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/sparc/int32_helper.c
Log Message:
-----------
target/sparc: Inline cpu_ldl_code() call in cpu_do_interrupt()
In preparation of removing the cpu_ldl_code wrapper, inline it.
Since SPARC instructions are always stored in big-endian order,
replace MO_TE -> MO_BE.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 4a4b272ae87f203c884040e0c53796f3addf9f31
https://github.com/qemu/qemu/commit/4a4b272ae87f203c884040e0c53796f3addf9f31
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/tricore/op_helper.c
Log Message:
-----------
target/tricore: Use little-endian variant of cpu_ld/st_data*()
We only build the TriCore target using little endianness order,
therefore the cpu_ld/st_data*() definitions expand to the little
endian declarations. Use the explicit little-endian variants.
Mechanical change running:
$ tgt=tricore; \
end=le; \
for op in data mmuidx_ra; do \
for ac in uw sw l q; do \
sed -i -e "s/cpu_ld${ac}_${op}/cpu_ld${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
for ac in w l q; do \
sed -i -e "s/cpu_st${ac}_${op}/cpu_st${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
done
Then adapting spaces style manually to pass checkpatch.pl.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Commit: 8075a0a5479d2930d9df9177f6c8a4dd5c6a42e7
https://github.com/qemu/qemu/commit/8075a0a5479d2930d9df9177f6c8a4dd5c6a42e7
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/tricore/translate.c
Log Message:
-----------
target/tricore: Inline translator_lduw()
translator_lduw() is defined in "exec/translator.h" as:
192 static inline uint16_t
193 translator_lduw(CPUArchState *env, DisasContextBase *db, vaddr pc)
194 {
195 return translator_lduw_end(env, db, pc, MO_TE);
196 }
Directly use the inlined form, expanding MO_TE -> MO_LE
since we only build the TriCore target as little-endian.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Manos Pitsidianakis <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: 6338bb09db394f577465ff1eaeb6fa28650ae0ea
https://github.com/qemu/qemu/commit/6338bb09db394f577465ff1eaeb6fa28650ae0ea
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/tricore/meson.build
Log Message:
-----------
target/tricore: Build system units in common source set
Since commit range 809b460f305..cd08bcaa36b we remove all
uses of the target_ulong type in target/rx/. Use the meson
target_common_system_arch[] source set to prevent further
uses of target-specific types.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Commit: ec77d52cc5bd859df2d85e8e2c090766bd4ce585
https://github.com/qemu/qemu/commit/ec77d52cc5bd859df2d85e8e2c090766bd4ce585
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M accel/tcg/user-exec-stub.c
M include/accel/tcg/cpu-ops.h
M include/exec/watchpoint.h
Log Message:
-----------
accel/tcg: Un-inline WatchPoint API user-emulation stubs
Currently we can not build files including "exec/watchpoint.h"
as meson common objects because the CONFIG_USER_ONLY definition
is poisoned. We can easily fix that by un-inlining the
user-emulation stubs.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Message-ID: <[email protected]>
Commit: e5bb3f77150c18fa69ba086eb653d36e49696ef5
https://github.com/qemu/qemu/commit/e5bb3f77150c18fa69ba086eb653d36e49696ef5
Author: Pierrick Bouvier <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M include/gdbstub/helpers.h
Log Message:
-----------
gdbstub/helpers.h: allow header to be called from common code
Target specific variants can't be used in common code, thus limit their
definition to COMPILING_PER_TARGET.
Signed-off-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Commit: 7e274980f2ed843f6393072533bdc7ff78fdb0a1
https://github.com/qemu/qemu/commit/7e274980f2ed843f6393072533bdc7ff78fdb0a1
Author: Pierrick Bouvier <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/arm/gdbstub.c
M target/arm/gdbstub64.c
M target/arm/internals.h
Log Message:
-----------
target/arm/gdbstub: extract aarch64_cpu_register_gdb_regs_for_features
Signed-off-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Commit: f445b4a4b6fa5b03503bc8fdfa4c336e13afc48f
https://github.com/qemu/qemu/commit/f445b4a4b6fa5b03503bc8fdfa4c336e13afc48f
Author: Pierrick Bouvier <[email protected]>
Date: 2026-01-12 (Mon, 12 Jan 2026)
Changed paths:
M target/arm/cpu32-stubs.c
M target/arm/gdbstub.c
M target/arm/meson.build
Log Message:
-----------
target/arm/gdbstub: make compilation unit common
Expose and stubs aarch64 functions. All call sites are under a
"is_aarch64" check.
Signed-off-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Commit: cf3e71d8fc8ba681266759bb6cb2e45a45983e3e
https://github.com/qemu/qemu/commit/cf3e71d8fc8ba681266759bb6cb2e45a45983e3e
Author: Richard Henderson <[email protected]>
Date: 2026-01-13 (Tue, 13 Jan 2026)
Changed paths:
M MAINTAINERS
M accel/tcg/user-exec-stub.c
M docs/devel/loads-stores.rst
M hw/alpha/dp264.c
M hw/alpha/typhoon.c
M hw/audio/cs4231.c
M hw/char/grlib_apbuart.c
M hw/display/cg3.c
M hw/display/tcx.c
M hw/dma/sparc32_dma.c
M hw/intc/grlib_irqmp.c
M hw/intc/ompic.c
M hw/intc/slavio_intctl.c
M hw/loongarch/virt.c
M hw/microblaze/meson.build
M hw/microblaze/petalogix_s3adsp1800_mmu.c
M hw/misc/eccmemctl.c
M hw/misc/slavio_misc.c
M hw/rtc/sun4v-rtc.c
M hw/sparc/leon3.c
M hw/sparc/sun4m.c
M hw/sparc64/sun4u.c
M hw/timer/grlib_gptimer.c
M hw/timer/slavio_timer.c
M include/accel/tcg/cpu-ops.h
M include/exec/watchpoint.h
M include/gdbstub/helpers.h
M include/hw/virtio/virtio-access.h
M include/qemu/bswap.h
M include/qemu/host-utils.h
M include/qemu/int128.h
M include/system/memory.h
A include/system/memory_cached.h
M linux-user/alpha/target_proc.h
M meson.build
M system/ioport.c
M system/memory_ldst.c.inc
M system/physmem.c
M system/trace-events
M target/alpha/mem_helper.c
M target/alpha/translate.c
M target/arm/cpu32-stubs.c
M target/arm/gdbstub.c
M target/arm/gdbstub64.c
M target/arm/internals.h
M target/arm/meson.build
M target/avr/translate.c
M target/hexagon/macros.h
M target/hexagon/op_helper.c
M target/hexagon/translate.c
M target/hppa/gdbstub.c
M target/hppa/int_helper.c
M target/hppa/machine.c
M target/hppa/op_helper.c
M target/hppa/translate.c
M target/loongarch/cpu_helper.c
M target/loongarch/tcg/insn_trans/trans_atomic.c.inc
M target/loongarch/tcg/insn_trans/trans_fmemory.c.inc
M target/loongarch/tcg/insn_trans/trans_memory.c.inc
M target/loongarch/tcg/insn_trans/trans_vec.c.inc
M target/loongarch/tcg/iocsr_helper.c
M target/loongarch/tcg/tcg_cpu.c
M target/loongarch/tcg/tlb_helper.c
M target/loongarch/tcg/translate.c
M target/m68k/monitor.c
M target/microblaze/machine.c
M target/microblaze/meson.build
M target/microblaze/translate.c
M target/openrisc/gdbstub.c
M target/openrisc/interrupt.c
M target/openrisc/machine.c
M target/openrisc/meson.build
M target/openrisc/mmu.c
M target/openrisc/translate.c
M target/rx/cpu.c
M target/rx/gdbstub.c
M target/rx/helper.c
M target/rx/meson.build
M target/rx/op_helper.c
M target/rx/translate.c
M target/sh4/cpu.c
M target/sh4/meson.build
M target/sparc/int32_helper.c
M target/sparc/ldst_helper.c
M target/sparc/mmu_helper.c
M target/sparc/translate.c
M target/tricore/meson.build
M target/tricore/op_helper.c
M target/tricore/translate.c
M tests/qtest/aspeed_smc-test.c
M tests/qtest/ast2700-smc-test.c
M tests/qtest/endianness-test.c
M tests/qtest/libqos/fw_cfg.c
M tests/qtest/libqos/i2c-omap.c
M tests/qtest/libqtest.c
M tests/qtest/pnv-spi-seeprom-test.c
M tests/qtest/pnv-xive2-common.h
Log Message:
-----------
Merge tag 'single-binary-20260112' of https://github.com/philmd/qemu into
staging
Various patches related to single binary effort:
- Endianness cleanups in memory core subsystem and for various targets
- Few cleanups around target_ulong type
- Build various compilation units as common
# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEE+qvnXhKRciHc/Wuy4+MsLN6twN4FAmlleisACgkQ4+MsLN6t
# wN40yw/+NYK6Q+v8YHclH0g6YkPsXYsCVOLWhYaUQ9Smc3Vk8js02LRMxomGiyjc
# lRhatftrH4dCuiWavyhlK/z+tu3b2WOgjjcIocg7ztZEwzyvDPEKidBNM4Wrv27d
# 6WNdtCn1rOOYQBcCs/MEHnrxIl3qfl5Kqt4hzejcK4E1DFa1m5ashAEVJwMlqYWp
# qkBT3fw0jfHojM+eTAbvKI1fi27GVMXbQXSM3V3vG3njxmx4JQT0p9QjyDYWZwgh
# xAJvy5neoNv3T7TBELCfqSWzGA5WHrW/eAkuRuO0JVa69IOn/mh2aGKboJMT7KQF
# ufyxceHMj8TLJr6c9BrvaWX7+p7xyvbX3ud+qXOV9P2FBVm+hf2lHnw0pJJ6A51g
# qv3u8zUVwhmx6oF95ibQtaWKdLNhGCKtVKJu59Xxj/7Bp00BS1Jnj6E/g34To8Vm
# 18g3cPJ+CEhdTFSkcHusiVI4GdHb8JEGUd5kyWza3gEgYb/J1Ps/a807n6C6NQcq
# MRkt2zNKS+sJeZzvl+BGH8WewMVGWm1f8IoP28ZvgyxFVutkgFcj+UQZp3J7mkpV
# ja0B7+1NMK9oMeq/+YM4gUgEF0ydThlqa+qTzxVYu8qpzWT9+cqqWeQHAteE3g/v
# rqqu/sBUSbh5xi+82zRbgwd7Hj31ST5XkepQN0vUTT4P3zCijy8=
# =P+9/
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 13 Jan 2026 09:48:11 AM AEDT
# gpg: using RSA key FAABE75E12917221DCFD6BB2E3E32C2CDEADC0DE
# gpg: Good signature from "Philippe Mathieu-Daudé (F4BUG) <[email protected]>"
[unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: FAAB E75E 1291 7221 DCFD 6BB2 E3E3 2C2C DEAD C0DE
* tag 'single-binary-20260112' of https://github.com/philmd/qemu: (61 commits)
target/arm/gdbstub: make compilation unit common
target/arm/gdbstub: extract aarch64_cpu_register_gdb_regs_for_features
gdbstub/helpers.h: allow header to be called from common code
accel/tcg: Un-inline WatchPoint API user-emulation stubs
target/tricore: Build system units in common source set
target/tricore: Inline translator_lduw()
target/tricore: Use little-endian variant of cpu_ld/st_data*()
target/sparc: Inline cpu_ldl_code() call in cpu_do_interrupt()
target/sparc: Inline translator_ldl()
target/sparc: Use explicit big-endian LD/ST API
hw/sparc: Use explicit big-endian LD/ST API
hw/sparc: Mark SPARC-specific peripherals as big-endian
target/sh4: drop cpu_reset from realizefn
target/sh4: Build system units in common source set
target/rx: Build system units in common source set
target/rx: Inline translator_lduw() and translator_ldl()
target/rx: Use explicit little-endian LD/ST API
target/rx: Use little-endian variant of cpu_ld/st_data*()
target/openrisc: Build system units in common source set
target/openrisc: Avoid target-specific migration headers in machine.c
...
Signed-off-by: Richard Henderson <[email protected]>
Compare: https://github.com/qemu/qemu/compare/894c8bd56ff1...cf3e71d8fc8b
To unsubscribe from these emails, change your notification settings at
https://github.com/qemu/qemu/settings/notifications