1 /* { dg-additional-options "-fdump-tree-optimized-details-blocks" } */
2 /* { dg-require-effective-target vect_int } */
3 /* { dg-require-effective-target vect_shift } */
8 extern void abort(void);
10 struct s
{ int i
: 31; };
19 = { ELT0
, ELT1
, ELT2
, ELT3
, ELT0
, ELT1
, ELT2
, ELT3
,
20 ELT0
, ELT1
, ELT2
, ELT3
, ELT0
, ELT1
, ELT2
, ELT3
,
21 ELT0
, ELT1
, ELT2
, ELT3
, ELT0
, ELT1
, ELT2
, ELT3
,
22 ELT0
, ELT1
, ELT2
, ELT3
, ELT0
, ELT1
, ELT2
, ELT3
};
24 int __attribute__ ((noipa
))
25 f(struct s
*ptr
, unsigned n
) {
27 for (int i
= 0; i
< n
; ++i
)
36 if (f(&A
[0], N
) != RES
)
42 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
43 /* { dg-final { scan-tree-dump-not "Invalid sum" "optimized" } } */