(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
vect/
vect-10-big-array.c
       1  /* { dg-do compile } */
       2  /* { dg-require-effective-target vect_int } */
       3  
       4  extern void abort (void);
       5  
       6  #define N 128
       7  
       8  short a[N];
       9  short d[N];
      10  
      11  int foo ()
      12  {
      13    int i;
      14    short b[N];
      15    short c[N];
      16    for (i = 0; i < N/2; i++)
      17      {
      18        b[i] = i*3;
      19        c[i] = i;
      20        asm volatile ("" ::: "memory");
      21      }
      22  
      23    /* Strided access pattern.  */
      24    for (i = 0; i < N/2; i++)
      25      {
      26        a[i] = b[2*i+1] * c[2*i+1] - b[2*i] * c[2*i];
      27        d[i] = b[2*i] * c[2*i+1] + b[2*i+1] * c[2*i];
      28      }
      29  
      30    return 0;
      31  }
      32  
      33  /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail { ! vect_strided2 } } } } */