[OPENMP]Provide correct data sharing attributes for loop control
authorAlexey Bataev <a.bataev@hotmail.com>
Thu, 18 Jul 2019 17:49:13 +0000 (17:49 +0000)
committerAlexey Bataev <a.bataev@hotmail.com>
Thu, 18 Jul 2019 17:49:13 +0000 (17:49 +0000)
commit05be1da24cd947187a8b750e9eca45e80d2e7414
treedad30cd82ebcd2240874110eedfbc527bd680824
parent3f1ab737e2199415c072fd6624a728949eb30342
[OPENMP]Provide correct data sharing attributes for loop control
variables.

Loop control variables are private in loop-based constructs and we shall
take this into account when generate the code for inner constructs.
Currently, those variables are reported as shared in many cases. Moved
the analysis of the data-sharing attributes of the loop control variable
to an early semantic stage to correctly handle their attributes.

llvm-svn: 366474
21 files changed:
clang/lib/Sema/SemaOpenMP.cpp
clang/test/OpenMP/distribute_parallel_for_firstprivate_messages.cpp
clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_messages.cpp
clang/test/OpenMP/distribute_simd_firstprivate_messages.cpp
clang/test/OpenMP/distribute_simd_misc_messages.c
clang/test/OpenMP/for_misc_messages.c
clang/test/OpenMP/for_simd_misc_messages.c
clang/test/OpenMP/parallel_for_firstprivate_messages.cpp
clang/test/OpenMP/parallel_for_misc_messages.c
clang/test/OpenMP/parallel_for_simd_firstprivate_messages.cpp
clang/test/OpenMP/simd_misc_messages.c
clang/test/OpenMP/target_parallel_for_firstprivate_messages.cpp
clang/test/OpenMP/target_parallel_for_misc_messages.c
clang/test/OpenMP/target_parallel_for_simd_firstprivate_messages.cpp
clang/test/OpenMP/target_parallel_for_simd_misc_messages.c
clang/test/OpenMP/target_simd_firstprivate_messages.cpp
clang/test/OpenMP/target_teams_distribute_parallel_for_simd_misc_messages.c
clang/test/OpenMP/target_teams_distribute_simd_misc_messages.c
clang/test/OpenMP/task_codegen.c
clang/test/OpenMP/taskloop_firstprivate_messages.cpp
clang/test/OpenMP/taskloop_simd_firstprivate_messages.cpp