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

            Bug ID: 95960
           Summary: GCC should re-vectorize vector code with larger VF
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: rguenth at gcc dot gnu.org
  Target Milestone: ---

For the following simple case GCC should vectorize it using AVX:

typedef double __attribute__((vector_size(16))) v2df;
double a[4];
double b[4];
void f()
{
  *(v2df *)&b[0] += *(v2df *)&a[0];
  *(v2df *)&b[2] += *(v2df *)&a[2];
}

Similar opportunities may exist for loops where also Neon -> SVE transforms
may be profitable.  Starting with BB vectorization might be easier since
you only need to consider SLP.

Reply via email to