1 /* { dg-require-effective-target vect_int_mult } */
8 int in
[2*K
][K
] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__
)));
9 int coeff
[K
][K
] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__
)));
11 int check_result
[K
] = {652816,670736,688656,706576,724496,742416,760336,778256,796176,814096,832016,849936,867856,885776,903696,921616,939536,957456,975376,993296,1011216,1029136,1047056,1064976,1082896,1100816,1118736,1136656,1154576,1172496,1190416,1208336};
13 __attribute__ ((noinline
)) void
18 for (k
= 0; k
< K
; k
++)
21 for (j
= 0; j
< K
; j
++)
22 for (i
= 0; i
< K
; i
++)
23 sum
+= in
[i
+k
][j
] * coeff
[i
][j
];
35 for (j
= 0; j
< K
; j
++)
37 for (i
= 0; i
< 2*K
; i
++)
40 for (i
= 0; i
< K
; i
++)
46 for (k
= 0; k
< K
; k
++)
47 if (out
[k
] != check_result
[k
])
53 /* { dg-final { scan-tree-dump-times "OUTER LOOP VECTORIZED" 1 "vect" } } */
54 /* { dg-final { cleanup-tree-dump "vect" } } */