From: Philippe Mathieu-Daudé Date: Thu, 20 Nov 2025 17:47:09 +0000 (+0100) Subject: target/sparc: Inline cpu_ldl_code() call in cpu_do_interrupt() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a8f70781d760e48e30e0bc9ed05343454563ef69;p=thirdparty%2Fqemu.git 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é Reviewed-by: Manos Pitsidianakis Reviewed-by: Richard Henderson Message-ID: <20251224162642.90857-8-philmd@linaro.org> --- diff --git a/target/sparc/int32_helper.c b/target/sparc/int32_helper.c index b29f693a6b..d6bb3fa1e5 100644 --- a/target/sparc/int32_helper.c +++ b/target/sparc/int32_helper.c @@ -149,9 +149,11 @@ void sparc_cpu_do_interrupt(CPUState *cs) * mimic delayed trap delivery as if by the subsequent insn. */ if (!env->fsr_qne) { + MemOpIdx oi = make_memop_idx(MO_BEUL, cpu_mmu_index(cs, true)); + env->fsr_qne = FSR_QNE; env->fq.s.addr = env->pc; - env->fq.s.insn = cpu_ldl_code(env, env->pc); + env->fq.s.insn = cpu_ldl_code_mmu(env, env->pc, oi, 0); } env->pc = env->npc; env->npc = env->npc + 4;