[all-commits] [llvm/llvm-project] 728d1c: [mlir][acc] Add data directive codegen to ACCToLLV...

Vitaly Buka via All-commits all-commits at lists.llvm.org
Tue Sep 15 14:57:26 PDT 2026


  Branch: refs/heads/users/vitalybuka/spr/main.thinltobitcodewriter-encode-hotness-into-cfifunctions-metadata-2
  Home:   https://github.com/llvm/llvm-project
  Commit: 728d1c058b3ee1407eb4e8bf26ddc1aff03e48f8
      https://github.com/llvm/llvm-project/commit/728d1c058b3ee1407eb4e8bf26ddc1aff03e48f8
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-09-15 (Tue, 15 Sep 2026)

  Changed paths:
    A mlir/include/mlir/Conversion/OpenACCToLLVM/ACCDataRuntime.h
    M mlir/include/mlir/Conversion/OpenACCToLLVM/ACCToLLVM.h
    M mlir/include/mlir/Conversion/OpenACCToLLVM/ACCToLLVMUtils.h
    A mlir/include/mlir/Dialect/OpenACC/OpenACCRuntimeDescriptors.def
    M mlir/include/mlir/Dialect/OpenACC/OpenACCRuntimeFunctions.def
    M mlir/include/mlir/Dialect/OpenACC/OpenACCRuntimeUtils.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCUtilsCG.h
    A mlir/lib/Conversion/OpenACCToLLVM/ACCDataDirectivePatterns.cpp
    A mlir/lib/Conversion/OpenACCToLLVM/ACCDataRuntime.cpp
    M mlir/lib/Conversion/OpenACCToLLVM/ACCExecutableDirectivePatterns.cpp
    M mlir/lib/Conversion/OpenACCToLLVM/ACCToLLVM.cpp
    M mlir/lib/Conversion/OpenACCToLLVM/ACCToLLVMUtils.cpp
    M mlir/lib/Conversion/OpenACCToLLVM/CMakeLists.txt
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCRuntimeUtils.cpp
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsCG.cpp
    A mlir/test/Conversion/OpenACCToLLVM/data-diagnostics.mlir
    A mlir/test/Conversion/OpenACCToLLVM/data-runtime.mlir
    A mlir/test/Conversion/OpenACCToLLVM/data.mlir
    M mlir/test/Conversion/OpenACCToLLVM/init-shutdown-set.mlir
    M mlir/test/Conversion/OpenACCToLLVM/runtime-declaration-mismatch.mlir
    M mlir/test/Conversion/OpenACCToLLVM/wait.mlir
    M mlir/unittests/Dialect/OpenACC/CMakeLists.txt
    A mlir/unittests/Dialect/OpenACC/OpenACCRuntimeUtilsTest.cpp

  Log Message:
  -----------
  [mlir][acc] Add data directive codegen to ACCToLLVM (#223043)

Extends the acc to LLVM conversion with codegen for the OpenACC data
constructs - data, enter data, exit data and update. Each construct
becomes calls to the libacctarget data entry points that establish the
mappings its clauses ask for and tear them down again, on the queue its
async clause selects and after the wait its wait clause asks for. As
with the executable directives, these runtime APIs are not yet
finalized; the draft proposal can be found at
https://github.com/llvm/llvm-project/pull/197894.

A mapping is handed to the runtime as parallel argument arrays holding
one entry per mapped object, together with a descriptor for the objects
whose extent or layout cannot be stated as a size. The descriptor
layouts are declared next to the entry points they are passed to, as
they are equally part of the runtime interface.

Clause handling the data constructs share with the executable
directives, such as async, wait and if, now lives in the common
conversion utilities.

Co-authored-by: Matsu <kmatsumura at nvidia.com>


  Commit: 88d5749eea164805b3bf89de0c06fdf487391f05
      https://github.com/llvm/llvm-project/commit/88d5749eea164805b3bf89de0c06fdf487391f05
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-09-15 (Tue, 15 Sep 2026)

  Changed paths:
    A mlir/include/mlir/Conversion/OpenACCToLLVM/ACCDataRuntime.h
    M mlir/include/mlir/Conversion/OpenACCToLLVM/ACCToLLVM.h
    M mlir/include/mlir/Conversion/OpenACCToLLVM/ACCToLLVMUtils.h
    A mlir/include/mlir/Dialect/OpenACC/OpenACCRuntimeDescriptors.def
    M mlir/include/mlir/Dialect/OpenACC/OpenACCRuntimeFunctions.def
    M mlir/include/mlir/Dialect/OpenACC/OpenACCRuntimeUtils.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCUtilsCG.h
    A mlir/lib/Conversion/OpenACCToLLVM/ACCDataDirectivePatterns.cpp
    A mlir/lib/Conversion/OpenACCToLLVM/ACCDataRuntime.cpp
    M mlir/lib/Conversion/OpenACCToLLVM/ACCExecutableDirectivePatterns.cpp
    M mlir/lib/Conversion/OpenACCToLLVM/ACCToLLVM.cpp
    M mlir/lib/Conversion/OpenACCToLLVM/ACCToLLVMUtils.cpp
    M mlir/lib/Conversion/OpenACCToLLVM/CMakeLists.txt
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCRuntimeUtils.cpp
    M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsCG.cpp
    A mlir/test/Conversion/OpenACCToLLVM/data-diagnostics.mlir
    A mlir/test/Conversion/OpenACCToLLVM/data-runtime.mlir
    A mlir/test/Conversion/OpenACCToLLVM/data.mlir
    M mlir/test/Conversion/OpenACCToLLVM/init-shutdown-set.mlir
    M mlir/test/Conversion/OpenACCToLLVM/runtime-declaration-mismatch.mlir
    M mlir/test/Conversion/OpenACCToLLVM/wait.mlir
    M mlir/unittests/Dialect/OpenACC/CMakeLists.txt
    A mlir/unittests/Dialect/OpenACC/OpenACCRuntimeUtilsTest.cpp

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/372c9d8ddc89...88d5749eea16

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