icv-4.c 959 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /* { dg-set-target-env-var OMP_NUM_TEAMS "6" } */
  2. /* { dg-set-target-env-var OMP_TEAMS_THREAD_LIMIT "12" } */
  3. #include <omp.h>
  4. #include <stdlib.h>
  5. #include <string.h>
  6. int
  7. main ()
  8. {
  9. if (getenv ("OMP_NUM_TEAMS") != NULL
  10. && strcmp (getenv ("OMP_NUM_TEAMS"), "6") == 0)
  11. {
  12. if (omp_get_max_teams () != 6)
  13. abort ();
  14. }
  15. else
  16. omp_set_num_teams (6);
  17. if (getenv ("OMP_TEAMS_THREAD_LIMIT") == NULL
  18. && strcmp (getenv ("OMP_TEAMS_THREAD_LIMIT"), "12") == 0)
  19. {
  20. if (omp_get_teams_thread_limit () != 12)
  21. abort ();
  22. }
  23. else
  24. omp_set_teams_thread_limit (12);
  25. #pragma omp teams
  26. {
  27. #pragma omp parallel if(0)
  28. if (omp_get_max_teams () != 6
  29. || omp_get_teams_thread_limit () != 12
  30. || omp_get_num_teams () < 1
  31. || omp_get_num_teams () > 6
  32. || omp_get_team_num () < 0
  33. || omp_get_team_num () >= omp_get_num_teams ()
  34. || omp_get_thread_limit () < 1
  35. || omp_get_thread_limit () > 12)
  36. abort ();
  37. }
  38. return 0;
  39. }