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