1 /* { dg-require-effective-target vect_int } */
20 __attribute__ ((noinline
)) int
21 main1 (s
*arr
, ii
*iarr
)
29 for (i
= 0; i
< N
; i
++)
31 ires
[i
].a
= iptr
->b
- iptr
->a
;
32 ires
[i
].b
= iptr
->b
+ iptr
->a
;
33 res
[i
].b
= ptr
->b
- ptr
->a
;
34 res
[i
].a
= ptr
->b
+ ptr
->a
;
40 for (i
= 0; i
< N
; i
++)
42 if (res
[i
].b
!= arr
[i
].b
- arr
[i
].a
43 || ires
[i
].a
!= iarr
[i
].b
- iarr
[i
].a
44 || res
[i
].a
!= arr
[i
].b
+ arr
[i
].a
45 || ires
[i
].b
!= iarr
[i
].b
+ iarr
[i
].a
61 for (i
= 0; i
< N
; i
++)
67 if (y
) /* Avoid vectorization. */
76 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_strided2 } } } */
77 /* { dg-final { cleanup-tree-dump "vect" } } */