1  /* { dg-do compile } */
       2  /* { dg-require-effective-target vect_int } */
       3  
       4  void IMB_double_fast_x (int * __restrict__ destf,
       5  			int * __restrict__ dest, int y,
       6  			int * __restrict__ p1f)
       7  {
       8    int i;
       9    for (i = y; i > 0; i--)
      10      {
      11        *dest++ = 0;
      12        destf[0] = p1f[0];
      13        destf[1] = p1f[1];
      14        destf[2] = p1f[2];
      15        destf[3] = p1f[3];
      16        destf[4] = p1f[8];
      17        destf[5] = p1f[9];
      18        destf[6] = p1f[10];
      19        destf[7] = p1f[11];
      20        destf += 8;
      21        p1f += 12;
      22      }
      23  }
      24  
      25  /* { dg-final { scan-tree-dump "vectorized 1 loops" "vect" { target { vect_hw_misalign && vect_perm } } } } */