mirror of git://gcc.gnu.org/git/gcc.git
32 lines
887 B
C
32 lines
887 B
C
/* 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;
|
|
}
|