2015-07-03 Christophe Lyon <christophe.lyon@linaro.org>
[official-gcc.git] / gcc / testsuite / gfortran.dg / goacc / cray.f95
blob8f2c077beee44c42a0852a851e1de3df01501999
1 ! { dg-do compile }
2 ! { dg-additional-options "-fcray-pointer" }
4 module test
5 contains
6 subroutine oacc1
7 implicit none
8 integer :: i
9 real :: pointee
10 pointer (ptr, pointee)
11 !$acc declare device_resident (pointee)
12 !$acc declare device_resident (ptr)
13 !$acc data copy (pointee) ! { dg-error "Cray pointee" }
14 !$acc end data
15 !$acc data deviceptr (pointee) ! { dg-error "Cray pointee" }
16 !$acc end data
17 !$acc parallel private (pointee) ! { dg-error "Cray pointee" }
18 !$acc end parallel
19 !$acc host_data use_device (pointee) ! { dg-error "Cray pointee" }
20 !$acc end host_data
21 !$acc parallel loop reduction(+:pointee) ! { dg-error "Cray pointee" }
22 do i = 1,5
23 enddo
24 !$acc end parallel loop
25 !$acc parallel loop
26 do i = 1,5
27 ! Subarrays are not implemented yet
28 !$acc cache (pointee) ! TODO: This must fail, as in openacc-1_0-branch
29 enddo
30 !$acc end parallel loop
31 !$acc update device (pointee) ! { dg-error "Cray pointee" }
32 !$acc update host (pointee) ! { dg-error "Cray pointee" }
33 !$acc update self (pointee) ! { dg-error "Cray pointee" }
34 !$acc data copy (ptr)
35 !$acc end data
36 !$acc data deviceptr (ptr) ! { dg-error "Cray pointer" }
37 !$acc end data
38 !$acc parallel private (ptr)
39 !$acc end parallel
40 !$acc host_data use_device (ptr) ! { dg-error "Cray pointer" }
41 !$acc end host_data
42 !$acc parallel loop reduction(+:ptr) ! { dg-error "Cray pointer" }
43 do i = 1,5
44 enddo
45 !$acc end parallel loop
46 !$acc parallel loop
47 do i = 1,5
48 !$acc cache (ptr) ! TODO: This must fail, as in openacc-1_0-branch
49 enddo
50 !$acc end parallel loop
51 !$acc update device (ptr)
52 !$acc update host (ptr)
53 !$acc update self (ptr)
54 end subroutine oacc1
55 end module test
56 ! { dg-prune-output "unimplemented" }