On 2/14/21 9:58 AM, Philippe Mathieu-Daudé wrote: > + tcg_gen_mov_i64(ax, cpu_gpr[a->rt]); > + if (a->rd != a->rt) { > + tcg_gen_mov_i64(cpu_gpr[a->rd], cpu_gpr[a->rt]); > + } > + tcg_gen_deposit_i64(cpu_gpr[a->rd], cpu_gpr[a->rd], ax, 32, 16); > + tcg_gen_shri_i64(ax, ax, 32); > + tcg_gen_deposit_i64(cpu_gpr[a->rd], cpu_gpr[a->rd], ax, 0, 16);
mask = tcg_constant_i64(0x0000ffff0000ffffull); tcg_gen_rotli_i64(x, t, 32); tcg_gen_and_i64(d, t, mask); tcg_gen_and_i64(x, x, mask); tcg_gen_or_i64(d, d, x); r~