1 /* { dg-require-effective-target vect_int } */
13 __attribute__ ((noinline
)) int
16 unsigned short arr
[N
];
17 unsigned short *ptr
= arr
;
20 unsigned short res
[N
];
24 for (i
= 0; i
< N
; i
++)
33 for (i
= 0; i
< N
; i
++)
35 ires
[i
].a
= iptr
->b
- iptr
->a
;
36 ires
[i
].b
= iptr
->b
+ iptr
->a
;
43 for (i
= 0; i
< N
; i
++)
46 || ires
[i
].a
!= iarr
[i
].b
- iarr
[i
].a
47 || ires
[i
].b
!= iarr
[i
].b
+ iarr
[i
].a
)
65 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { vect_interleave && vect_extract_even_odd } } } } */
66 /* { dg-final { cleanup-tree-dump "vect" } } */