Imported Upstream version 4.7.3
[platform/upstream/gcc48.git] / gcc / testsuite / gcc.dg / vect / O3-pr41881.c
1 /* { dg-do compile } */
2
3 #define TYPE int
4
5 TYPE fun1(TYPE *x, TYPE *y, unsigned int n)
6 {
7   int i, j;
8   TYPE dot = 0;
9
10   for (i = 0; i < n; i++)
11     dot += *(x++) * *(y++);
12
13   return dot;
14 }
15
16 TYPE fun2(TYPE *x, TYPE *y, unsigned int n)
17 {
18   int i, j;
19   TYPE dot = 0;
20
21   for (i = 0; i < n / 8; i++)
22     for (j = 0; j < 8; j++)
23       dot += *(x++) * *(y++);
24
25   return dot;
26 }
27
28 /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" { target { vect_int_mult && {! vect_no_align } } } } } */
29 /* { dg-final { cleanup-tree-dump "vect" } } */
30