Hi Jakub & Gerald,

first, thanks for all the suggestions!

I have now followed Gerald's suggestion to place the table into the main
GOMP page.

I then also decided to make it more GCC-user orientated than
GCC-developer orientated by re-writing the intro (but keeping the old
one as background), also referencing  OpenACC, mentioning the
command-line arguments to use + adding a bunch of GCC links to have
everything together.

Thoughts on this part?

I also added the first OpenMP entry to gcc-13/changes.html, which also
links to the GOMP page. (I expect more mainline commits in the near
feature, but I want to have a stub there. I think the next update could
be done in a month or two – once more items have accumulated.)

And I tried to incorporate all suggested changes. Regarding:

On 17.05.22 10:21, Jakub Jelinek wrote:
+<p>Features added by OpenMP version</p>
+<ul>
+  <li><a href="#omp4.5">OpenMP 4.5</a></li>
...
I think we should have also 2.5, 3.0, 3.1 and 4.0 entries in the above list,
with similar style as the OpenMP 4.5 entry.
...
Though, maybe a table form for the 2.5-4.5 versions would be more consistent
with the rest,

Partially because I am lazy and partially because I think a table with
those entries looks odd, I went for the bullet style.

+<tr><td>Map-order clarifications</td><td>GCC?</td><td></td></tr>
This entry I gave up on, it isn't exactly clear to me what that
bullet is about and once we figure that out, we need to do some archeology
on whether we support it at all and if yes, since which commit and thus
since which GCC version.
I concur – but the question is how to handle it now? Leave it and
correct it later? Comment/remove it?

Can you check whether you now like the bullet points? If so, I will
update the .texi to match.

Tobias
-----------------
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
 Add OpenMP by-GCC-version implementation status

 * htdocs/projects/gomp/index.html: Add by-GCC-version implementation
 status; add new intro, add links and crossrefs.
 * htdocs/projects/gomp/index.html: Link it.
 * htdocs/gcc-13/changes.html: Likewise; document first new features.

 htdocs/gcc-13/changes.html      |  12 ++
 htdocs/projects/gomp/index.html | 303 ++++++++++++++++++++++++++++++++++++++--
 htdocs/projects/index.html      |   1 +
 3 files changed, 302 insertions(+), 14 deletions(-)

diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html
index f21b546b..d62030d2 100644
--- a/htdocs/gcc-13/changes.html
+++ b/htdocs/gcc-13/changes.html
@@ -37,6 +37,18 @@ a work-in-progress.</p>
 <!-- .................................................................. -->
 <h2 id="general">General Improvements</h2>
 
+<ul>
+  <li><a href="https://gcc.gnu.org/projects/gomp/";>OpenMP</a>
+  <ul>
+    <li>The following OpenMP 5.1 features have been added: the
+    <code>omp_all_memory</code> reserved locator and the
+    <code>omp_target_is_accessible</code> and <code>omp_get_mapped_ptr</code>
+    API routines.</li>
+  </ul>
+  </li>
+</ul>
+
+
 <!-- .................................................................. -->
 <h2 id="languages">New Languages and Language specific improvements</h2>
 
diff --git a/htdocs/projects/gomp/index.html b/htdocs/projects/gomp/index.html
index 59697c10..32345c8e 100644
--- a/htdocs/projects/gomp/index.html
+++ b/htdocs/projects/gomp/index.html
@@ -3,13 +3,84 @@
 
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>GOMP &mdash; An OpenMP implementation for GCC</title>
+<title>GNU Offloading and Multi-Processing Project (GOMP)</title>
 <link rel="stylesheet" type="text/css" href="https://gcc.gnu.org/gcc.css"; />
 </head>
 
 <body>
 
-<h1>Welcome to the home of GOMP</h1>
+<h1>GNU Offloading and Multi-Processing Project (GOMP)</h1>
+
+<p>The GOMP project consists of implementation of OpenMP and OpenACC to
+permit annotating the source code to permit running it concurrently with
+thread parallelization and on offloading devices (<q>accelerators</q> such
+as GPUs), including the associated run-time library and API routines. Both
+OpenMP and OpenACC are supported with GCC's C, C++ and Fortran compilers.</p>
+
+<h2>Content</h2>
+<ul>
+  <li><a href="#usage">Usage</a></li>
+  <li><a href="#history_and_goal">History and Project Goal</a></li>
+  <li><a href="#contributing">Contributing</a></li>
+  <li><a href="#bugs">Reporting Bugs</a></li>
+  <li><a href="#implementation-status">OpenMP Implementation Status</a>:
+  <a href="#omp2.5">2.5</a> · <a href="#omp3.0">5.0</a> ·
+  <a href="#omp3.1">3.1</a> · <a href="#omp4.0">4.0</a> ·
+  <a href="#omp4.5">4.5</a> · <a href="#omp5.0">5.0</a> ·
+  <a href="#omp5.1">5.1</a> · <a href="#omp5.2">5.2</a></li>
+  <li><a href="#omp-status">OpenMP Releases and Status</a></li>
+</ul>
+
+<h2 id="usage">Usage</h2>
+<ul>
+  <li>To enable <strong><a href="https://www.openmp.org";>OpenMP</a></strong>,
+  use <a
+  href="https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html#index-fopenmp";
+  ><code>-fopenmp</code></a>; <code>-fopenmp-simd</code> can be used
+  to enable only the SIMD vectorization and loop-transformation constructs
+  without creating multiple threads, offloading code or adding library
+  dependency.</li>
+  <li>To enable <strong><a href="https://www.openacc.org";>OpenACC</a></strong>,
+  use <a
+  href="https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html#index-fopenacc";
+  ><code>-fopenacc</code></a>.</li>
+  <li>If either is enabled, offloading is automatically generated for all
+  offload-device types for which the compiler has been configured. Use <a
+  href="https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html#index-foffload";
+  ><code>-foffload=</code></a> to disable or specify the offload-devices to be
+  used. Use <a
+  href="https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html#index-foffload-options";
+  ><code>-foffload-options=</code></a> to pass device-specific compiler and
+  linker flags.</li>
+</ul>
+
+<p>Diagnostics</p>
+<ul>
+  <li>The <a
+  href="https://gcc.gnu.org/onlinedocs/gcc/Developer-Options.html#index-fopt-info";
+  ><code>-fopt-info</code></a> flag provides details about compile-time performed
+  optimizations.</li>
+  <li>Environment variables can be used to influence run-time behavior and output
+  more data, useful for debugging or performance tuning. See the <a
+  href="https://gcc.gnu.org/onlinedocs/libgomp/";>GNU libgomp</a> manual for
+  details.</li>
+</ul>
+
+<p>Documentation</p>
+<ul>
+  <li><a href="https://gcc.gnu.org/onlinedocs/libgomp/";>GNU libgomp</a> manual
+  for API routines, environment variables and implementation details.</li>
+  <li><a href="https://www.openmp.org/specifications/";>OpenMP specification</a>,
+  including OpenMP API examples documents, reference cards and additional
+  definitions specification.</li>
+  <li><a href="https://www.openacc.org/specification";>OpenACC</a>
+  specification.</li>
+  <li>Related GCC wiki pages: <a href="https://gcc.gnu.org/wiki/openmp";
+  >openmp</a>, <a href="https://gcc.gnu.org/wiki/OpenACC";>OpenACC</a>,
+  <a href="https://gcc.gnu.org/wiki/Offloading";>Offloading</a>.</li>
+</ul>
+
+<h2 id="history_and_goal">History and Project Goal</h2>
 
 <p>The GOMP project has developed an implementation of
 <a href="https://www.openmp.org";>OpenMP</a>
@@ -39,10 +110,9 @@ efficient parallel code.</p>
 <p>OpenMP additionally permits to offload computations on
 accelerators such as <abbr title="Graphical Processing Units">GPUs</abbr>,
 making use of their highly parallel computation support; if
-no accelarator is available, as fallback, the computation is
+no accelerator is available, as fallback, the computation is
 then done on the host.</p>
 
-<h2>Project goal</h2>
 <p>To remain relevant, free software development tools must
 support emerging technologies. By implementing OpenMP, GOMP
 provides a simplified syntax tools for creating software targeted
@@ -54,20 +124,225 @@ projects.</p>
 extensions to target language parsers.  A long-term goal is
 the generation of efficient and small code for OpenMP applications.</p>
 
-<h2>Contributing</h2>
+<p>When support for OpenACC was added, the project name <q>GOMP</q>
+was reinterpreted as <q>GNU Offloading and Multi-Processing</q> instead
+of denoting <q>GNU OpenMP</q>.
+
+<h2 id="contributing">Contributing</h2>
 <p>We encourage everyone to
 <a href="../../contribute.html">contribute changes</a>
 and help test GOMP.  GOMP has been merged into mainline GCC.</p>
 
-<h2>Reporting Bugs</h2>
-<p>Please add "openmp" to the keywords field when filing a bug report.</p>
-
-<h2>Documentation</h2>
-<p>libgomp, the GOMP support library, has
-<a href="https://gcc.gnu.org/onlinedocs/libgomp/";>online documentation</a>
-available.</p>
-
-<h2>Status</h2>
+<h2 id="bugs">Reporting Bugs</h2>
+<p>Please add <q>openmp</q> or <q>openacc</q> to the keywords field when
+filing a <a href="https://gcc.gnu.org/bugzilla/";>bug report</a>.</p>
+
+<h2 id="implementation-status">OpenMP Implementation Status</h2>
+
+<p>Implementation status in libgomp manual:
+<a href="https://gcc.gnu.org/onlinedocs/libgomp/OpenMP-Implementation-Status.html";
+>Mainline (GCC 13)</a>,
+<a href="https://gcc.gnu.org/onlinedocs/gcc-12.1.0/libgomp/OpenMP-Implementation-Status.html";
+>GCC 12</a>.</p>
+
+<p>Disclaimer: A feature might be only fully supported in a later GCC version
+than listed, depending on resolved corner cases and optimizations.</p>
+
+
+
+<h3 id="omp2.5">OpenMP 2.5</h3>
+<ul>
+  <li>Supported since GCC 4.2</li>
+</ul>
+
+<h3 id="omp3.0">OpenMP 3.0</h3>
+<ul>
+  <li>Supported since GCC 4.4</li>
+</ul>
+
+<h3 id="omp3.1">OpenMP 3.1</h3>
+<ul>
+  <li>Supported since GCC 4.7</li>
+</ul>
+
+<h3 id="omp4.0">OpenMP 4.0</h3>
+<ul>
+  <li><strong>C/C++:</strong> Supported since GCC 4.9</li>
+  <li><strong>Fortran:</strong> Supported since GCC 4.9.1</li>
+</ul>
+
+<h3 id="omp4.5">OpenMP 4.5</h3>
+<ul>
+  <li><strong>C/C++:</strong> Supported since GCC 6</li>
+  <li><strong>Fortran:</strong> Partial support since GCC 7, full support since GCC 11</li>
+</ul>
+
+
+<h3 id="omp5.0">OpenMP 5.0</h3>
+
+<table>
+<thead>
+<tr><th>Feature</th><th>GCC Version</th><th>Comments</th></tr>
+</thead>
+<tbody>
+<tr><td><code>in_reduction</code> clause on task constructs</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td>Supporting C++'s range-based for loop</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td>Iterators</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td>!= as relational-op in canonical loop form for C/C++</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td>C/C++'s lvalue expressions in <code>depend</code> clauses</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>mutexinoutset</code> <em>dependence-type</em> for <code>depend</code> clause</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>depobj</code> construct and depend objects </td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>depend</code> clause on <code>taskwait</code></td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>teams</code> construct outside an enclosing target region</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td>Clauses <code>if</code>, <code>nontemporal</code> and <code>order(concurrent)</code> in <code>simd</code> construct</td><td>GCC&nbsp;9/GCC&nbsp;10</td><td></td></tr>
+<tr><td><code>defaultmap</code> extensions</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>hint</code> clause on the <code>atomic</code> construct</td><td>GCC&nbsp;9</td><td>Stub only</td></tr>
+<tr><td>Weak memory ordering clauses on <code>atomic</code> and <code>flush</code> construct</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td>Combined master constructs</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td>Runtime routines and environment variables to display runtimethread affinity information</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>omp_pause_resource</code> and <code>omp_pause_resource_all</code> runtime routines</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>nonmonotonic</code> as default loop schedule modifier for worksharing-loop constructs</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>atomic</code> constructs in <code>simd</code></td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>task_reduction</code> clause with <code>taskgroup</code></td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>task</code> modifier to <code>reduction</code> clause</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>reduction</code> and <code>in_reduction</code> clauses on <code>taskloop</code> and <code>taskloop simd</code> constructs</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>taskloop</code> construct cancelable by <code>cancel</code> construct</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td>Lock hints were renamed to synchronization hints</td><td>GCC&nbsp;9</td><td></td></tr>
+<tr><td><code>requires</code> directive</td><td>GCC&nbsp;9<br>GCC&nbsp;12<br>&ndash;</td><td>(<code>atomic_default_mem_order</code>)<br>(<code>dynamic_allocators</code>)<br>rest parsing only</td></tr>
+<tr><td><code>conditional</code> modifier to <code>lastprivate</code> clause</td><td>GCC&nbsp;10</td><td></td></tr>
+<tr><td><code>scan</code> directive and <code>in_scan</code> modifier for the <code>reduction clause</code></td><td>GCC&nbsp;10</td><td></td></tr>
+<tr><td><code>order(concurrent)</code> clause</td><td>GCC&nbsp;10</td><td></td></tr>
+<tr><td><code>loop</code> construct</td><td>GCC&nbsp;10</td><td></td></tr>
+<tr><td><code>declare variant</code> directive</td><td>GCC&nbsp;10/GCC&nbsp;11</td><td><em>simd</em> traits not handled correctly</td></tr>
+<tr><td><code>use_device_addr</code> clause on <code>target data</code></td><td>GCC&nbsp;10</td><td></td></tr>
+<tr><td>Nested <code>declare target</code> directive</td><td>GCC&nbsp;10</td><td></td></tr>
+<tr><td><code>allocate</code> clause</td><td>GCC&nbsp;11</td><td>Initial support</td></tr>
+<tr><td><em>target-offload-var</em> ICV and <code>OMP_TARGET_OFFLOAD</code> env variable</td><td>GCC&nbsp;11</td><td></td></tr>
+<tr><td>Predefined memory spaces, memory allocators, allocator traits</td><td>GCC&nbsp;11</td><td>Some are only stubs</td></tr>
+<tr><td>Non-rectangular loop nests</td><td>GCC&nbsp;11</td><td>Only C/C++</td></tr>
+<tr><td>Nested-parallel changes to <em>max-active-levels-var</em> ICV</td><td>GCC&nbsp;11</td><td></td></tr>
+<tr><td><code>detach</code> clause to <code>task</code> construct</td><td>GCC&nbsp;11</td><td></td></tr>
+<tr><td><code>omp_fulfill_event</code> runtime routine</td><td>GCC&nbsp;11</td><td></td></tr>
+<tr><td>Memory management routines</td><td>GCC&nbsp;11</td><td></td></tr>
+<tr><td>Implicit <code>declare target</code> directive</td><td>GCC&nbsp;11</td><td></td></tr>
+<tr><td><code>omp_get_supported_active_levels</code> routine</td><td>GCC&nbsp;11</td><td></td></tr>
+<tr><td><code>in_reduction</code> clause on <code>target</code> constructs</td><td>GCC&nbsp;12</td><td><code>nowait</code> only stub</td></tr>
+<tr><td><code>affinity</code> clause to <code>task</code> construct</td><td>GCC&nbsp;12</td><td>Stub only</td></tr>
+<tr><td><code>close</code> <em>map-type-modifier</em></td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>omp_get_device_num</code> runtime routine</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>ancestor</code> modifier on <code>device</code> clause</td><td>GCC&nbsp;12</td><td>Reverse offload unsupported</td></tr>
+<tr><td>Mapping C/C++ pointer variables and to assign the address of device memory mapped by an array section</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td>Mapping of Fortran pointer and allocatable variables, including pointer and allocatable components of variables</td><td>GCC&nbsp;12</td><td>Mapping of vars with allocatable components unsupported</td></tr>
+<tr><td>Map-order clarifications</td><td>GCC?</td><td></td></tr>
+<tr><td>Array shaping</td><td>N</td><td></td></tr>
+<tr><td>Array sections with non-unit strides in C and C++</td><td>N</td><td></td></tr>
+<tr><td><code>metadirective</code> directive</td><td>N</td><td></td></tr>
+<tr><td>Collapse of associated loops that are imperfectly nested loops</td><td>N</td><td></td></tr>
+<tr><td><code>allocate</code> directive</td><td>N</td><td></td></tr>
+<tr><td>Discontiguous array section with <code>target update</code> construct</td><td>N</td><td></td></tr>
+<tr><td>C/C++'s lvalue expressions in <code>to</code>, <code>from</code> and <code>map</code> clauses</td><td>N</td><td></td></tr>
+<tr><td><code>declare mapper</code> directive</td><td>N</td><td></td></tr>
+<tr><td>OMPT interface</td><td>N</td><td></td></tr>
+<tr><td>OMPD interface</td><td>N</td><td></td></tr>
+</tbody>
+</table>
+
+
+<h3 id="omp5.1">OpenMP 5.1</h3>
+
+<table>
+<thead>
+<tr><th>Feature</th><th>GCC Version</th><th>Comments</th></tr>
+</thead>
+<tbody>
+<tr><td>OpenMP directive as C++ attribute specifiers</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>nothing</code> directive</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>error</code> directive</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>masked</code> construct</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>scope</code> directive</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>strict</code> modifier in the <code>grainsize</code> and <code>num_tasks</code> clauses of the <code>taskloop</code> construct</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>align</code> clause/modifier in <code>allocate</code> directive/clause and <code>allocator</code> directive</td><td>GCC&nbsp;12</td><td>C/C++ on clause only</td></tr>
+<tr><td><code>thread_limit</code> clause to <code>target</code> construct</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>has_device_addr</code> clause to <code>target construct</code></td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td>Extensions to the <code>atomic</code> directive</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>seq_cst</code> clause on a <code>flush construct</code></td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>private</code> and <code>firstprivate</code> argument to <code>default</code> clause in C and C++</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>omp_set_num_teams</code>, <code>omp_set_teams_thread_limit</code>, <code>omp_get_max_teams</code>, <code>omp_get_teams_thread_limit</code> runtime routines</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>omp_calloc</code>, <code>omp_realloc</code>, <code>omp_aligned_alloc</code>, and <code>omp_aligned_callocruntime</code> routines</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>omp_alloctrait_key_t</code> enum: <code>omp_atv_serialized</code> added, <code>omp_atv_default</code> changed</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>omp_display_env</code> runtime routine</td><td>GCC&nbsp;12</td><td>Not inside target regions</td></tr>
+<tr><td><code>OMP_PLACES</code> syntax extensions</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>OMP_NUM_TEAMS</code> and <code>OMP_TEAMS_THREAD_LIMIT</code> env variables</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td>Support of strictly structured blocks in Fortran</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td>Support of structured block sequences in C/C++</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>unconstrained</code> and <code>reproducible</code> modifiers on <code>order</code> clause</td><td>GCC&nbsp;12</td><td></td></tr>
+<tr><td><code>omp_target_is_accessible</code> runtime routine</td><td>GCC&nbsp;13</td><td></td></tr>
+<tr><td><code>omp_get_mapped_ptr</code> runtime routine</td><td>GCC&nbsp;13</td><td></td></tr>
+<tr><td><code>omp_all_memory</code> reserved locator</td><td>GCC&nbsp;13</td><td></td></tr>
+<tr><td><em>target_device trait</em> in OpenMP Context</td><td>N</td><td></td></tr>
+<tr><td><code>target_device</code> selector set in context selectors</td><td>N</td><td></td></tr>
+<tr><td>C/C++'s <code>declare variant</code> directive: elision support of preprocessed code</td><td>N</td><td></td></tr>
+<tr><td><code>declare variant</code>: new clauses <code>adjust_args</code> and <code>append_args</code></td><td>N</td><td></td></tr>
+<tr><td><code>dispatch</code> construct</td><td>N</td><td></td></tr>
+<tr><td>device-specific ICV settings the environment variables</td><td>N</td><td></td></tr>
+<tr><td>assume directive</td><td>N</td><td></td></tr>
+<tr><td>Loop transformation constructs</td><td>N</td><td></td></tr>
+<tr><td>iterators in <code>target update</code> motion clauses and map clauses</td><td>N</td><td></td></tr>
+<tr><td>indirect calls to the device version of a procedure or function in target regions</td><td>N</td><td></td></tr>
+<tr><td><code>interop</code> directive</td><td>N</td><td></td></tr>
+<tr><td><code>omp_interop_t</code> object support in runtime routines</td><td>N</td><td></td></tr>
+<tr><td><code>nowait</code> clause in <code>taskwait</code> directive</td><td>N</td><td></td></tr>
+<tr><td><code>inoutset</code> argument to the <code>depend</code> clause</td><td>N</td><td></td></tr>
+<tr><td><code>present</code> argument to <code>defaultmap</code> clause</td><td>N</td><td></td></tr>
+<tr><td><code>omp_target_memcpy_async</code> and <code>omp_target_memcpy_rect_async</code> runtime routines</td><td>N</td><td></td></tr>
+<tr><td><code>ompt_scope_endpoint_t</code> enum: <code>ompt_scope_beginend</code></td><td>N</td><td></td></tr>
+<tr><td><code>ompt_sync_region_t</code> enum additions</td><td>N</td><td></td></tr>
+<tr><td><code>ompt_state_t</code> enum: <code>ompt_state_wait_barrier_implementation</code> and <code>ompt_state_wait_barrier_teams</code></td><td>N</td><td></td></tr>
+<tr><td><code>ompt_callback_target_data_op_emi_t</code>, <code>ompt_callback_target_emi_t</code>, <code>ompt_callback_target_map_emi_t</code> and <code>ompt_callback_target_submit_emi_t</code></td><td>N</td><td></td></tr>
+<tr><td><code>ompt_callback_error_t</code> type</td><td>N</td><td></td></tr>
+</tbody>
+</table>
+
+
+<h3 id="omp5.2">OpenMP 5.2</h3>
+
+<table>
+<thead>
+<tr><th>Feature</th><th>GCC Version</th><th>Comments</th></tr>
+</thead>
+<tbody>
+<tr><td><code>omp_in_explicit_task</code> routine and <em>implicit-task-var</em> ICV</td><td>N</td><td></td></tr>
+<tr><td><code>omp</code>/<code>ompx</code>/<code>omx</code> sentinels and <code>omp_</code>/<code>ompx_</code> namespaces</td><td>N/A</td><td></td></tr>
+<tr><td>Clauses on <code>end</code> directive can be on directive</td><td>N</td><td></td></tr>
+<tr><td>Deprecation of no-argument <code>destroy</code> clause on <code>depobj</code></td><td>N</td><td></td></tr>
+<tr><td><code>linear</code> clause syntax changes and <code>step</code> modifier</td><td>N</td><td></td></tr>
+<tr><td>Deprecation of minus operator for reductions</td><td>N</td><td></td></tr>
+<tr><td>Deprecation of separating <code>map</code> modifiers without comma</td><td>N</td><td></td></tr>
+<tr><td><code>declare mapper</code> with iterator and <code>present</code> modifiers</td><td>N</td><td></td></tr>
+<tr><td>If a matching mapped list item is not found in the data environment, the pointer retains its original value</td><td>N</td><td></td></tr>
+<tr><td>New <code>enter</code> clause as alias for <code>to</code> on declare target directive</td><td>N</td><td></td></tr>
+<tr><td>Deprecation of <code>to</code> clause on declare target directive</td><td>N</td><td></td></tr>
+<tr><td>Extended list of directives permitted in Fortran pure procedures</td><td>N</td><td></td></tr>
+<tr><td>New <code>allocators</code> directive for Fortran</td><td>N</td><td></td></tr>
+<tr><td>Deprecation of <code>allocator</code> directive for Fortran allocatables/pointers</td><td>N</td><td></td></tr>
+<tr><td>Optional paired <code>end</code> directive with <code>dispatch</code></td><td>N</td><td></td></tr>
+<tr><td>New <code>memspace</code> and <code>traits</code> modifiers for <code>uses_allocators</code></td><td>N</td><td></td></tr>
+<tr><td>Deprecation of traits array following the allocator_handle expression in <code>uses_allocators</code></td><td>N</td><td></td></tr>
+<tr><td>New <code>otherwise</code> clause as alias for <code>default</code> on metadirectives</td><td>N</td><td></td></tr>
+<tr><td>Deprecation of <code>default</code> clause on metadirectives</td><td>N</td><td></td></tr>
+<tr><td>Deprecation of delimited form of <code>declare target</code></td><td>N</td><td></td></tr>
+<tr><td>Reproducible semantics changed for <code>order(concurrent)</code></td><td>N</td><td></td></tr>
+<tr><td><code>allocate</code> and <code>firstprivate</code> clauses on <code>scope</code></td><td>N</td><td></td></tr>
+<tr><td><code>ompt_callback_work</code></td><td>N</td><td></td></tr>
+<tr><td>Default map type for <code>map</code> clause in <code>target enter/exit data</code></td><td>N</td><td></td></tr>
+<tr><td>New <code>doacross</code> clause as alias for <code>depend</code> with <code>source</code>/<code>sink</code> modifier</td><td>N</td><td></td></tr>
+<tr><td>Deprecation of <code>depend</code> with <code>source</code>/<code>sink</code> modifier</td><td>N</td><td></td></tr>
+<tr><td><code>omp_cur_iteration</code> keyword</td><td>N</td><td></td></tr>
+</tbody>
+</table>
+
+
+<h2 id="omp-status">OpenMP Releases and Status</h2>
 <dl>
 <dt><b>November 9, 2021</b></dt>
 <dd><p><a href="https://www.openmp.org/wp-content/uploads/OpenMP-API-Specification-5-2.pdf";>OpenMP
diff --git a/htdocs/projects/index.html b/htdocs/projects/index.html
index 0647ed6b..dc502ed0 100644
--- a/htdocs/projects/index.html
+++ b/htdocs/projects/index.html
@@ -30,6 +30,7 @@ help develop GCC:</p>
 <li><a href="cpplib.html">Projects for the C preprocessor.</a></li>
 <li><a href="c-frontend.html">Projects for improving the C front end.</a></li>
 <li><a href="cxx-status.html">Implementing new C++ features.</a></li>
+<li><a href="gomp/">Implementing missing OpenMP features.</a></li>
 <li><a href="gupc.html">The GNU UPC Project.</a></li>
 <li><a href="#improve_the_installation_procedure">Improve the installation procedure</a></li>
 <li><a href="#simpler_porting">Simpler porting</a></li>

Reply via email to