diff options
-rw-r--r-- | libgomp/ChangeLog.omp | 7 | ||||
-rw-r--r-- | libgomp/testsuite/libgomp.fortran/allocate-1.f90 | 26 |
2 files changed, 19 insertions, 14 deletions
diff --git a/libgomp/ChangeLog.omp b/libgomp/ChangeLog.omp index b563e889911..0c13a8671d5 100644 --- a/libgomp/ChangeLog.omp +++ b/libgomp/ChangeLog.omp @@ -1,5 +1,12 @@ 2022-03-08 Abid Qadeer <abidh@codesourcery.com> + * testsuite/libgomp.fortran/allocate-1.f90: Remove pool_size + trait. Test last index in w and v array. Remove redundant + assignment to V(1). Move alignment checks at the end of + parallel region. + +2022-03-08 Abid Qadeer <abidh@codesourcery.com> + Backported from master: 2022-02-04 Tobias Burnus <tobias@codesourcery.com> diff --git a/libgomp/testsuite/libgomp.fortran/allocate-1.f90 b/libgomp/testsuite/libgomp.fortran/allocate-1.f90 index 0a31d35d5ac..1547d2baeef 100644 --- a/libgomp/testsuite/libgomp.fortran/allocate-1.f90 +++ b/libgomp/testsuite/libgomp.fortran/allocate-1.f90 @@ -74,31 +74,30 @@ subroutine foo (x, p, q, h, fl) if (x /= 42) then stop 1 end if - v(1) = 7 - if ( (and(fl, 2) /= 0) .and. & - ((is_64bit_aligned(x) == 0) .or. & - (is_64bit_aligned(y) == 0) .or. & - (is_64bit_aligned(v(1)) == 0))) then - stop 2 - end if !$omp barrier y = 1; x = x + 1 v(1) = 7 - v(41) = 8 + v(42) = 8 !$omp barrier if (x /= 43 .or. y /= 1) then stop 3 end if - if (v(1) /= 7 .or. v(41) /= 8) then + if (v(1) /= 7 .or. v(42) /= 8) then stop 4 end if + if ( (and(fl, 2) /= 0) .and. & + ((is_64bit_aligned(x) == 0) .or. & + (is_64bit_aligned(y) == 0) .or. & + (is_64bit_aligned(v(1)) == 0))) then + stop 2 + end if !$omp end parallel !$omp teams !$omp parallel private (y) firstprivate (x, w) allocate (h: x, y, w) - if (x /= 42 .or. w(17) /= 17 .or. w(41) /= 41) then + if (x /= 42 .or. w(17) /= 17 .or. w(42) /= 42) then stop 5 end if !$omp barrier @@ -314,13 +313,12 @@ program main integer, dimension(4) :: p integer, dimension(4) :: q - type (omp_alloctrait) :: traits(3) + type (omp_alloctrait) :: traits(2) integer (omp_allocator_handle_kind) :: a traits = [omp_alloctrait (omp_atk_alignment, 64), & - omp_alloctrait (omp_atk_fallback, omp_atv_null_fb), & - omp_alloctrait (omp_atk_pool_size, 8192)] - a = omp_init_allocator (omp_default_mem_space, 3, traits) + omp_alloctrait (omp_atk_fallback, omp_atv_null_fb)] + a = omp_init_allocator (omp_default_mem_space, 2, traits) if (a == omp_null_allocator) stop 1 call omp_set_default_allocator (omp_default_mem_alloc); |