https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81196
--- Comment #6 from amker at gcc dot gnu.org --- (In reply to Marc Glisse from comment #5) > (In reply to amker from comment #4) > > Hmm, the function can only be vectorized with "-march=skylake"? > > Er, it also vectorizes without any -march on x86_64 (with shorter vectors). But below is necessary, right? /* { dg-require-effective-target vect_perm_short } */ Otherwise I get: pr81196.c:7:3: note: negative step and reversing not supported. pr81196.c:7:3: note: not falling back to elementwise accesses pr81196.c:7:3: note: not vectorized: relevant stmt not supported: _1 = *q_18; pr81196.c:7:3: note: bad operation or unsupported loop bound. pr81196.c:4:6: note: vectorized 0 loops in function. Thanks