qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH for-2.5 2/5] target-sh4: use deposit in swap.b instr


From: Aurelien Jarno
Subject: [Qemu-devel] [PATCH for-2.5 2/5] target-sh4: use deposit in swap.b instruction
Date: Fri, 24 Jul 2015 13:14:28 +0200

Signed-off-by: Aurelien Jarno <address@hidden>
---
 target-sh4/translate.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/target-sh4/translate.c b/target-sh4/translate.c
index 3b4a1b5..a6f3f59 100644
--- a/target-sh4/translate.c
+++ b/target-sh4/translate.c
@@ -612,15 +612,11 @@ static void _decode_opc(DisasContext * ctx)
        return;
     case 0x6008:               /* swap.b Rm,Rn */
        {
-           TCGv high, low;
-           high = tcg_temp_new();
-           tcg_gen_andi_i32(high, REG(B7_4), 0xffff0000);
-           low = tcg_temp_new();
+            TCGv low = tcg_temp_new();;
            tcg_gen_ext16u_i32(low, REG(B7_4));
            tcg_gen_bswap16_i32(low, low);
-           tcg_gen_or_i32(REG(B11_8), high, low);
+            tcg_gen_deposit_i32(REG(B11_8), REG(B7_4), low, 0, 16);
            tcg_temp_free(low);
-           tcg_temp_free(high);
        }
        return;
     case 0x6009:               /* swap.w Rm,Rn */
-- 
2.1.4




reply via email to

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