1 /* { dg-require-effective-target vect_int } */
21 __attribute__ ((noinline
)) int
30 for (i
= 0; i
< N
; i
++)
41 check_res
[i
].c
= arr
[i
].a
;
42 check_res
[i
].a
= arr
[i
].f
+ arr
[i
].a
;
43 check_res
[i
].d
= arr
[i
].f
- arr
[i
].a
;
44 check_res
[i
].b
= arr
[i
].f
;
45 check_res
[i
].f
= arr
[i
].a
;
46 check_res
[i
].e
= arr
[i
].f
- arr
[i
].a
;
47 check_res
[i
].h
= arr
[i
].f
;
48 check_res
[i
].g
= arr
[i
].f
- arr
[i
].a
;
50 if (y
) /* Avoid vectorization. */
54 for (i
= 0; i
< N
; i
++)
57 res
[i
].a
= ptr
->f
+ ptr
->a
;
58 res
[i
].d
= ptr
->f
- ptr
->a
;
61 res
[i
].e
= ptr
->f
- ptr
->a
;
63 res
[i
].g
= ptr
->f
- ptr
->a
;
68 for (i
= 0; i
< N
; i
++)
70 if (res
[i
].a
!= check_res
[i
].a
71 || res
[i
].b
!= check_res
[i
].b
72 || res
[i
].c
!= check_res
[i
].c
73 || res
[i
].d
!= check_res
[i
].d
74 || res
[i
].e
!= check_res
[i
].e
75 || res
[i
].f
!= check_res
[i
].f
76 || res
[i
].g
!= check_res
[i
].g
77 || res
[i
].h
!= check_res
[i
].h
)
92 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_strided8 } } } */