From: Tobias Burnus Date: Fri, 12 Dec 2025 21:06:42 +0000 (+0100) Subject: OpenMP: Small fortran/intrinsic.texi + libgomp.texi update X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=HEAD;p=thirdparty%2Fgcc.git OpenMP: Small fortran/intrinsic.texi + libgomp.texi update Some followup to the OpenMP 5.2 version bump - and marking some features as partially implemented: uses_allocators (only predefined allocators), 'declare mapper' (only C/C++, some but few loose ends), map iterator (C/C++ only - and several loose ends, most fixed by approved patches that still have to land after minor modifications). gcc/fortran/ChangeLog: * intrinsic.texi (OpenMP Modules OMP_LIB and OMP_LIB_KINDS): Link also to OpenMP 6.0, move 'partially supported' to the end of the list of OpenMP versions. Mark 'omp_lock_hint_...' and 'omp_atv_sequential' constants as deprecated. libgomp/ChangeLog: * libgomp.texi (OpenMP Implementation Status): Add missing '@tab'; claim initial partial support for 'declare mapper', 'uses_allocators', and map iterators. --- diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi index d510e0ce412..00902ed6587 100644 --- a/gcc/fortran/intrinsic.texi +++ b/gcc/fortran/intrinsic.texi @@ -16193,9 +16193,10 @@ with the following options: @code{-fno-unsafe-math-optimizations @table @asis @item @emph{Standard}: OpenMP Application Program Interface v4.5, -OpenMP Application Program Interface v5.0 (partially supported), -OpenMP Application Program Interface v5.1 (partially supported) and -OpenMP Application Program Interface v5.2 (partially supported). +OpenMP Application Program Interface v5.0, +OpenMP Application Program Interface v5.1, +OpenMP Application Program Interface v5.2, and +OpenMP Application Program Interface v6.0 (partially supported). @end table The OpenMP Fortran runtime library routines are provided both in @@ -16216,6 +16217,8 @@ OpenMP Application Program Interface v5.0}, OpenMP Application Program Interface v5.1} and @uref{https://www.openmp.org/wp-content/uploads/OpenMP-API-Specification-5-2.pdf, OpenMP Application Program Interface v5.2}. +@uref{https://www.openmp.org/wp-content/uploads/OpenMP-API-Specification-6-0.pdf, +OpenMP Application Program Interface v6.0}. @code{OMP_LIB_KINDS} provides the following scalar default-integer named constants: @@ -16280,11 +16283,11 @@ The following scalar integer named constants are of the kind @code{omp_lock_hint_kind}: @table @asis -@item @code{omp_lock_hint_none} -@item @code{omp_lock_hint_uncontended} -@item @code{omp_lock_hint_contended} -@item @code{omp_lock_hint_nonspeculative} -@item @code{omp_lock_hint_speculative} +@item @code{omp_lock_hint_none} (deprecated) +@item @code{omp_lock_hint_uncontended} (deprecated) +@item @code{omp_lock_hint_contended} (deprecated) +@item @code{omp_lock_hint_nonspeculative} (deprecated) +@item @code{omp_lock_hint_speculative} (deprecated) @item @code{omp_sync_hint_none} @item @code{omp_sync_hint_uncontended} @item @code{omp_sync_hint_contended} @@ -16325,7 +16328,7 @@ The following scalar integer named constants are of the kind @item @code{omp_atv_contended} @item @code{omp_atv_uncontended} @item @code{omp_atv_serialized} -@item @code{omp_atv_sequential} +@item @code{omp_atv_sequential} (deprecated) @item @code{omp_atv_private} @item @code{omp_atv_all} @item @code{omp_atv_thread} diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi index 82440e50565..aabab4533f0 100644 --- a/libgomp/libgomp.texi +++ b/libgomp/libgomp.texi @@ -261,7 +261,7 @@ The OpenMP 4.5 specification is fully supported. and allocatable components of variables @tab Y @tab @item @code{defaultmap} extensions @tab Y @tab -@item @code{declare mapper} directive @tab N @tab +@item @code{declare mapper} directive @tab P @tab Initial support and for C/C++, only @item @code{omp_get_supported_active_levels} routine @tab Y @tab @item Runtime routines and environment variables to display runtime thread affinity information @tab Y @tab @@ -289,7 +289,7 @@ The OpenMP 4.5 specification is fully supported. @headitem Description @tab Status @tab Comments @item OpenMP directive as C++ attribute specifiers @tab Y @tab @item @code{omp_all_memory} reserved locator @tab Y @tab -@item @emph{target_device trait} in OpenMP Context @tab Y +@item @emph{target_device trait} in OpenMP Context @tab Y @tab @item @code{target_device} selector set in context selectors @tab Y @tab @item C/C++'s delimited @code{declare variant} directive: support elision of preprocessed code and interpret enclosed function definitions @@ -312,7 +312,7 @@ The OpenMP 4.5 specification is fully supported. @item @code{thread_limit} clause to @code{target} construct @tab Y @tab @item @code{has_device_addr} clause to @code{target} construct @tab Y @tab @item Iterators in @code{target update} motion clauses and @code{map} - clauses @tab N @tab + clauses @tab P @tab Limited support for C/C++ @item Indirect calls to the device version of a procedure or function in @code{target} regions @tab Y @tab @item @code{interop} directive @tab Y @tab Cf. @ref{Offload-Target Specifics} @@ -417,7 +417,7 @@ to address of matching mapped list item per 5.1, Sect. 2.21.7.2 @tab N @tab allocatables/pointers @tab Y @tab @item Optional paired @code{end} directive with @code{dispatch} @tab Y @tab @item New @code{memspace} and @code{traits} modifiers for @code{uses_allocators} - @tab N @tab + @tab P @tab Only predefined allocators @item Deprecation of traits array following the allocator_handle expression in @code{uses_allocators} @tab Y @tab @item New @code{otherwise} clause as alias for @code{default} on metadirectives