[all-commits] [llvm/llvm-project] 0ff962: [flang][OpenMP] Added atomic update assignment sta...

NimishMishra via All-commits all-commits at lists.llvm.org
Tue Oct 3 07:18:12 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0ff9625c0a15a80d2375c1ab6fb3fd8439b3c78b
      https://github.com/llvm/llvm-project/commit/0ff9625c0a15a80d2375c1ab6fb3fd8439b3c78b
  Author: Nimish Mishra <neelam.nimish at gmail.com>
  Date:   2023-10-03 (Tue, 03 Oct 2023)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/test/Lower/OpenMP/FIR/atomic-update.f90
    M flang/test/Semantics/OpenMP/atomic-hint-clause.f90
    M flang/test/Semantics/OpenMP/atomic01.f90
    M flang/test/Semantics/OpenMP/atomic02.f90
    M flang/test/Semantics/OpenMP/atomic03.f90
    M flang/test/Semantics/OpenMP/atomic04.f90
    M flang/test/Semantics/OpenMP/atomic05.f90
    M flang/test/Semantics/OpenMP/omp-atomic-assignment-stmt.f90

  Log Message:
  -----------
  [flang][OpenMP] Added atomic update assignment statement related semantic checks

This patch adds the following semantic checks:

- None of expr, and expr_list (as applicable) may access the same storage location as x

- Atomic update statement should be of the form x = x operator expr or
x = expr operator x or x = intrinsic_procedure(x, expr_list) or x = intrinsic_procedure(expr_list, x)

- expr_list is a comma-separated, non-empty list of scalar expressions. If intrinsic_procedure_name
refers to IAND, IOR, or IEOR, exactly one expression must appear in expr_list

Reviewed By: TIFitis

Differential Revision: https://reviews.llvm.org/D128162




More information about the All-commits mailing list