[OPENMP] Codegen for 'in_reduction' clause.
authorAlexey Bataev <a.bataev@hotmail.com>
Thu, 27 Jul 2017 13:20:36 +0000 (13:20 +0000)
committerAlexey Bataev <a.bataev@hotmail.com>
Thu, 27 Jul 2017 13:20:36 +0000 (13:20 +0000)
commit88202be1f067578fe904cc38785b8e726523d7cf
treef7717ba21d0132ea4b0b6ae53305d3c23fabe765
parente255526d0bb7494f382de2e57386985ea904e8cc
[OPENMP] Codegen for 'in_reduction' clause.

Added codegen for task-based directive with in_reduction clause.
```
<body>
```
The next code is emitted:
```
void *td;
...
td = call i8* @__kmpc_task_reduction_init();
...
<type> *priv = (<type> *)call i8* @__kmpc_task_reduction_get_th_data(i32
GTID, i8* td, i8* <orig>)
```

llvm-svn: 309270
12 files changed:
clang/include/clang/AST/OpenMPClause.h
clang/include/clang/AST/RecursiveASTVisitor.h
clang/lib/AST/OpenMPClause.cpp
clang/lib/AST/StmtProfile.cpp
clang/lib/CodeGen/CGStmtOpenMP.cpp
clang/lib/Sema/SemaOpenMP.cpp
clang/lib/Serialization/ASTReaderStmt.cpp
clang/lib/Serialization/ASTWriterStmt.cpp
clang/test/OpenMP/task_in_reduction_codegen.cpp [new file with mode: 0644]
clang/test/OpenMP/taskloop_in_reduction_codegen.cpp [new file with mode: 0644]
clang/test/OpenMP/taskloop_simd_in_reduction_codegen.cpp [new file with mode: 0644]
clang/tools/libclang/CIndex.cpp