Commit 8777643e480f59c407d994bb4ee25cb39b96e36e

Authored by aurel32
1 parent fa3966a3

target-i386: use the new bswap* TCG ops

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6836 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 3 additions and 13 deletions
target-i386/translate.c
@@ -6643,23 +6643,13 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start) @@ -6643,23 +6643,13 @@ static target_ulong disas_insn(DisasContext *s, target_ulong pc_start)
6643 tcg_gen_bswap64_i64(cpu_T[0], cpu_T[0]); 6643 tcg_gen_bswap64_i64(cpu_T[0], cpu_T[0]);
6644 gen_op_mov_reg_T0(OT_QUAD, reg); 6644 gen_op_mov_reg_T0(OT_QUAD, reg);
6645 } else 6645 } else
6646 - {  
6647 - TCGv_i32 tmp0;  
6648 - gen_op_mov_TN_reg(OT_LONG, 0, reg);  
6649 -  
6650 - tmp0 = tcg_temp_new_i32();  
6651 - tcg_gen_trunc_i64_i32(tmp0, cpu_T[0]);  
6652 - tcg_gen_bswap32_i32(tmp0, tmp0);  
6653 - tcg_gen_extu_i32_i64(cpu_T[0], tmp0);  
6654 - gen_op_mov_reg_T0(OT_LONG, reg);  
6655 - }  
6656 -#else 6646 +#endif
6657 { 6647 {
6658 gen_op_mov_TN_reg(OT_LONG, 0, reg); 6648 gen_op_mov_TN_reg(OT_LONG, 0, reg);
6659 - tcg_gen_bswap32_i32(cpu_T[0], cpu_T[0]); 6649 + tcg_gen_ext32u_tl(cpu_T[0], cpu_T[0]);
  6650 + tcg_gen_bswap32_tl(cpu_T[0], cpu_T[0]);
6660 gen_op_mov_reg_T0(OT_LONG, reg); 6651 gen_op_mov_reg_T0(OT_LONG, reg);
6661 } 6652 }
6662 -#endif  
6663 break; 6653 break;
6664 case 0xd6: /* salc */ 6654 case 0xd6: /* salc */
6665 if (CODE64(s)) 6655 if (CODE64(s))