On Thu, 2 Feb 2023 at 18:35, Richard Henderson <richard.henderson@xxxxxxxxxx> wrote: > > On 2/2/23 04:30, Philipp Tomsich wrote: > > On the second pass over these patches, here's how we can use gvec > > support for both vror and vrol: > > > > /* Synthesize a rotate-right from a negate(shift-amount) + rotate-left */ > > static void tcg_gen_gvec_rotrs(unsigned vece, uint32_t dofs, uint32_t aofs, > > TCGv_i32 shift, uint32_t oprsz, uint32_t maxsz) > > { > > TCGv_i32 tmp = tcg_temp_new_i32(); > > tcg_gen_neg_i32(tmp, shift); > > tcg_gen_gvec_rotls(vece, dofs, aofs, tmp, oprsz, maxsz); > > We can add rotls generically. > I hadn't done this so far because there were no users. I read this such that your preference is to have a generic gvec rotrs? If this is correct, I can drop a patch to that effect… Philipp.