1 /* { dg-require-effective-target vect_int } */
21 __attribute__ ((noinline
)) int
29 for (i
= 0; i
< N
; i
++)
31 res
[i
].c
= ptr
->b
+ ptr
->c
;
33 res
[i
].a
= x
+ ptr
->b
;
34 res
[i
].d
= ptr
->b
+ ptr
->c
;
36 res
[i
].f
= ptr
->f
+ ptr
->e
;
37 res
[i
].e
= ptr
->b
+ ptr
->e
;
39 res
[i
].g
= ptr
->b
+ ptr
->c
;
44 for (i
= 0; i
< N
; i
++)
46 if (res
[i
].c
!= arr
[i
].b
+ arr
[i
].c
47 || res
[i
].a
!= arr
[i
].c
+ arr
[i
].f
+ arr
[i
].b
48 || res
[i
].d
!= arr
[i
].b
+ arr
[i
].c
49 || res
[i
].b
!= arr
[i
].c
50 || res
[i
].f
!= arr
[i
].f
+ arr
[i
].e
51 || res
[i
].e
!= arr
[i
].b
+ arr
[i
].e
52 || res
[i
].h
!= arr
[i
].c
53 || res
[i
].g
!= arr
[i
].b
+ arr
[i
].c
)
58 /* Not vectorizable: gap in store. */
59 for (i
= 0; i
< N
; i
++)
67 for (i
= 0; i
< N
; i
++)
69 if (res
[i
].a
!= arr
[i
].b
70 || res
[i
].b
!= arr
[i
].c
)
84 for (i
= 0; i
< N
; i
++)
94 if (y
) /* Avoid vectorization. */
103 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_strided8 } } } */