[all-commits] [llvm/llvm-project] 622e46: [OPENMP]Fix PR46824: Global declare target pointer...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Thu Jul 30 08:19:49 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 622e46156d9a91206c877a604d069bb3e2dbf294
      https://github.com/llvm/llvm-project/commit/622e46156d9a91206c877a604d069bb3e2dbf294
  Author: Alexey Bataev <a.bataev at hotmail.com>
  Date:   2020-07-30 (Thu, 30 Jul 2020)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/target_data_codegen.cpp
    M clang/test/OpenMP/target_data_use_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_map_codegen.cpp
    M clang/test/OpenMP/target_update_codegen.cpp
    M openmp/libomptarget/src/omptarget.cpp
    A openmp/libomptarget/test/env/base_ptr_ref_count.c

  Log Message:
  -----------
  [OPENMP]Fix PR46824: Global declare target pointer cannot be accessed in target region.

Need to map the base pointer for all directives, not only target
data-based ones.
The base pointer is mapped for array sections, array subscript, array
shaping and other array-like constructs with the base pointer. Also,
codegen for use_device_ptr clause was modified to correctly handle
mapping combination of array like constructs + use_device_ptr clause.
The data for use_device_ptr clause is emitted as the last records in the
data mapping array.

Reviewed By: ye-luo

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




More information about the All-commits mailing list