https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126592
--- Comment #2 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
(In reply to Tamar Christina from comment #1)
> (In reply to ktkachov from comment #0)
> > /* PR: candidate tree-vect-slp-patterns.cc:158 - wrong code.
> >
> > is_linear_load_p decides PERM_EVENEVEN from the parity of each load
> > permutation entry alone, so {0,2,2,2} is accepted exactly like the
> > intended {0,0,2,2}.
>
> {0,0,2,2} is invalid too as the for linearity there can't be gaps.
>
> Testing a patch.
hmm actually no `{0,0,2,2}` is correct, the function is misnamed.
The fix cleans up the code a bit too.