[all-commits] [llvm/llvm-project] 2d373e: [MLIR][OpenMP] Added OMPIRBuilder support for Targ...

Akash Banerjee via All-commits all-commits at lists.llvm.org
Mon Mar 20 11:48:39 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2d373e4dc7e97b0b2d7022d8d04e64834204187c
      https://github.com/llvm/llvm-project/commit/2d373e4dc7e97b0b2d7022d8d04e64834204187c
  Author: Akash Banerjee <Akash.Banerjee at amd.com>
  Date:   2023-03-20 (Mon, 20 Mar 2023)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    A mlir/include/mlir/Target/LLVMIR/Dialect/OpenMPCommon.h
    M mlir/lib/Target/LLVMIR/CMakeLists.txt
    M mlir/lib/Target/LLVMIR/Dialect/OpenACC/OpenACCToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/lib/Target/LLVMIR/Dialect/OpenMPCommon.cpp
    A mlir/test/Target/LLVMIR/omptarget-llvm.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Added OMPIRBuilder support for Target Data directives

This patch adds OpenMP IRBuilder support for the Target Data directives to allow lowering to LLVM IR.

The mlir::Translation is responsible for generating supporting code for processing the map_operands through the processMapOperand function, and also generate code for the r>

The OMPIRBuilder is responsible for generating the begin and end mapper function calls.

Limitations:
        - use_device_ptr and use_device_addr clauses are NOT supported for Target Data operation.
        - nowait clauses are NOT supported for Target Enter and Exit Data operations.
        - Only LLVMPointerType is supported for map_operands.

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




More information about the All-commits mailing list