public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Tobias Burnus <tobias@codesourcery.com>
To: Jakub Jelinek <jakub@redhat.com>, gcc-patches <gcc-patches@gcc.gnu.org>
Subject: [Patch] libgomp.texi: OpenMP Impl Status 5.1 additions + TR11
Date: Fri, 25 Nov 2022 11:34:35 +0100	[thread overview]
Message-ID: <78217b1a-477e-912c-f5b0-884a298ddbf1@codesourcery.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 1163 bytes --]

Update libgomp.texi's OpenMP implementation status.
The 5.1 changes are taken from Jakub's comment at
https://gcc.gnu.org/pipermail/gcc-patches/2022-September/602639.html
(sorry for taking that long to incorporate those).

It also adds TR11. I don't think we will work any time soon
on TR11 – possibly except for clarifications.

OK for mainline?

Tobias

PS: Albeit sometimes there is a fine border between clarification and
larger new feature. For instance,
* implicitly declared reduction identifiers for arbitrary C++ classes - or
* how to handle implicit 'declare target' with declare variant and (no)host
   selectors.
(The TR11 wording implies that the former is an old feature, while the latter
is implied by the OpenMP 5.2 examples document, albeit an issue to clarify
this in TR12 exists. For the latter: https://gcc.gnu.org/PR106316 + OpenMP Spec Issue 3416.)
-----------------
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

[-- Attachment #2: tr11-libgomp.diff --]
[-- Type: text/x-patch, Size: 4764 bytes --]

libgomp.texi: OpenMP Impl Status 5.1 additions + TR11

libgomp/ChangeLog:

	* libgomp.texi (OpenMP Implementation Status): Add three 5.1 items
	and status for Technical Report (TR) 11.

 libgomp/libgomp.texi | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi
index 10fefa97922..584af45bd67 100644
--- a/libgomp/libgomp.texi
+++ b/libgomp/libgomp.texi
@@ -162,6 +162,7 @@ See also @ref{OpenMP Implementation Status}.
 * OpenMP 5.0:: Feature completion status to 5.0 specification
 * OpenMP 5.1:: Feature completion status to 5.1 specification
 * OpenMP 5.2:: Feature completion status to 5.2 specification
+* OpenMP Technical Report 11:: Feature completion status to first 6.0 preview
 @end menu
 
 The @code{_OPENMP} preprocessor macro and Fortran's @code{openmp_version}
@@ -350,6 +351,9 @@ The OpenMP 4.5 specification is fully supported.
 to address of matching mapped list item per 5.1, Sect. 2.21.7.2 @tab N @tab
 @item For Fortran, diagnose placing declarative before/between @code{USE},
       @code{IMPORT}, and @code{IMPLICIT} as invalid @tab N @tab
+@item Optional comma beween directive and clause in the @code{#pragma} form @tab Y @tab
+@item @code{indirect} clause in @code{declare target} @tab N @tab
+@item @code{device_type(nohost)}/@code{device_type(host)} for variables @tab N @tab
 @end multitable
 
 
@@ -425,6 +429,70 @@ to address of matching mapped list item per 5.1, Sect. 2.21.7.2 @tab N @tab
 @end multitable
 
 
+@node OpenMP Technical Report 11
+@section OpenMP Technical Report 11
+
+Technical Report (TR) 11 is the first preview for OpenMP 6.0.
+
+@unnumberedsubsec New features listed in Appendix B of the OpenMP specification
+@multitable @columnfractions .60 .10 .25
+@item Features deprecated in versions 5.2, 5.1 and 5.0 were removed
+      @tab N/A @tab Backward compatibility
+@item The @code{decl} attribute was added to the C++ attribute syntax
+      @tab N @tab
+@item @code{_ALL} suffix to the device-scope environment variables
+      @tab P @tab Host device number wrongly accepted
+@item For Fortran, @emph{locator list} can be also function reference with
+      data pointer result @tab N @tab
+@item Ref-count change for @code{use_device_ptr}/@code{use_device_addr}
+      @tab N @tab
+@item Implicit reduction identifiers of C++ classes
+      @tab N @tab
+@item Change of the @emph{map-type} property from @emph{ultimate} to
+      @emph{default} @tab N @tab
+@item Concept of @emph{assumed-size arrays} in C and C++
+      @tab N @tab
+@item Mapping of @emph{assumed-size arrays} in C, C++ and Fortran
+      @tab N @tab
+@item @code{groupprivate} directive @tab N @tab
+@item @code{local} clause to declare target directive @tab N @tab
+@item @code{part_size} allocator trait @tab N @tab
+@item @code{pin_device}, @code{preferred_device} and @code{target_access}
+      allocator traits
+      @tab N @tab
+@item @code{access} allocator trait changes @tab N @tab
+@item Extension of @code{interop} operation of @code{append_args}, allowing all
+      modifiers of the @code{init} clause
+@item @code{interop} clause to @code{dispatch} @tab N @tab
+@item @code{apply} code to loop-transforming constructs @tab N @tab
+@item @code{omp_curr_progress_width} identifier @tab N @tab
+@item @code{safesync} clause to the @code{parallel} construct @tab N @tab
+@item @code{omp_get_max_progress_width} runtime routine @tab N @tab
+@item @code{strict} modifier keyword to @code{num_threads}, @code{num_tasks}
+      and @code{grainsize} @tab N @tab
+@item @code{memscope} clause to @code{atomic} and @code{flush} @tab N @tab
+@item Routines for obtaining memory spaces/allocators for shared/device memory
+      @tab N @tab
+@item @code{omp_get_memspace_num_resources} routine @tab N @tab
+@item @code{omp_get_submemspace} routine @tab N @tab
+@item @code{ompt_get_buffer_limits} OMPT routine @tab N @tab
+@item Extension of @code{OMP_DEFAULT_DEVICE} and new
+      @code{OMP_AVAILABLE_DEVICES} environment vars @tab N @tab
+@item Supporting increments with abstract names in @code{OMP_PLACES} @tab N @tab
+@end multitable
+
+@unnumberedsubsec Other new TR 11 features
+@multitable @columnfractions .60 .10 .25
+@item Relaxed Fortran restrictions to the @code{aligned} clause @tab N @tab
+@item Mapping lambda captures @tab N @tab
+@item For Fortran, atomic compare with storing the comparison result
+      @tab N @tab
+@item @code{aligned} clause changes for @code{simd} and @code{declare simd}
+      @tab N @tab
+@end multitable
+
+
+
 @c ---------------------------------------------------------------------
 @c OpenMP Runtime Library Routines
 @c ---------------------------------------------------------------------

             reply	other threads:[~2022-11-25 10:34 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-25 10:34 Tobias Burnus [this message]
2022-11-25 10:38 ` Jakub Jelinek
2022-11-25 11:03   ` Tobias Burnus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=78217b1a-477e-912c-f5b0-884a298ddbf1@codesourcery.com \
    --to=tobias@codesourcery.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=jakub@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).