blob: 8e95c1c3ac38fdfa626270fa2c3ff235bfc0e8e7 [file] [log] [blame]
/* 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 <omp.h>
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;
}