1 /* { dg-require-effective-target vect_int } */
13 __attribute__ ((noinline)) int
14 main1 (unsigned short *arr, ii *iarr)
16 unsigned short *ptr = arr;
18 unsigned short res[N];
22 for (i = 0; i < N; i++)
24 ires[i].a = iptr->b - iptr->a;
25 ires[i].b = iptr->b + iptr->a;
32 for (i = 0; i < N; i++)
35 || ires[i].a != iarr[i].b - iarr[i].a
36 || ires[i].b != iarr[i].b + iarr[i].a)
46 unsigned short arr[N];
51 for (i = 0; i < N; i++)
64 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { vect_interleave && vect_extract_even_odd } } } } */
65 /* { dg-final { cleanup-tree-dump "vect" } } */