diff options
Diffstat (limited to 'gcc-4.4.3/libgomp/testsuite/libgomp.fortran/omp_parse4.f90')
-rw-r--r-- | gcc-4.4.3/libgomp/testsuite/libgomp.fortran/omp_parse4.f90 | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/gcc-4.4.3/libgomp/testsuite/libgomp.fortran/omp_parse4.f90 b/gcc-4.4.3/libgomp/testsuite/libgomp.fortran/omp_parse4.f90 deleted file mode 100644 index ba35bcb2a..000000000 --- a/gcc-4.4.3/libgomp/testsuite/libgomp.fortran/omp_parse4.f90 +++ /dev/null @@ -1,72 +0,0 @@ -! { dg-do run } -!$ use omp_lib - call test_workshare - -contains - subroutine test_workshare - integer :: i, j, k, l, m - double precision, dimension (64) :: d, e - integer, dimension (10) :: f, g - integer, dimension (16, 16) :: a, b, c - integer, dimension (16) :: n - d(:) = 1 - e = 7 - f = 10 - l = 256 - m = 512 - g(1:3) = -1 - g(4:6) = 0 - g(7:8) = 5 - g(9:10) = 10 - forall (i = 1:16, j = 1:16) a (i, j) = i * 16 + j - forall (j = 1:16) n (j) = j -!$omp parallel num_threads (4) private (j, k) -!$omp barrier -!$omp workshare - i = 6 - e(:) = d(:) - where (g .lt. 0) - f = 100 - elsewhere (g .eq. 0) - f = 200 + f - elsewhere - where (g .gt. 6) f = f + sum (g) - f = 300 + f - end where - where (f .gt. 210) g = 0 -!$omp end workshare nowait -!$omp workshare - forall (j = 1:16, k = 1:16) b (k, j) = a (j, k) - forall (k = 1:16) c (k, 1:16) = a (1:16, k) - forall (j = 2:16, n (17 - j) / 4 * 4 .ne. n (17 - j)) - n (j) = n (j - 1) * n (j) - end forall -!$omp endworkshare -!$omp workshare -!$omp atomic - i = i + 8 + 6 -!$omp critical -!$omp critical (critical_foox) - l = 128 -!$omp end critical (critical_foox) -!$omp endcritical -!$omp parallel num_threads (2) -!$ if (omp_get_thread_num () .eq. 0) m = omp_get_num_threads () -!$omp atomic - l = 1 + l -!$omp end parallel -!$omp end workshare -!$omp end parallel - - if (any (f .ne. (/100, 100, 100, 210, 210, 210, 310, 310, 337, 337/))) & -& call abort - if (any (g .ne. (/-1, -1, -1, 0, 0, 0, 0, 0, 0, 0/))) call abort - if (i .ne. 20) call abort -!$ if (l .ne. 128 + m) call abort - if (any (d .ne. 1 .or. e .ne. 1)) call abort - if (any (b .ne. transpose (a))) call abort - if (any (c .ne. b)) call abort - if (any (n .ne. (/1, 2, 6, 12, 5, 30, 42, 56, 9, 90, & -& 110, 132, 13, 182, 210, 240/))) call abort - end subroutine test_workshare -end |