https://github.com/CatherineMoore created 
https://github.com/llvm/llvm-project/pull/122174

This patch adds a section for OpenMP 6.0 features.

>From 47908c2aefc7009ccb62d4b9111fbd8d7e5ee7ad Mon Sep 17 00:00:00 2001
From: CatherineMoore <catmo...@amd.com>
Date: Wed, 8 Jan 2025 16:33:01 -0500
Subject: [PATCH] Update OpenMPSupport.rst

---
 clang/docs/OpenMPSupport.rst | 118 +++++++++++++++++++++++++++++++++++
 1 file changed, 118 insertions(+)

diff --git a/clang/docs/OpenMPSupport.rst b/clang/docs/OpenMPSupport.rst
index 481362dba3f51d..f6a408faabf62d 100644
--- a/clang/docs/OpenMPSupport.rst
+++ b/clang/docs/OpenMPSupport.rst
@@ -343,6 +343,124 @@ implementation.
 | task                         | nowait clause on taskwait                     
               | :part:`partial`          | parsing/sema done: D131830, D141531 
                                  |
 
+------------------------------+--------------------------------------------------------------+--------------------------+-----------------------------------------------------------------------+
 
+
+.. _OpenMP 6.0 implementation details:
+
+OpenMP 6.0 Implementation Details
+=================================
+
+The following table provides a quick overview over various OpenMP 5.0 features
+and their implementation status. Please post on the
+`Discourse forums (Runtimes - OpenMP category)`_ for more
+information or if you want to help with the
+implementation.
+
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+|Feature                                                      | C/C++ Status   
           |  Fortran Status           | Reviews                                
                                  |
++=============================================================+===========================+===========================+==========================================================================+
+| free-agent threads                                          | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Recording of task graphs                                    | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Parallel inductions                                         | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| init_complete for scan directive                            | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Loop transformation constructs                              | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| work distribute construct                                   | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| task_iteration                                              | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| memscope clause for atomic and flush                        | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| transparent clause (hull tasks)                             | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| rule-based compound directives                              | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| C23, C++23                                                  | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Fortran 2023                                                | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| decl attribute for declarative directives                   | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| C attribute syntax                                          | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| pure directives in DO CONCURRENT                            | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Optional argument for all clauses                           | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Function references for locator list items                  | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| All clauses accept directive name modifier                  | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Extensions to depobj construct                              | 
:none:`unclaimed          | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Extensions to atomic construct                              | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Private reductions                                          | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Self maps                                                   | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Release map type for declare mapper                         | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Extensions to interop construct                             | 
:none:`unclaimed          | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| no_openmp_constructs                                        | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| safe_sync and progress with identifier and API              | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| OpenMP directives in concurrent loop regions                | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| atomics constructs on concurrent loop regions               | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Loop construct with DO CONCURRENT                           | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| device_type clause for target construct                     | 
:none:`unclaimed          | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| nowait for ancestor target directives                       | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| New API for devices' num_teams/thread_limit                 | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Host and device environment variables                       | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| num_threads ICV and clause accepts list                     | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Numeric names for environment variables                     | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Increment between places for OMP_PLACES                     | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| OMP_AVAILABLE_DEVICES envirable                             | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Traits for default device envirable                         | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Optionally omit array length expression                      | 
:none:`unclaimed`        | :none:`unclaimed`         |                          
                                                |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Canonical loop sequences                                    | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Clarifications to Fortran map semantics                     | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| default clause at target construct                          | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| ref count update use_device_{ptr, addr}                     | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Clarifications to implicit reductions                       | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| ref modifier for map clauses                                | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| map-type modifiers in arbitrary position                    | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| atomic constructs in loop region                            | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Lift nesting restriction on concurrent loop                 | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| priority clause for target constructs                       | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| changes to target_data construct                            | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+| Non-const do_not_sync for nowait/nogroup                    | 
:none:`unclaimed`         | :none:`unclaimed`         |                         
                                                 |
++-------------------------------------------------------------+---------------------------+---------------------------+--------------------------------------------------------------------------+
+
 OpenMP Extensions
 =================
 

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to