]> granicus.if.org Git - clang/commit
[OPENMP][NVPTX]Use __kmpc_barrier_simple_spmd(nullptr, 0) instead of
authorAlexey Bataev <a.bataev@hotmail.com>
Thu, 3 Jan 2019 16:25:35 +0000 (16:25 +0000)
committerAlexey Bataev <a.bataev@hotmail.com>
Thu, 3 Jan 2019 16:25:35 +0000 (16:25 +0000)
commitf69e6504d9b12b972343b6f4fe0ec7b1e11711ab
tree5a18e71836462caa141918b02940273e913f8862
parent5ea2db053a254aad9ead28908017434c422826b7
[OPENMP][NVPTX]Use __kmpc_barrier_simple_spmd(nullptr, 0) instead of
nvvm_barrier0.

Use runtime functions instead of the direct call to the nvvm intrinsics.
It allows to prevent some dangerous LLVM optimizations, that breaks the
code for the NVPTX target.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@350328 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
lib/CodeGen/CGOpenMPRuntimeNVPTX.h
test/OpenMP/nvptx_data_sharing.cpp
test/OpenMP/nvptx_parallel_codegen.cpp
test/OpenMP/nvptx_parallel_for_codegen.cpp
test/OpenMP/nvptx_target_codegen.cpp
test/OpenMP/nvptx_target_teams_codegen.cpp
test/OpenMP/nvptx_target_teams_distribute_codegen.cpp