[OPENMP 4.5] Codegen for member decls in 'lastprivate' clause.
OpenMP 4.5 allows to privatize non-static member decls in non-static member functions. Patch captures such decls by reference in general (for bitfields, by value) and then operates with this capture. For bitfields, at the end of codegen for lastprivates original bitfield is updated with the value of captured copy. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@261824 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/AST/OpenMPClause.h 34 additions, 4 deletionsinclude/clang/AST/OpenMPClause.h
- include/clang/AST/RecursiveASTVisitor.h 10 additions, 0 deletionsinclude/clang/AST/RecursiveASTVisitor.h
- lib/AST/OpenMPClause.cpp 63 additions, 1 deletionlib/AST/OpenMPClause.cpp
- lib/AST/StmtProfile.cpp 9 additions, 0 deletionslib/AST/StmtProfile.cpp
- lib/CodeGen/CGStmtOpenMP.cpp 2 additions, 15 deletionslib/CodeGen/CGStmtOpenMP.cpp
- lib/Sema/SemaOpenMP.cpp 62 additions, 22 deletionslib/Sema/SemaOpenMP.cpp
- lib/Serialization/ASTReaderStmt.cpp 7 additions, 0 deletionslib/Serialization/ASTReaderStmt.cpp
- lib/Serialization/ASTWriterStmt.cpp 7 additions, 0 deletionslib/Serialization/ASTWriterStmt.cpp
- test/OpenMP/for_lastprivate_codegen.cpp 216 additions, 2 deletionstest/OpenMP/for_lastprivate_codegen.cpp
- test/OpenMP/parallel_num_threads_codegen.cpp 1 addition, 1 deletiontest/OpenMP/parallel_num_threads_codegen.cpp
- tools/libclang/CIndex.cpp 8 additions, 0 deletionstools/libclang/CIndex.cpp
Loading
Please register or sign in to comment