[all-commits] [llvm/llvm-project] 0dae92: [openacc][flang] Support two type bindName represe...

delaram-talaashrafi via All-commits all-commits at lists.llvm.org
Thu Jul 17 09:38:23 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0dae924c1f668f74370b642ba91f818b728aca40
      https://github.com/llvm/llvm-project/commit/0dae924c1f668f74370b642ba91f818b728aca40
  Author: delaram-talaashrafi <dtalaashrafi at nvidia.com>
  Date:   2025-07-17 (Thu, 17 Jul 2025)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-routine.f90
    M flang/test/Lower/OpenACC/acc-routine03.f90
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/unittests/Dialect/OpenACC/OpenACCOpsTest.cpp

  Log Message:
  -----------
  [openacc][flang] Support two type bindName representation in acc routine (#149147)

Based on the OpenACC specification — which states that if the bind name
is given as an identifier it should be resolved according to the
compiled language, and if given as a string it should be used unmodified
— we introduce two distinct `bindName` representations for `acc routine`
to handle each case appropriately: one as an array of `SymbolRefAttr`
for identifiers and another as an array of `StringAttr` for strings.

To ensure correct correspondence between bind names and devices, this
patch also introduces two separate sets of device attributes. The
routine operation is extended accordingly, along with the necessary
updates to the OpenACC dialect and its lowering.



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