[wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update

Message ID af156f0b-738c-4820-b119-363ad50ddfdf@baylibre.com
State Unresolved
Headers
Series [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update |

Checks

Context Check Description
snail/gcc-patch-check warning Git am fail log

Commit Message

Tobias Burnus Feb. 27, 2024, 7:16 p.m. UTC
  Minor update for older and more recent changes.

Comments?

Tobias
  

Comments

Gerald Pfeifer Feb. 27, 2024, 9:52 p.m. UTC | #1
On Tue, 27 Feb 2024, Tobias Burnus wrote:
> Minor update for older and more recent changes.

>       supported for stack variables in C and Fortran, including the OpenMP 5.1
> -      <code>align</code> modifier. For Fortran, OpenMP allocators can now be
> +      <code>align</code> modifier. In C and C++, the <code>map</code> clause now
> +      accepts lvalue expressions. For Fortran, OpenMP allocators can now be

I would omit the comma after "C and C++".

+      <code>acc_memcpy_to_device_async</code>,
+      <code>acc_memcyp_from_device</code> and
+      <code>acc_memcyp_from_device_async</code>.

Oxford comma (i.e., comma before "and")?

Looks good to me (with or without my recommendations).

Thanks,
Gerald
  
Bernhard Reutner-Fischer Feb. 28, 2024, 8:31 a.m. UTC | #2
On Tue, 27 Feb 2024 at 20:17, Tobias Burnus <tburnus@baylibre.com> wrote:
>
> Minor update for older and more recent changes.
>
> Comments?

Nit:

+    <li>OpenACC 3.2: The following API routines are now available in
+      Fortran using the <code>openacc</code> module or the
+      <code>open_lib.h</code> header file: <code>acc_alloc</code>,

s/open_lib.h/openacc_lib.h/

thanks
  

Patch

gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update

Update OpenMP for two meanwhile implemented features (lvalue-expr in map,
indirect now also in Fortran).
Update OpenACC for one new feature (Fortran interface to exisiting
C/C++ routines).

diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html
index 85ccc54d..1c2059b6 100644
--- a/htdocs/gcc-14/changes.html
+++ b/htdocs/gcc-14/changes.html
@@ -79,7 +79,8 @@  a work-in-progress.</p>
     </li>
     <li>OpenMP 5.0: The <code>allocate</code> directive is now
       supported for stack variables in C and Fortran, including the OpenMP 5.1
-      <code>align</code> modifier. For Fortran, OpenMP allocators can now be
+      <code>align</code> modifier. In C and C++, the <code>map</code> clause now
+      accepts lvalue expressions. For Fortran, OpenMP allocators can now be
       used for allocatables and pointers using the <code>allocate</code>
       directive and its OpenMP 5.2 replacement, the <code>allocators</code>
       directive; files using this allocator and all files that might directly
@@ -91,8 +92,8 @@  a work-in-progress.</p>
     <li>
       OpenMP 5.1: Support was added for collapsing imperfectly nested loops and
       using <code>present</code> as map-type modifier and in
-      <code>defaultmap</code>. The <code>indirect</code> clause is now supported
-      for C and C++.  The performance of copying strided data from or to nvptx
+      <code>defaultmap</code>. The <code>indirect</code> clause is now
+      supported. The performance of copying strided data from or to nvptx
       and AMD GPU devices using the OpenMP 5.1 routine
       <code>omp_target_memcpy_rect</code> has been improved.
     </li>
@@ -117,6 +118,14 @@  a work-in-progress.</p>
     <li>OpenACC 2.7: The <code>self</code> clause was added to be used on
       compute constructs and the <code>default</code> clause for data
       constructs.</li>
+    <li>OpenACC 3.2: The following API routines are now available in
+      Fortran using the <code>openacc</code> module or the
+      <code>open_lib.h</code> header file: <code>acc_alloc</code>,
+      <code>acc_free</code>, <code>acc_hostptr</code>,
+      <code>acc_deviceptr</code>, <code>acc_memcpy_to_device</code>,
+      <code>acc_memcpy_to_device_async</code>,
+      <code>acc_memcyp_from_device</code> and
+      <code>acc_memcyp_from_device_async</code>.
   </ul>
   </li>
   <li>For offload-device code generated via OpenMP and OpenACC, the math
diff --git a/htdocs/projects/gomp/index.html b/htdocs/projects/gomp/index.html
index bf20bb88..8fdfb95a 100644
--- a/htdocs/projects/gomp/index.html
+++ b/htdocs/projects/gomp/index.html
@@ -489,7 +489,7 @@  than listed, depending on resolved corner cases and optimizations.</p>
   </tr>
   <tr>
     <td>C/C++'s lvalue expressions in <code>to</code>, <code>from</code> and <code>map</code> clauses</td>
-    <td class="unsupported">No</td>
+    <td class="supported"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
     <td></td>
   </tr>
   <tr>
@@ -714,8 +714,8 @@  than listed, depending on resolved corner cases and optimizations.</p>
   </tr>
   <tr>
     <td>Indirect calls to the device version of a procedure or function in target regions</td>
-    <td class="partial"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
-    <td>Only C and C++</td>
+    <td class="supported"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
+    <td></td>
   </tr>
   <tr>
     <td><code>interop</code> directive</td>
@@ -756,8 +756,8 @@  than listed, depending on resolved corner cases and optimizations.</p>
   </tr>
   <tr>
     <td><code>indirect</code> clause in <code>declare target</code></td>
-    <td class="partial"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
-    <td>Only C and C++</td>
+    <td class="supported"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
+    <td></td>
   </tr>
   <tr>
     <td><code>device_type(nohost)</code>/<code>device_type(host)</code> for variables</td>