diff options
author | Kelvin Li <kkwli0@gmail.com> | 2016-11-30 23:51:03 +0000 |
---|---|---|
committer | Kelvin Li <kkwli0@gmail.com> | 2016-11-30 23:51:03 +0000 |
commit | 195ed07166157b3ce58b54a0dd01cce29a07bc9b (patch) | |
tree | 018d029069a46da32686d807fae26b7086ef6973 /tools | |
parent | fe232febd1c58d2b28d6d175e78b12063b693cf2 (diff) |
[OpenMP] Sema and parsing for 'teams distribute parallel for simd' pragma
This patch is to implement sema and parsing for 'teams distribute parallel for simd' pragma.
Differential Revision: https://reviews.llvm.org/D27084
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@288294 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools')
-rw-r--r-- | tools/libclang/CIndex.cpp | 9 | ||||
-rw-r--r-- | tools/libclang/CXCursor.cpp | 3 |
2 files changed, 12 insertions, 0 deletions
diff --git a/tools/libclang/CIndex.cpp b/tools/libclang/CIndex.cpp index 9a61560ff6..4ed6b0ecea 100644 --- a/tools/libclang/CIndex.cpp +++ b/tools/libclang/CIndex.cpp @@ -2004,6 +2004,8 @@ public: void VisitOMPTeamsDistributeDirective(const OMPTeamsDistributeDirective *D); void VisitOMPTeamsDistributeSimdDirective( const OMPTeamsDistributeSimdDirective *D); + void VisitOMPTeamsDistributeParallelForSimdDirective( + const OMPTeamsDistributeParallelForSimdDirective *D); private: void AddDeclarationNameInfo(const Stmt *S); @@ -2798,6 +2800,11 @@ void EnqueueVisitor::VisitOMPTeamsDistributeSimdDirective( VisitOMPLoopDirective(D); } +void EnqueueVisitor::VisitOMPTeamsDistributeParallelForSimdDirective( + const OMPTeamsDistributeParallelForSimdDirective *D) { + VisitOMPLoopDirective(D); +} + void CursorVisitor::EnqueueWorkList(VisitorWorkList &WL, const Stmt *S) { EnqueueVisitor(WL, MakeCXCursor(S, StmtParent, TU,RegionOfInterest)).Visit(S); } @@ -4928,6 +4935,8 @@ CXString clang_getCursorKindSpelling(enum CXCursorKind Kind) { return cxstring::createRef("OMPTeamsDistributeDirective"); case CXCursor_OMPTeamsDistributeSimdDirective: return cxstring::createRef("OMPTeamsDistributeSimdDirective"); + case CXCursor_OMPTeamsDistributeParallelForSimdDirective: + return cxstring::createRef("OMPTeamsDistributeParallelForSimdDirective"); case CXCursor_OverloadCandidate: return cxstring::createRef("OverloadCandidate"); case CXCursor_TypeAliasTemplateDecl: diff --git a/tools/libclang/CXCursor.cpp b/tools/libclang/CXCursor.cpp index 600b19be6b..d2bd0bcf76 100644 --- a/tools/libclang/CXCursor.cpp +++ b/tools/libclang/CXCursor.cpp @@ -659,6 +659,9 @@ CXCursor cxcursor::MakeCXCursor(const Stmt *S, const Decl *Parent, case Stmt::OMPTeamsDistributeSimdDirectiveClass: K = CXCursor_OMPTeamsDistributeSimdDirective; break; + case Stmt::OMPTeamsDistributeParallelForSimdDirectiveClass: + K = CXCursor_OMPTeamsDistributeParallelForSimdDirective; + break; } CXCursor C = { K, 0, { Parent, S, TU } }; |