qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [6831] tcg: optimize tcg_gen_bswap16_i32


From: Aurelien Jarno
Subject: [Qemu-devel] [6831] tcg: optimize tcg_gen_bswap16_i32
Date: Fri, 13 Mar 2009 09:35:04 +0000

Revision: 6831
          http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=6831
Author:   aurel32
Date:     2009-03-13 09:35:03 +0000 (Fri, 13 Mar 2009)
Log Message:
-----------
tcg: optimize tcg_gen_bswap16_i32

Signed-off-by: Aurelien Jarno <address@hidden>

Modified Paths:
--------------
    trunk/tcg/tcg-op.h

Modified: trunk/tcg/tcg-op.h
===================================================================
--- trunk/tcg/tcg-op.h  2009-03-13 09:34:56 UTC (rev 6830)
+++ trunk/tcg/tcg-op.h  2009-03-13 09:35:03 UTC (rev 6831)
@@ -1207,16 +1207,13 @@
 #ifdef TCG_TARGET_HAS_bswap16_i32
     tcg_gen_op2_i32(INDEX_op_bswap16_i32, ret, arg);
 #else
-    TCGv_i32 t0, t1;
-    t0 = tcg_temp_new_i32();
-    t1 = tcg_temp_new_i32();
+    TCGv_i32 t0 = tcg_temp_new_i32();
     
-    tcg_gen_shri_i32(t0, arg, 8);
-    tcg_gen_andi_i32(t1, arg, 0x000000ff);
-    tcg_gen_shli_i32(t1, t1, 8);
-    tcg_gen_or_i32(ret, t0, t1);
+    tcg_gen_ext8u_i32(t0, arg);
+    tcg_gen_shli_i32(t0, t0, 8);
+    tcg_gen_shri_i32(ret, arg, 8);
+    tcg_gen_or_i32(ret, ret, t0);
     tcg_temp_free_i32(t0);
-    tcg_temp_free_i32(t1);
 #endif
 }
 





reply via email to

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