On 05/04/2016 11:20 AM, Laurent Vivier wrote:
+ case 0x140: + /* exchange Dx and Dy */ + src = DREG(insn, 9); + reg = DREG(insn, 0); + tcg_gen_mov_i32(dest, src); + tcg_gen_mov_i32(src, reg); + tcg_gen_mov_i32(reg, dest); + break; + case 0x148: + /* exchange Ax and Ay */ + src = AREG(insn, 9); + reg = AREG(insn, 0); + tcg_gen_mov_i32(dest, src); + tcg_gen_mov_i32(src, reg); + tcg_gen_mov_i32(reg, dest); + break; + case 0x188: + /* exchange Dx and Ay */ + src = DREG(insn, 9); + reg = AREG(insn, 0); + tcg_gen_mov_i32(dest, src); + tcg_gen_mov_i32(src, reg); + tcg_gen_mov_i32(reg, dest); + break; + }
All of the mov's can surely be shared between these cases. Otherwise, Reviewed-by: Richard Henderson <r...@twiddle.net> r~