I had a look at the OpenMP 5.2 changes and found some more,
which I think should be listed. Some were rather hidden, two
were only documented in the deprecate part.

I also added the 'begin declare target', which is a variant
to the delimited form of 'declare target' – the non-begin
variant is then deprecated in 5.1. (The begin variant permits
clauses, the other doesn't.)

OK? Comments?

Tobias

PS: For Fortran, 5.1 permitted with capture:
    [!$omp end atomic]
namely: the 'end atomic' is optional.
gfortran has implemented this – but 5.2 now made it required again,
treating it as bug. I am not sure whether this should now also be
listed as 'deleted' feature or not. Hmm.
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 
München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas 
Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht 
München, HRB 106955
libgomp.texi: Add more to-be-implemented OpenMP 5.2 features

libgomp/
	* libgomp.texi (Other new OpenMP 5.1 features): Add
	'begin declare target'.
	(Other new OpenMP 5.2 features): New.

diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi
index 56724687fb4..7434643dd1d 100644
--- a/libgomp/libgomp.texi
+++ b/libgomp/libgomp.texi
@@ -343,6 +343,7 @@ The OpenMP 4.5 specification is fully supported.
 @item Support of structured block sequences in C/C++ @tab Y @tab
 @item @code{unconstrained} and @code{reproducible} modifiers on @code{order}
       clause @tab Y @tab
+@item Support @code{begin/end declare target} syntax in C/C++ @tab N @tab
 @end multitable
 
 
@@ -395,6 +396,23 @@ The OpenMP 4.5 specification is fully supported.
 @item @code{omp_cur_iteration} keyword @tab N @tab
 @end multitable
 
+@unnumberedsubsec Other new OpenMP 5.2 features
+
+@multitable @columnfractions .60 .10 .25
+@headitem Description @tab Status @tab Comments
+@item For Fortran, optional comma between directive and clause @tab N @tab
+@item Conforming device numbers and @code{omp_initial_device} and
+      @code{omp_invalid_device} enum/PARAMETER @tab N @tab
+@item Initial value of @emph{default-device-var} ICV with
+      @code{OMP_TARGET_OFFLOAD=mandatory} @tab N @tab
+@item @emph{interop_types} in any position of the modifier list for the @code{init} clause
+      of the @code{interop} construct @tab N @tab
+@item Deprecate specifying multiple modifiers in the @code{map} clause without
+      comma separator @tab N @tab
+@item Deprecate @code{destroy} clause on the @code{depobj} construct with no
+      argument @tab N @tab
+@end multitable
+
 
 @c ---------------------------------------------------------------------
 @c OpenMP Runtime Library Routines
gcc-13/changes.html - Update OpenMP / projects/gomp - add more to-do items

* gcc-13/changes.html (OpenMP): Add 'nowait' with 'taskwait'.
* projects/gomp/index.html: Add one 5.1 and several 5.2 additional
  to-be-implemented features.

diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html
index c2610412..a262087f 100644
--- a/htdocs/gcc-13/changes.html
+++ b/htdocs/gcc-13/changes.html
@@ -40,7 +40,8 @@ a work-in-progress.</p>
   <ul>
     <li>The following OpenMP 5.1 features have been added: the
     <code>omp_all_memory</code> reserved locator, the <code>inoutset</code>
-    modifier to the <code>depend</code> clause and the
+    modifier to the <code>depend</code> clause, the <code>nowait</code>
+    clause for the <code>taskwait</code> directive and the
     <code>omp_target_is_accessible</code>, <code>omp_target_memcpy_async</code>,
     <code>omp_target_memcpy_rect_async</code> and
     <code>omp_get_mapped_ptr</code> API routines. Fortran now supports
diff --git a/htdocs/projects/gomp/index.html b/htdocs/projects/gomp/index.html
index 68531a57..f2b80ad8 100644
--- a/htdocs/projects/gomp/index.html
+++ b/htdocs/projects/gomp/index.html
@@ -630,6 +630,11 @@ than listed, depending on resolved corner cases and optimizations.</p>
     <td class="supported"><a href="../../gcc-13/changes.html#languages">GCC&nbsp;13</a></td>
     <td></td>
   </tr>
+  <tr>
+    <td><code>nowait</code> clause in <code>taskwait</code> directive</td>
+    <td class="supported"><a href="../../gcc-13/changes.html#languages">GCC&nbsp;13</a></td>
+    <td></td>
+  </tr>
   <tr>
     <td><em>target_device trait</em> in OpenMP Context</td>
     <td class="unsupported">No</td>
@@ -690,11 +695,6 @@ than listed, depending on resolved corner cases and optimizations.</p>
     <td class="unsupported">No</td>
     <td></td>
   </tr>
-  <tr>
-    <td><code>nowait</code> clause in <code>taskwait</code> directive</td>
-    <td class="unsupported">No</td>
-    <td></td>
-  </tr>
   <tr>
     <td><code>present</code> argument to <code>defaultmap</code> clause</td>
     <td class="unsupported">No</td>
@@ -725,6 +725,12 @@ than listed, depending on resolved corner cases and optimizations.</p>
     <td class="unsupported">No</td>
     <td></td>
   </tr>
+  <tr>
+    <td>Support <code>begin/end declare target</code> syntax in C/C++</td>
+    <td class="unsupported">No</td>
+    <td></td>
+  </tr>
+  <tr>
 </tbody>
 </table>
 
@@ -875,6 +881,36 @@ than listed, depending on resolved corner cases and optimizations.</p>
     <td class="unsupported">No</td>
     <td></td>
   </tr>
+  <tr>
+    <td>For Fortran, optional comma between directive and clause</td>
+    <td class="unsupported">No</td>
+    <td></td>
+  </tr>
+  <tr>
+    <td>Conforming device numbers and <code>omp_initial_device</code> and <code>omp_invalid_device</code> enum/PARAMETER</td>
+    <td class="unsupported">No</td>
+    <td></td>
+  </tr>
+  <tr>
+    <td><em>interop_types</em> in any position of the modifier list for the <code>init</code> clause of the <code>interop</code> construct<td>
+    <td class="unsupported">No</td>
+    <td></td>
+  </tr>
+  <tr>
+    <td>Initial value of <em>default-device-var</em> ICV with <code>OMP_TARGET_OFFLOAD=mandatory</code></td>
+    <td class="unsupported">No</td>
+    <td></td>
+  </tr>
+  <tr>
+    <td>Deprecate specifying multiple modifiers in the <code>map</code> clause without comma separator</td>
+    <td class="unsupported">No</td>
+    <td></td>
+  </tr>
+  <tr>
+    <td>Deprecate <code>destroy</code> clause on the <code>depobj</code> construct with no argument</td>
+    <td class="unsupported">No</td>
+    <td></td>
+  </tr>
 </tbody>
 </table>
 

Reply via email to