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 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 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>