From: Philippe Mathieu-Daudé Date: Fri, 4 Oct 2024 09:47:05 +0000 (+0200) Subject: target/hppa: Use explicit big-endian LD/ST API X-Git-Tag: v11.0.0-rc0~113^2~40 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=75498b3f7b9;p=thirdparty%2Fqemu.git 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é Reviewed-by: Manos Pitsidianakis Reviewed-by: Richard Henderson Message-ID: <20251229225517.45078-4-philmd@linaro.org> --- diff --git a/target/hppa/gdbstub.c b/target/hppa/gdbstub.c index 0c5e41410a0..4f016a0e61d 100644 --- a/target/hppa/gdbstub.c +++ b/target/hppa/gdbstub.c @@ -168,7 +168,7 @@ int hppa_cpu_gdb_write_register(CPUState *cs, uint8_t *mem_buf, int n) return 0; } - val = ldn_p(mem_buf, hppa_reg_size(env)); + val = ldn_be_p(mem_buf, hppa_reg_size(env)); switch (n) { case 0: diff --git a/target/hppa/int_helper.c b/target/hppa/int_helper.c index 4e4869285b5..d5a20cd549d 100644 --- a/target/hppa/int_helper.c +++ b/target/hppa/int_helper.c @@ -178,7 +178,7 @@ void hppa_cpu_do_interrupt(CPUState *cs) break; } } - env->cr[CR_IIR] = ldl_phys(cs->as, paddr); + env->cr[CR_IIR] = ldl_be_phys(cs->as, paddr); if (i == EXCP_ASSIST) { /* stuff insn code into bits of FP exception register #1 */ env->fr[0] |= (env->cr[CR_IIR] & 0x03ffffff);