1 /* { dg-require-effective-target vect_int } */ 2 3 #include "tree-vect.h" 4 5 extern void abort (void); 6 7 __attribute__((noinline, noclone)) test1(short x[128],short D)8void test1(short x[128], short D) 9 { 10 int i; 11 for (i=127; i>=0; i--) { 12 x[i] = D; 13 } 14 } 15 main(void)16int 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, 1234); 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" } } */ 44