[flang] [llvm] [flang][OpenMP] Overhaul implementation of ATOMIC construct (PR #137852)

Krzysztof Parzyszek via llvm-commits llvm-commits at lists.llvm.org
Thu May 15 06:12:47 PDT 2025


kparzysz wrote:

Primary changes:
1. Replace individual AST nodes with one that corresponds to "atomic construct".  Treat "read", "capture", etc. as clauses in the same way as clauses are treated in other constructs (i.e. as "parameters").
2. Parse as much as possible, including a variety of invalid sources.  The goal is to delay diagnostics from parser to the semantic analysis.
3. Perform detailed analysis in semantic checks, and store the results in the AST via a mutable member (similarly to how "typedExpr" works for parser::Expr).
4. Avoid checks for diagnosable issues in lowering, simply read the recorded analysis results and generate code.

The goal of this PR is to preserve the existing functionality, but with new implementation.

https://github.com/llvm/llvm-project/pull/137852


More information about the llvm-commits mailing list