1 /* { dg-require-effective-target vect_int_mult } */
2 /* { dg-require-effective-target whole_vector_shift } */
4 /* Write a reduction loop to be reduced using vector shifts. */
8 extern void abort(void);
13 main (unsigned char argc
, char **argv
)
16 unsigned char sum
= 1;
20 for (i
= 0; i
< 16; i
++)
23 /* Prevent constant propagation of the entire loop below. */
24 asm volatile ("" : : : "memory");
26 for (i
= 0; i
< 16; i
++)
31 __builtin_printf("Failed %d\n", sum
);
38 /* { dg-final { scan-tree-dump "Reduce using vector shifts" "vect" } } */