[all-commits] [llvm/llvm-project] 9f8ff4: [flang] Revamp evaluate::CoarrayRef (#136628)

Peter Klausler via All-commits all-commits at lists.llvm.org
Mon May 12 12:02:36 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9f8ff4b77d07570294a020c24bc347285c3affdc
      https://github.com/llvm/llvm-project/commit/9f8ff4b77d07570294a020c24bc347285c3affdc
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-05-12 (Mon, 12 May 2025)

  Changed paths:
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Evaluate/traverse.h
    M flang/include/flang/Evaluate/variable.h
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/fold.cpp
    M flang/lib/Evaluate/formatting.cpp
    M flang/lib/Evaluate/shape.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Evaluate/variable.cpp
    M flang/lib/Lower/Support/Utils.cpp
    M flang/lib/Semantics/check-coarray.cpp
    M flang/lib/Semantics/check-coarray.h
    M flang/lib/Semantics/dump-expr.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/atomic02.f90
    M flang/test/Semantics/atomic03.f90
    M flang/test/Semantics/atomic04.f90
    M flang/test/Semantics/atomic05.f90
    M flang/test/Semantics/atomic06.f90
    M flang/test/Semantics/atomic07.f90
    M flang/test/Semantics/atomic08.f90
    M flang/test/Semantics/atomic09.f90
    M flang/test/Semantics/atomic10.f90
    M flang/test/Semantics/atomic11.f90
    M flang/test/Semantics/coarrays02.f90
    M flang/test/Semantics/coshape.f90
    M flang/test/Semantics/error_stop1b.f90
    M flang/test/Semantics/event01b.f90
    M flang/test/Semantics/resolve94.f90

  Log Message:
  -----------
  [flang] Revamp evaluate::CoarrayRef (#136628)

Bring the typed expression representation of a coindexed reference up to
F'2023, which removed some restrictions that had allowed the current
representation to suffice for older revisions of the language. This new
representation is somewhat more simple -- it uses a DataRef as its base,
so any subscripts in a part-ref can be represented as an ArrayRef there.

Update the code that creates the CoarrayRef, and add more checking to
it, as well as actually capturing any STAT=, TEAM=, & TEAM_NUMBER=
specifiers that might appear. Enforce the constraint that the part-ref
must have subscripts if it is an array. (And update a pile of
copied-and-pasted test code that lacked such subscripts.)



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list