1 /* { dg-require-effective-target vect_int } */ 2 3 #include <stdarg.h> 4 #include "tree-vect.h" 5 6 #define N 16 7 8 __attribute__ ((noinline)) main1()9int main1 () 10 { 11 int i; 12 struct { 13 char ca[N]; 14 char cb[N]; 15 } s; 16 17 18 for (i = 0; i < N; i++) 19 { 20 s.cb[i] = 3*i; 21 __asm__ volatile (""); 22 } 23 24 for (i = 0; i < N; i++) 25 { 26 s.ca[i] = s.cb[i]; 27 } 28 29 /* check results: */ 30 for (i = 0; i < N; i++) 31 { 32 if (s.ca[i] != s.cb[i]) 33 abort (); 34 } 35 36 return 0; 37 } 38 main(void)39int main (void) 40 { 41 check_vect (); 42 43 return main1 (); 44 } 45 46 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ 47