diff options
author | Kelvin Li <kkwli0@gmail.com> | 2016-07-14 02:54:56 +0000 |
---|---|---|
committer | Kelvin Li <kkwli0@gmail.com> | 2016-07-14 02:54:56 +0000 |
commit | a579b9196c6eaa1e2a52832e8d0025eaf6160efa (patch) | |
tree | b79099a091e831e165b0e8f19dad2eb29a0fa743 /clang/tools/libclang | |
parent | 0bd882295413a2b00a5cc4db712bcf7dddf117b6 (diff) | |
download | bcm5719-llvm-a579b9196c6eaa1e2a52832e8d0025eaf6160efa.tar.gz bcm5719-llvm-a579b9196c6eaa1e2a52832e8d0025eaf6160efa.zip |
[OpenMP] Sema and parsing for 'target parallel for simd' pragma
This patch is to implement sema and parsing for 'target parallel for simd' pragma.
Differential Revision: http://reviews.llvm.org/D22096
llvm-svn: 275365
Diffstat (limited to 'clang/tools/libclang')
-rw-r--r-- | clang/tools/libclang/CIndex.cpp | 9 | ||||
-rw-r--r-- | clang/tools/libclang/CXCursor.cpp | 3 |
2 files changed, 12 insertions, 0 deletions
diff --git a/clang/tools/libclang/CIndex.cpp b/clang/tools/libclang/CIndex.cpp index 5ebc2ee9439..f4f9c16225d 100644 --- a/clang/tools/libclang/CIndex.cpp +++ b/clang/tools/libclang/CIndex.cpp @@ -1974,6 +1974,8 @@ public: void VisitOMPDistributeParallelForSimdDirective( const OMPDistributeParallelForSimdDirective *D); void VisitOMPDistributeSimdDirective(const OMPDistributeSimdDirective *D); + void VisitOMPTargetParallelForSimdDirective( + const OMPTargetParallelForSimdDirective *D); private: void AddDeclarationNameInfo(const Stmt *S); @@ -2748,6 +2750,11 @@ void EnqueueVisitor::VisitOMPDistributeSimdDirective( VisitOMPLoopDirective(D); } +void EnqueueVisitor::VisitOMPTargetParallelForSimdDirective( + const OMPTargetParallelForSimdDirective *D) { + VisitOMPLoopDirective(D); +} + void CursorVisitor::EnqueueWorkList(VisitorWorkList &WL, const Stmt *S) { EnqueueVisitor(WL, MakeCXCursor(S, StmtParent, TU,RegionOfInterest)).Visit(S); } @@ -4868,6 +4875,8 @@ CXString clang_getCursorKindSpelling(enum CXCursorKind Kind) { return cxstring::createRef("OMPDistributeParallelForSimdDirective"); case CXCursor_OMPDistributeSimdDirective: return cxstring::createRef("OMPDistributeSimdDirective"); + case CXCursor_OMPTargetParallelForSimdDirective: + return cxstring::createRef("OMPTargetParallelForSimdDirective"); case CXCursor_OverloadCandidate: return cxstring::createRef("OverloadCandidate"); case CXCursor_TypeAliasTemplateDecl: diff --git a/clang/tools/libclang/CXCursor.cpp b/clang/tools/libclang/CXCursor.cpp index 4a8d9c44d9a..80bb569150e 100644 --- a/clang/tools/libclang/CXCursor.cpp +++ b/clang/tools/libclang/CXCursor.cpp @@ -643,6 +643,9 @@ CXCursor cxcursor::MakeCXCursor(const Stmt *S, const Decl *Parent, case Stmt::OMPDistributeSimdDirectiveClass: K = CXCursor_OMPDistributeSimdDirective; break; + case Stmt::OMPTargetParallelForSimdDirectiveClass: + K = CXCursor_OMPTargetParallelForSimdDirective; + break; } CXCursor C = { K, 0, { Parent, S, TU } }; |