On 4/2/19 10:15 PM, Mateja Marjanovic wrote: > +static inline void gen_ilvev_w(CPUMIPSState *env, uint32_t wd, > + uint32_t ws, uint32_t wt) > +{ > + TCGv_i64 t1 = tcg_temp_new_i64(); > + const uint64_t mask = 0x00000000ffffffffULL; > + > + tcg_gen_andi_i64(t1, msa_wr_d[wt * 2], mask); > + tcg_gen_deposit_i64(msa_wr_d[wd * 2], t1, msa_wr_d[ws * 2], 32, 32);
The andi of mask is redundant with the deposit. Remove it. This should be just tcg_gen_deposit_i64(msa_wr_d[wd * 2], msa_wr_d[wt * 2], msa_wr_d[ws * 2], 32, 32); r~