(root)/
gcc-13.2.0/
libgomp/
testsuite/
libgomp.oacc-c-c++-common/
lib-44.c
       1  /* Exercise acc_update_device with size zero data.  */
       2  
       3  /* { dg-skip-if "" { *-*-* } { "*" } { "-DACC_MEM_SHARED=0" } } */
       4  
       5  #include <stdio.h>
       6  #include <stdlib.h>
       7  #include <openacc.h>
       8  
       9  int
      10  main (int argc, char **argv)
      11  {
      12    const int N = 256;
      13    int i;
      14    unsigned char *h;
      15    void *d;
      16  
      17    h = (unsigned char *) malloc (N);
      18  
      19    for (i = 0; i < N; i++)
      20      {
      21        h[i] = i;
      22      }
      23  
      24    d = acc_copyin (h, N);
      25    if (!d)
      26      abort ();
      27  
      28    for (i = 0; i < N; i++)
      29      {
      30        h[i] = 0xab;
      31      }
      32  
      33    fprintf (stderr, "CheCKpOInT\n");
      34    acc_update_device (h, 0);
      35  
      36    acc_copyout (h, N);
      37  
      38    for (i = 0; i < N; i++)
      39      {
      40        if (h[i] != 0xab)
      41  	abort ();
      42      }
      43  
      44    free (h);
      45  
      46    return 0;
      47  }
      48  
      49  /* { dg-output "CheCKpOInT(\n|\r\n|\r).*" } */
      50  /* { dg-output "\\\[\[0-9a-fA-FxX\]+,0\\\] is not mapped" } */
      51  /* { dg-shouldfail "" } */