reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
    1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
// RUN: %compile-run-and-check

#include <omp.h>
#include <stdio.h>

const int MaxThreads = 1024;

int main(int argc, char *argv[]) {
  int cancellation = -1, dynamic = -1, nested = -1, maxActiveLevels = -1;

  #pragma omp target map(cancellation, dynamic, nested, maxActiveLevels)
  {
    // libomptarget-nvptx doesn't support cancellation.
    cancellation = omp_get_cancellation();

    // No support for dynamic adjustment of the number of threads.
    omp_set_dynamic(1);
    dynamic = omp_get_dynamic();

    // libomptarget-nvptx doesn't support nested parallelism.
    omp_set_nested(1);
    nested = omp_get_nested();

    omp_set_max_active_levels(42);
    maxActiveLevels = omp_get_max_active_levels();
  }

  // CHECK: cancellation = 0
  printf("cancellation = %d\n", cancellation);
  // CHECK: dynamic = 0
  printf("dynamic = %d\n", dynamic);
  // CHECK: nested = 0
  printf("nested = %d\n", nested);
  // CHECK: maxActiveLevels = 1
  printf("maxActiveLevels = %d\n", maxActiveLevels);

  return 0;
}