[all-commits] [llvm/llvm-project] 529218: [OPENMP]Fix PR48076: mapping of data member pointer.

Alexey Bataev via All-commits all-commits at lists.llvm.org
Tue Nov 17 07:27:06 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 5292187a2d627fe5ff6f24c00dafae8d9f8c8e3b
      https://github.com/llvm/llvm-project/commit/5292187a2d627fe5ff6f24c00dafae8d9f8c8e3b
  Author: Alexey Bataev <a.bataev at hotmail.com>
  Date:   2020-11-17 (Tue, 17 Nov 2020)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/target_codegen.cpp
    M clang/test/OpenMP/target_data_member_codegen.cpp
    M clang/test/OpenMP/target_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_20.cpp
    M clang/test/OpenMP/target_map_codegen_23.cpp
    M clang/test/OpenMP/target_map_codegen_24.cpp
    M clang/test/OpenMP/target_parallel_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/target_parallel_if_codegen.cpp
    M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
    M clang/test/OpenMP/target_teams_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
    M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
    M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
    M clang/test/OpenMP/teams_codegen.cpp
    M clang/test/OpenMP/teams_distribute_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp

  Log Message:
  -----------
  [OPENMP]Fix PR48076: mapping of data member pointer.

If the data member pointer is mapped, the compiler tries to optimize the
mapping of such data by discarding explicit mapping flags and trying to
emit combined data instead. In some cases, this optimization is not
quite correctly implemented and it leads to a program crash at the
runtime. Instead, if the data member is mapped, just emit it as is and
do not emit combined mapping flags for it.

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




More information about the All-commits mailing list