]> granicus.if.org Git - clang/commit
[OPENMP] Emit sizes/init ptrs etc. data for task reductions before
authorAlexey Bataev <a.bataev@hotmail.com>
Thu, 8 Mar 2018 15:24:08 +0000 (15:24 +0000)
committerAlexey Bataev <a.bataev@hotmail.com>
Thu, 8 Mar 2018 15:24:08 +0000 (15:24 +0000)
commitf9b96cd2d92df6f856a84a02e414f9b9da05b93e
tree357715d33e80434c45e8efb424abaa5cfa845f7a
parent4890a84991653f96f89aaad7e8215afdba8b0441
[OPENMP] Emit sizes/init ptrs etc. data for task reductions before
using.

We may emit the code in wrong order because of incorrect implementation
of the runtime functions for task reductions. Threadprivate storages may
be initialized after real initialization of the reduction items. Patch
fixes this problem.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@327008 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGStmtOpenMP.cpp
test/OpenMP/task_in_reduction_codegen.cpp
test/OpenMP/taskloop_reduction_codegen.cpp