/* { dg-require-effective-target vect_int } */ | |
#include "tree-vect.h" | |
unsigned __attribute__((noipa)) | |
bar (unsigned int *x) | |
{ | |
int sum = 4; | |
x = __builtin_assume_aligned (x, __BIGGEST_ALIGNMENT__); | |
for (int i = 0; i < 16; ++i) | |
sum += x[i]; | |
return sum; | |
} | |
int | |
main() | |
{ | |
static int a[16] __attribute__((aligned(__BIGGEST_ALIGNMENT__))) | |
= { 1, 3, 5, 8, 9, 10, 17, 18, 23, 29, 30, 55, 42, 2, 3, 1 }; | |
check_vect (); | |
if (bar (a) != 260) | |
abort (); | |
return 0; | |
} | |
/* { dg-final { scan-tree-dump "vectorized 1 loops" "vect" } } */ |