1 /* { dg-do compile } */
2 /* { dg-require-effective-target vect_int } */
3 
4 #include <stdarg.h>
5 
6 #define M00 100
7 #define M10 216
8 #define M01 1322
9 #define M11 13
10 #define M02 74
11 #define M12 191
12 
13 #define N 16
14 
foo(unsigned int * __restrict__ pInput,unsigned int * __restrict__ pOutput)15 void foo (unsigned int *__restrict__ pInput, unsigned int *__restrict__ pOutput)
16 {
17   unsigned int i, a, b, c, d, e, f;
18 
19   for (i = 0; i < N / 3; i++)
20     {
21        a = *pInput++;
22        b = *pInput++;
23        c = *pInput++;
24        d = *pInput++;
25        e = *pInput++;
26        f = *pInput++;
27 
28        a = a + d;
29        b = b + e;
30        c = c + f;
31 
32        *pOutput++ = M00 * a + M01 * b + M02 * c;
33        *pOutput++ = M10 * a + M11 * b + M12 * c;
34     }
35 }
36 
37 
38