1 // RUN: %libomptarget-compile-generic -O1 && %libomptarget-run-generic 2 // -O1 to run openmp-opt 3 main(void)4int main(void) { 5 long int aa = 0; 6 7 int ng = 12; 8 int nxyz = 5; 9 10 const long exp = ng * nxyz; 11 12 #pragma omp target map(tofrom : aa) 13 for (int gid = 0; gid < nxyz; gid++) { 14 #pragma omp parallel for 15 for (unsigned int g = 0; g < ng; g++) { 16 #pragma omp atomic 17 aa += 1; 18 } 19 } 20 if (aa != exp) { 21 return 1; 22 } 23 return 0; 24 } 25