(root)/
gcc-13.2.0/
libgomp/
testsuite/
libgomp.c-c++-common/
pr81875.c
       1  /* { dg-do run } */
       2  
       3  extern
       4  #ifdef __cplusplus
       5  "C"
       6  #endif
       7  void abort (void);
       8  
       9  #define N 32ULL
      10  int a[N];
      11  
      12  const unsigned long long c = 0x7fffffffffffffffULL;
      13  
      14  void
      15  f2_tpf_static32 (void)
      16  {
      17    unsigned long long i;
      18    #pragma omp for
      19    for (i = c + N; i > c; i -= 1ULL)
      20      a[i - 1ULL - c] -= 4;
      21  }
      22  
      23  __attribute__((noinline, noclone)) int
      24  test_tpf_static32 (void)
      25  {
      26    int i, j, k;
      27    for (i = 0; i < N; i++)
      28      a[i] = i - 25;
      29  
      30    f2_tpf_static32 ();
      31  
      32    for (i = 0; i < N; i++)
      33      if (a[i] != i - 29)
      34        return 1;
      35  
      36    return 0;
      37  }
      38  
      39  int
      40  main ()
      41  {
      42    if (test_tpf_static32 ())
      43      abort ();
      44  
      45    return 0;
      46  }