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

Uroš Bizjak <ubizjak at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2021-06-11
     Ever confirmed|0                           |1
           Assignee|unassigned at gcc dot gnu.org      |ubizjak at gmail dot com
             Status|UNCONFIRMED                 |ASSIGNED

--- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> ---
Created attachment 50982
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=50982&action=edit
Proposed patch

Effectively one liner patch with:

+  /* Try to avoid variable permutation instruction.  */
+  if (canonicalize_vector_int_perm (d, &nd) && expand_vec_perm_1 (&nd))
+    return false;

in a strategic place.

Survives:

GCC_TEST_RUN_EXPENSIVE=1 make check-gcc RUNTESTFLAGS='--target_board=unix/-mavx
dg-torture.exp=vshuf*.c'

Reply via email to