1 // RUN: %libomptarget-compile-run-and-check-generic 2 3 #include <assert.h> 4 #include <stdio.h> 5 main()6int main() { 7 int data1[3] = {1}, data2[3] = {2}, data3[3] = {3}; 8 int sum[16] = {0}; 9 #pragma omp target teams distribute parallel for map(tofrom \ 10 : sum) \ 11 firstprivate(data1, data2, data3) 12 for (int i = 0; i < 16; ++i) { 13 for (int j = 0; j < 3; ++j) { 14 sum[i] += data1[j]; 15 sum[i] += data2[j]; 16 sum[i] += data3[j]; 17 } 18 } 19 20 for (int i = 0; i < 16; ++i) { 21 assert(sum[i] == 6); 22 } 23 24 printf("PASS\n"); 25 26 return 0; 27 } 28 29 // CHECK: PASS 30