> From: Richard Henderson <richard.hender...@linaro.org> > Subject: Re: [Qemu-devel] [PATCH 2/2] target/mips: Optimize ILVEV.<B|H|W|D> > MSA instructions > > On 3/19/19 4:28 AM, Mateja Marjanovic wrote: > > + tcg_gen_andi_i64(t1, msa_wr_d[wt * 2], mask); > > + tcg_gen_andi_i64(t0, msa_wr_d[ws * 2], mask); > > + tcg_gen_shli_i64(t0, t0, 32); > > + tcg_gen_or_i64(msa_wr_d[wd * 2], t1, t0); > > Deposit, again.
Mateja, May I ask you to redo this segment of code as Richard describe (the exact invocations of TCG functions are in a Richard's comment to some of the previous versions of this patch). This means redo ILVEV.W handling. Then you can compare the performance of two versions, and attach the results here. You can also (using -d out-asm or similar QEMU options) find out what code is generated for both alternatives, and attach the generated code here, maybe some folks will find them interesting (I will). Thanks, Aleksandar