1 // RUN: %libomp-compile && env KMP_AFFINITY=compact %libomp-run
2 
3 #include <stdio.h>
4 #include <stdint.h>
5 #include <omp.h>
6 #include "omp_testsuite.h"
7 
test_nested_affinity_bug()8 int test_nested_affinity_bug() {
9   int a = 0;
10   omp_set_nested(1);
11   #pragma omp parallel num_threads(2) shared(a)
12   {
13     #pragma omp parallel num_threads(2) shared(a) proc_bind(close)
14     {
15       #pragma omp atomic
16       a++;
17     }
18   }
19   return 1;
20 }
21 
main()22 int main() {
23   int i;
24   int num_failed = 0;
25 
26   for (i = 0; i < REPETITIONS; i++) {
27     if (!test_nested_affinity_bug()) {
28       num_failed++;
29     }
30   }
31   return num_failed;
32 }
33