aboutsummaryrefslogtreecommitdiff
path: root/libgomp/testsuite/libgomp.oacc-c-c++-common/pr92970-1.c
blob: 380f67934546f924ea61891de4be370f49ba8ef2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/* Verify that 'acc_delete' etc. on non-present data is a no-op.  */

#include <openacc.h>

int
main ()
{
  int a;

  int async = 0;

#pragma acc exit data copyout (a)
  acc_copyout (&a, sizeof a);
#pragma acc exit data copyout (a) async (async++)
  acc_copyout_async (&a, sizeof a, async++);
#pragma acc exit data copyout (a) finalize
  acc_copyout_finalize (&a, sizeof a);
#pragma acc exit data copyout (a) finalize async (async++)
  acc_copyout_finalize_async (&a, sizeof a, async++);

#pragma acc exit data delete (a)
  acc_delete (&a, sizeof a);
#pragma acc exit data delete (a) async (async++)
  acc_delete_async (&a, sizeof a, async++);
#pragma acc exit data delete (a) finalize
  acc_delete_finalize (&a, sizeof a);
#pragma acc exit data delete (a) finalize async (async++)
  acc_delete_finalize_async (&a, sizeof a, async++);

  acc_wait_all ();

  return 0;
}