https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86530

--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
With my patch for V4QI, we still don't get the best code:
  vect_perm_even_271 = VEC_PERM_EXPR <vect__1.7_264, vect__1.8_266, { 0, 2, 4,
6 }>;
  vect_perm_even_273 = VEC_PERM_EXPR <vect__1.9_268, vect__1.10_270, { 0, 2, 4,
6 }>;
  vect_perm_even_275 = VEC_PERM_EXPR <vect_perm_even_271, vect_perm_even_273, {
0, 2, 4, 6 }>;

_275={_264[0], _264[2], _268[0], _268[2]} or
VEC_PERM<_264, _268, {0, 2, 4, 6}>

but for some reason we don't reduce it to that perm

And there is still a lot of extra PERMS than there should be.

Reply via email to