[all-commits] [llvm/llvm-project] 9500d4: [flang][NFC] Extract name resolution for OpenACC &...

Tim Keith via All-commits all-commits at lists.llvm.org
Tue Jul 28 16:39:00 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 9500d48de367d969dc944445297ae5bdfaa14079
      https://github.com/llvm/llvm-project/commit/9500d48de367d969dc944445297ae5bdfaa14079
  Author: Tim Keith <tkeith at nvidia.com>
  Date:   2020-07-28 (Tue, 28 Jul 2020)

  Changed paths:
    M flang/lib/Semantics/CMakeLists.txt
    A flang/lib/Semantics/resolve-directives.cpp
    A flang/lib/Semantics/resolve-directives.h
    M flang/lib/Semantics/resolve-names-utils.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/acc-resolve01.f90

  Log Message:
  -----------
  [flang][NFC] Extract name resolution for OpenACC & OpenMP into new file

Move `ResolveAccParts` and `ResolveOmpParts` from resolve-names.cpp to
resolve-directives.{h,cpp}. Move the implementation in the classes
`DirectiveAttributeVisitor`, `AccAttributeVisitor`, and
`OmpAttributeVisitor` to resolve-directives.cpp as well.

To allow this to happen, move `EvaluateIntExpr` and introduce
`EvaluateInt64` to resolve-names-utils.h. The latter is also useful
elsewhere in resolve-names.cpp for converting an Expr to std::int64_t.

The other problem was that `ResolveDesignator` was called from the code
that was moved. At the moment it doesn't seem to be doing anything so I
removed the calls (and no tests failed). If it proves to be needed, we
can either resolve those designators in resolve-names.cpp or pass the
`ResolveDesignator` function in to the code that needs to call it.

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




More information about the All-commits mailing list