(root)/
gcc-13.2.0/
libgomp/
testsuite/
libgomp.oacc-c-c++-common/
lib-6.c
       1  /* { dg-do run } */
       2  
       3  #include <stdlib.h>
       4  #include <openacc.h>
       5  
       6  int
       7  main (int argc, char **argv)
       8  {
       9    int devnum;
      10  
      11    if (acc_get_device_type () == acc_device_default)
      12      abort ();
      13  
      14    if (acc_get_num_devices (acc_device_nvidia))
      15      {
      16        acc_set_device_type (acc_device_nvidia);
      17  
      18        if (acc_get_device_type () != acc_device_nvidia)
      19  	abort ();
      20  
      21        acc_shutdown (acc_device_nvidia);
      22  
      23        acc_set_device_type (acc_device_nvidia);
      24  
      25        if (acc_get_device_type () != acc_device_nvidia)
      26  	abort ();
      27  
      28        devnum = acc_get_num_devices (acc_device_host);
      29        if (devnum != 1)
      30  	abort ();
      31  
      32        acc_shutdown (acc_device_nvidia);
      33      }
      34  
      35    if (acc_get_num_devices (acc_device_radeon))
      36      {
      37        acc_set_device_type (acc_device_radeon);
      38  
      39        if (acc_get_device_type () != acc_device_radeon)
      40  	abort ();
      41  
      42        acc_shutdown (acc_device_radeon);
      43  
      44        acc_set_device_type (acc_device_radeon);
      45  
      46        if (acc_get_device_type () != acc_device_radeon)
      47  	abort ();
      48  
      49        devnum = acc_get_num_devices (acc_device_host);
      50        if (devnum != 1)
      51  	abort ();
      52  
      53        acc_shutdown (acc_device_radeon);
      54      }
      55  
      56    if (acc_get_device_type () == acc_device_default)
      57      abort ();
      58  
      59    return 0;
      60  }