(root)/
gcc-13.2.0/
libgomp/
testsuite/
libgomp.oacc-c-c++-common/
kernels-loop-collapse.c
       1  #include <stdlib.h>
       2  
       3  #define N 100
       4  
       5  int a[N][N];
       6  
       7  void __attribute__((noinline, noclone))
       8  foo (int m, int n)
       9  {
      10    int i, j;
      11    #pragma acc kernels
      12    {
      13  #pragma acc loop collapse(2)
      14      for (i = 0; i < m; i++)
      15        for (j = 0; j < n; j++)
      16  	a[i][j] = 1;
      17    }
      18  }
      19  
      20  int
      21  main (void)
      22  {
      23    int i, j;
      24  
      25    for (i = 0; i < N; i++)
      26      for (j = 0; j < N; j++)
      27        a[i][j] = 0;
      28  
      29    foo (N, N);
      30  
      31    for (i = 0; i < N; i++)
      32      for (j = 0; j < N; j++)
      33        if (a[i][j] != 1)
      34  	abort ();
      35  
      36    return 0;
      37  }