[committed] openmp: Document that non-rect loops are not supported in Fortran yet

Message ID 20211027074907.GC4027102@tucnak
State Committed
Headers
Series [committed] openmp: Document that non-rect loops are not supported in Fortran yet |

Commit Message

Jakub Jelinek Oct. 27, 2021, 7:49 a.m. UTC
  Hi!

I've found we claim to support non-rectangular loops, but don't actually
support those in Fortran, as can be seen on:
  integer i, j
  !$omp parallel do collapse(2)
  do i = 0, 10
    do j = 0, i
    end do
  end do
end
To support this, the Fortran FE needs to allow the valid forms of
non-rectangular loops and disallow others, so mainly it needs its
updated version of c-omp.c c_omp_check_loop_iv etc., plus for non-rectangular
lb or ub expressions emit a TREE_VEC instead of normal expression as the C/C++ FE
do, plus testsuite coverage.

Bootstrapped/regtested on x86_64-linux and i686-linux, committed to trunk.

2021-10-27  Jakub Jelinek  <jakub@redhat.com>

	* libgomp.texi (OpenMP 5.0): Mention that Non-rectangular loop nests
	aren't implemented for Fortran yet.


	Jakub
  

Patch

--- libgomp/libgomp.texi.jj	2021-10-21 10:23:27.605832433 +0200
+++ libgomp/libgomp.texi	2021-10-26 17:12:15.274870308 +0200
@@ -189,7 +189,7 @@  The OpenMP 4.5 specification is fully su
 @item @code{requires} directive @tab P
       @tab Only fulfillable requirement is @code{atomic_default_mem_order}
 @item @code{teams} construct outside an enclosing target region @tab Y @tab
-@item Non-rectangular loop nests @tab Y @tab
+@item Non-rectangular loop nests @tab P @tab Only C/C++
 @item @code{!=} as relational-op in canonical loop form for C/C++ @tab Y @tab
 @item @code{nonmonotonic} as default loop schedule modifier for worksharing-loop
       constructs @tab Y @tab