blob: e9144b4d54605c302a12af8a227d36750e955930 [file]
// Only generic mode is affected, so this compiles without optimization: at -O1
// and above the kernel becomes Generic-SPMD and the answer is right either way.
// RUN: %libomptarget-compile-generic
// RUN: %libomptarget-run-generic | %fcheck-generic
// REQUIRES: gpu
#include <stdio.h>
int main(void) {
long count = 0;
#pragma omp target teams distribute num_teams(5) thread_limit(4) \
map(tofrom : count)
for (int team = 0; team < 5; team++) {
#pragma omp parallel for
for (int i = 0; i < 6; i++) {
#pragma omp atomic
count += 1;
}
}
printf("count = %ld\n", count);
return count != 30;
}
// CHECK: count = 30