(root)/
gcc-13.2.0/
libgomp/
testsuite/
libgomp.oacc-c-c++-common/
lib-55.c
       1  /* { dg-do run } */
       2  /* { dg-skip-if "" { *-*-* } { "*" } { "-DACC_MEM_SHARED=0" } } */
       3  
       4  #include <stdlib.h>
       5  #include <openacc.h>
       6  #include <stdint.h>
       7  
       8  int
       9  main (int argc, char **argv)
      10  {
      11    const int N = 256;
      12    unsigned char *h;
      13    int i;
      14    void *d;
      15  
      16    h = (unsigned char *) malloc (N);
      17  
      18    d = acc_malloc (N);
      19  
      20    for (i = 0; i < N; i++)
      21      {
      22        acc_map_data ((void *)((uintptr_t) h + (uintptr_t) i),
      23                      				(void *)((uintptr_t) d + (uintptr_t) i), 1);
      24      }
      25  
      26    for (i = 0; i < N; i++)
      27      {
      28        if (acc_is_present (h + 1, 1) != 1)
      29  	abort ();
      30      }
      31  
      32    for (i = 0; i < N; i++)
      33      {
      34        acc_unmap_data (h + i);
      35      }
      36  
      37    for (i = 0; i < N; i++)
      38      {
      39        if (acc_is_present (h + 1, 1) != 0)
      40  	abort ();
      41      }
      42  
      43    acc_free (d);
      44  
      45    free (h);
      46  
      47    return 0;
      48  }