annotate gcc/testsuite/c-c++-common/goacc/finalize-1.c @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 1830386684a0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 /* Test valid usage and processing of the finalize clause. */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3 /* { dg-additional-options "-fdump-tree-original -fdump-tree-gimple" } */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5 extern int del_r;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 extern float del_f[3];
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
7 extern char *del_f_p;
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 extern double cpo_r[8];
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9 extern long cpo_f;
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
10 extern char *cpo_f_p;
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 void f ()
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 #pragma acc exit data delete (del_r)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15 /* { dg-final { scan-tree-dump-times "(?n)#pragma acc exit data map\\(release:del_r\\);$" 1 "original" } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16 { dg-final { scan-tree-dump-times "(?n)#pragma omp target oacc_enter_exit_data map\\(release:del_r \\\[len: \[0-9\]+\\\]\\)$" 1 "gimple" } } */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18 #pragma acc exit data finalize delete (del_f)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 /* { dg-final { scan-tree-dump-times "(?n)#pragma acc exit data map\\(release:del_f\\) finalize;$" 1 "original" } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 { dg-final { scan-tree-dump-times "(?n)#pragma omp target oacc_enter_exit_data map\\(delete:del_f \\\[len: \[0-9\]+\\\]\\) finalize$" 1 "gimple" } } */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
22 #pragma acc exit data finalize delete (del_f_p[2:5])
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
23 /* { dg-final { scan-tree-dump-times "(?n)#pragma acc exit data map\\(release:\\*\\(del_f_p \\+ 2\\) \\\[len: 5\\\]\\) map\\(firstprivate:del_f_p \\\[pointer assign, bias: 2\\\]\\) finalize;$" 1 "original" } }
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
24 { dg-final { scan-tree-dump-times "(?n)#pragma omp target oacc_enter_exit_data map\\(delete:\[^ \]+ \\\[len: 5\\\]\\) finalize$" 1 "gimple" } } */
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
25
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
26 #pragma acc exit data copyout (cpo_r)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
27 /* { dg-final { scan-tree-dump-times "(?n)#pragma acc exit data map\\(from:cpo_r\\);$" 1 "original" } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
28 { dg-final { scan-tree-dump-times "(?n)#pragma omp target oacc_enter_exit_data map\\(from:cpo_r \\\[len: \[0-9\]+\\\]\\)$" 1 "gimple" } } */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
29
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
30 #pragma acc exit data copyout (cpo_f) finalize
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
31 /* { dg-final { scan-tree-dump-times "(?n)#pragma acc exit data finalize map\\(from:cpo_f\\);$" 1 "original" } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
32 { dg-final { scan-tree-dump-times "(?n)#pragma omp target oacc_enter_exit_data finalize map\\(force_from:cpo_f \\\[len: \[0-9\]+\\\]\\)$" 1 "gimple" } } */
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
33
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
34 #pragma acc exit data copyout (cpo_f_p[4:10]) finalize
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
35 /* { dg-final { scan-tree-dump-times "(?n)#pragma acc exit data finalize map\\(from:\\*\\(cpo_f_p \\+ 4\\) \\\[len: 10\\\]\\) map\\(firstprivate:cpo_f_p \\\[pointer assign, bias: 4\\\]\\);$" 1 "original" } }
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
36 { dg-final { scan-tree-dump-times "(?n)#pragma omp target oacc_enter_exit_data finalize map\\(force_from:\[^ \]+ \\\[len: 10\\\]\\)$" 1 "gimple" } } */
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
37 }