/* Check OMP_TARGET_OFFLOAD on systems with no available non-host devices; omp_invalid_device == -4 with GCC. */ /* { dg-do run { target { ! offload_device } } } */ /* { dg-set-target-env-var OMP_TARGET_OFFLOAD "mandatory" } */ /* { dg-output ".*OMP_DEFAULT_DEVICE = '-4'.*OMP_TARGET_OFFLOAD = 'MANDATORY'.*" } */ #include int main () { if (omp_get_default_device () != omp_invalid_device) __builtin_abort (); omp_set_default_device (omp_initial_device); /* The spec is a bit unclear whether the line above sets the device number (a) to -1 (= omp_initial_device) or (b) to omp_get_initial_device() == omp_get_num_devices(). Therefore, we accept either value. */ if (omp_get_default_device() != omp_get_initial_device() && omp_get_default_device() != omp_initial_device) __builtin_abort (); omp_display_env (0); return 0; }