https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106343
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |UNCONFIRMED Ever confirmed|1 |0 Severity|normal |enhancement Last reconfirmed|2022-07-18 00:00:00 | Target|aarch64, x86_64 |aarch64 Summary|Addition with constants is |SLP does not support no-op |not vectorized by SLP when |case |it includes zero | --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Also an issue with multiply: void foo (unsigned *__restrict dst, unsigned *__restrict src1) { dst[0] = src1[0] * 1; dst[1] = src1[1] * 2; dst[2] = src1[2] * 3; dst[3] = src1[3] * 4; dst[4] = src1[4] * 5; dst[5] = src1[5] * 6; dst[6] = src1[6] * 7; dst[7] = src1[7] * 8; }