[Qemu-devel] [PATCH v3 27/50] target/ppc: fetch code with translator_ld

Alex Bennée posted 50 patches 6 years, 8 months ago
[Qemu-devel] [PATCH v3 27/50] target/ppc: fetch code with translator_ld
Posted by Alex Bennée 6 years, 8 months ago
From: "Emilio G. Cota" <cota@braap.org>

Signed-off-by: Emilio G. Cota <cota@braap.org>
---
 target/ppc/translate.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/target/ppc/translate.c b/target/ppc/translate.c
index 4a5de28036..a27b5659f4 100644
--- a/target/ppc/translate.c
+++ b/target/ppc/translate.c
@@ -7864,11 +7864,9 @@ static void ppc_tr_translate_insn(DisasContextBase *dcbase, CPUState *cs)
     LOG_DISAS("nip=" TARGET_FMT_lx " super=%d ir=%d\n",
               ctx->base.pc_next, ctx->mem_idx, (int)msr_ir);
 
-    if (unlikely(need_byteswap(ctx))) {
-        ctx->opcode = bswap32(cpu_ldl_code(env, ctx->base.pc_next));
-    } else {
-        ctx->opcode = cpu_ldl_code(env, ctx->base.pc_next);
-    }
+    ctx->opcode = translator_ldl_swap(env, ctx->base.pc_next,
+                                      need_byteswap(ctx));
+
     LOG_DISAS("translate opcode %08x (%02x %02x %02x %02x) (%s)\n",
               ctx->opcode, opc1(ctx->opcode), opc2(ctx->opcode),
               opc3(ctx->opcode), opc4(ctx->opcode),
-- 
2.20.1


Re: [Qemu-devel] [PATCH v3 27/50] target/ppc: fetch code with translator_ld
Posted by Richard Henderson 6 years, 7 months ago
On 6/14/19 10:11 AM, Alex Bennée wrote:
> -    if (unlikely(need_byteswap(ctx))) {
> -        ctx->opcode = bswap32(cpu_ldl_code(env, ctx->base.pc_next));
> -    } else {
> -        ctx->opcode = cpu_ldl_code(env, ctx->base.pc_next);
> -    }
> +    ctx->opcode = translator_ldl_swap(env, ctx->base.pc_next,
> +                                      need_byteswap(ctx));
> +

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


r~

Re: [Qemu-devel] [PATCH v3 27/50] target/ppc: fetch code with translator_ld
Posted by David Gibson 6 years, 7 months ago
On Fri, Jun 14, 2019 at 06:11:37PM +0100, Alex Bennée wrote:
> From: "Emilio G. Cota" <cota@braap.org>
> 
> Signed-off-by: Emilio G. Cota <cota@braap.org>

Acked-by: David Gibson <david@gibson.dropbear.id.au>

> ---
>  target/ppc/translate.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/target/ppc/translate.c b/target/ppc/translate.c
> index 4a5de28036..a27b5659f4 100644
> --- a/target/ppc/translate.c
> +++ b/target/ppc/translate.c
> @@ -7864,11 +7864,9 @@ static void ppc_tr_translate_insn(DisasContextBase *dcbase, CPUState *cs)
>      LOG_DISAS("nip=" TARGET_FMT_lx " super=%d ir=%d\n",
>                ctx->base.pc_next, ctx->mem_idx, (int)msr_ir);
>  
> -    if (unlikely(need_byteswap(ctx))) {
> -        ctx->opcode = bswap32(cpu_ldl_code(env, ctx->base.pc_next));
> -    } else {
> -        ctx->opcode = cpu_ldl_code(env, ctx->base.pc_next);
> -    }
> +    ctx->opcode = translator_ldl_swap(env, ctx->base.pc_next,
> +                                      need_byteswap(ctx));
> +
>      LOG_DISAS("translate opcode %08x (%02x %02x %02x %02x) (%s)\n",
>                ctx->opcode, opc1(ctx->opcode), opc2(ctx->opcode),
>                opc3(ctx->opcode), opc4(ctx->opcode),

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson