1 /* { dg-require-effective-target vect_int } */
15 __attribute__ ((noinline
)) int
22 for (i
= 0; i
< N
; i
++)
24 res
[i
].c
= ptr
->b
- ptr
->a
+ ptr
->d
- ptr
->c
;
25 res
[i
].a
= ptr
->a
+ ptr
->c
+ ptr
->b
+ ptr
->d
;
26 res
[i
].d
= ptr
->b
- ptr
->a
+ ptr
->d
- ptr
->c
;
27 res
[i
].b
= ptr
->b
- ptr
->a
+ ptr
->d
- ptr
->c
;
33 for (i
= 0; i
< N
; i
++)
35 if (res
[i
].c
!= arr
[i
].b
- arr
[i
].a
+ arr
[i
].d
- arr
[i
].c
36 || res
[i
].a
!= arr
[i
].a
+ arr
[i
].c
+ arr
[i
].b
+ arr
[i
].d
37 || res
[i
].d
!= arr
[i
].b
- arr
[i
].a
+ arr
[i
].d
- arr
[i
].c
38 || res
[i
].b
!= arr
[i
].b
- arr
[i
].a
+ arr
[i
].d
- arr
[i
].c
)
52 for (i
= 0; i
< N
; i
++)
58 asm volatile ("" ::: "memory");
66 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_strided4 } } } */