1  /* { dg-require-effective-target vect_int } */
       2  
       3  #include "tree-vect.h"
       4  
       5  extern void abort (void);
       6  
       7  __attribute__((noinline, noclone))
       8  void test1(short x[128])
       9  {
      10      int i;
      11      for (i=127; i>=0; i--) {
      12  	x[i] = 1234;
      13      }
      14  }
      15  
      16  int main (void)
      17  {
      18    short x[128 + 32];
      19    int i;
      20    
      21    check_vect ();
      22  
      23    for (i = 0; i < 16; i ++)
      24      {
      25        asm ("");
      26        x[i] = x[i + 144] = 5678;
      27      }
      28     
      29    test1 (x + 16);
      30    
      31    for (i = 0; i < 128; i++)
      32     if (x[i + 16] != 1234)
      33       abort ();
      34    
      35    for (i = 0; i < 16; i++)
      36      if (x[i] != 5678
      37         || x[i + 144] != 5678)
      38        abort ();
      39           
      40    return 0;
      41  }
      42  
      43  /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */