Skip to content

Commit d699fbd

Browse files
authored
[OpenACC][Docs] Add a release note for Clang 21 (#145938)
This patch adds a release note that explains the current status of OpenACC in Clang. Currently we cannot actually make an executable because the OpenACC dialect of MLIR doesn't support any amount of lowering to LLVM-IR, so the usefulness of OpenACC is entirely for front-end related uses, such as tooling or semantic checking.
1 parent 5d03e7a commit d699fbd

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

clang/docs/ReleaseNotes.rst

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1068,10 +1068,22 @@ Static Analyzer
10681068
New features
10691069
^^^^^^^^^^^^
10701070

1071-
A new flag - `-static-libclosure` was introduced to support statically linking
1072-
the runtime for the Blocks extension on Windows. This flag currently only
1073-
changes the code generation, and even then, only on Windows. This does not
1074-
impact the linker behaviour like the other `-static-*` flags.
1071+
- A new flag - `-static-libclosure` was introduced to support statically linking
1072+
the runtime for the Blocks extension on Windows. This flag currently only
1073+
changes the code generation, and even then, only on Windows. This does not
1074+
impact the linker behaviour like the other `-static-*` flags.
1075+
- OpenACC support, enabled via `-fopenacc` has reached a level of completeness
1076+
to finally be at least notionally usable. Currently, the OpenACC 3.4
1077+
specification has been completely implemented for Sema and AST creation, so
1078+
nodes will show up in the AST after having been properly checked. Lowering is
1079+
currently a work in progress, with compute, loop, and combined constructs
1080+
partially implemented, plus a handful of data and executable constructs
1081+
implemented. Lowering will only work in Clang-IR mode (so only with a compiler
1082+
built with Clang-IR enabled, and with `-fclangir` used on the command line).
1083+
However, note that the Clang-IR implementation status is also quite partial,
1084+
so frequent 'not yet implemented' diagnostics should be expected. Also, the
1085+
ACC MLIR dialect does not currently implement any lowering to LLVM-IR, so no
1086+
code generation is possible for OpenACC.
10751087

10761088
Crash and bug fixes
10771089
^^^^^^^^^^^^^^^^^^^

0 commit comments

Comments
 (0)