1 /* { dg-do compile } */
2 /* { dg-options "-O2 -ftree-loop-distribution -fdump-tree-ldist-all" } */
3 
foo(int * __restrict__ ia,int * __restrict__ ib,int * __restrict__ oxa,int * __restrict__ oxb)4 int foo (int * __restrict__ ia,
5 	 int * __restrict__ ib,
6 	 int * __restrict__ oxa,
7 	 int * __restrict__ oxb)
8 {
9   int i;
10   int oya[52], oyb[52];
11 
12   for (i=0; i < 52; i++)
13     {
14       oya[i] = (ia[i] * oxa[i]) >> 10;
15       oyb[i] = (ib[i] * oxb[i]) >> 10;
16     }
17 
18   return oya[22] + oyb[21];
19 }
20 
21 /* Distributing the loop doesn't expose more parallelism.  */
22 /* { dg-final { scan-tree-dump-times "distributed: split to 2 loops" 0 "ldist" } } */
23