qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 03/12] target/cris: Use generic hrev32_i32() in SWAPB opcode


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH 03/12] target/cris: Use generic hrev32_i32() in SWAPB opcode
Date: Tue, 22 Aug 2023 15:27:36 +0200
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.14.0

On 22/8/23 14:40, Philippe Mathieu-Daudé wrote:
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
  target/cris/translate.c         | 20 +-------------------
  target/cris/translate_v10.c.inc |  2 +-
  2 files changed, 2 insertions(+), 20 deletions(-)

diff --git a/target/cris/translate.c b/target/cris/translate.c
index 925ed2c6f6..00bbe6c645 100644
--- a/target/cris/translate.c
+++ b/target/cris/translate.c
@@ -381,24 +381,6 @@ static inline void t_gen_subx_carry(DisasContext *dc, TCGv 
d)
      }
  }
-/* Swap the two bytes within each half word of the s operand.
-   T0 = ((T0 << 8) & 0xff00ff00) | ((T0 >> 8) & 0x00ff00ff)  */
-static inline void t_gen_swapb(TCGv d, TCGv s)
-{
-    TCGv t, org_s;
-
-    t = tcg_temp_new();
-    org_s = tcg_temp_new();
-
-    /* d and s may refer to the same object.  */
-    tcg_gen_mov_tl(org_s, s);
-    tcg_gen_shli_tl(t, org_s, 8);
-    tcg_gen_andi_tl(d, t, 0xff00ff00);
-    tcg_gen_shri_tl(t, org_s, 8);
-    tcg_gen_andi_tl(t, t, 0x00ff00ff);
-    tcg_gen_or_tl(d, d, t);
-}
-
  /*
   * Reverse the bits within each byte.
   *
@@ -1666,7 +1648,7 @@ static int dec_swap_r(CPUCRISState *env, DisasContext *dc)
          tcg_gen_hswap_i32(t0, t0);
      }
      if (dc->op2 & 2) {
-        t_gen_swapb(t0, t0);
+        tcg_gen_hrev32_i32(t0, t0);

Here we should use tcg_gen_hrev32_tl (added later in this series).

      }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]