diff options
author | NAKAMURA Takumi <geek4civic@gmail.com> | 2025-01-09 17:16:04 +0900 |
---|---|---|
committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2025-01-09 17:16:04 +0900 |
commit | 0aa930a41f2d1ebf1fa90ec42da8f96d15a4dcbb (patch) | |
tree | 6a77b463f700e090df586672c26b9fe765fd115b /clang/tools/libclang/CIndex.cpp | |
parent | ec6892d1c979ce0b84c86918d5cdbb03037b409a (diff) | |
parent | 6d16b1c5c468a79ecf867293023c89ac518ecdda (diff) | |
download | llvm-users/chapuni/cov/single/nextcount-base.zip llvm-users/chapuni/cov/single/nextcount-base.tar.gz llvm-users/chapuni/cov/single/nextcount-base.tar.bz2 |
Merge branch 'users/chapuni/cov/single/pair' into users/chapuni/cov/single/nextcount-baseusers/chapuni/cov/single/nextcount-base
Diffstat (limited to 'clang/tools/libclang/CIndex.cpp')
-rw-r--r-- | clang/tools/libclang/CIndex.cpp | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/clang/tools/libclang/CIndex.cpp b/clang/tools/libclang/CIndex.cpp index 7967c10..5e51fc4 100644 --- a/clang/tools/libclang/CIndex.cpp +++ b/clang/tools/libclang/CIndex.cpp @@ -2192,6 +2192,7 @@ public: void VisitOpenACCWaitConstruct(const OpenACCWaitConstruct *D); void VisitOpenACCInitConstruct(const OpenACCInitConstruct *D); void VisitOpenACCShutdownConstruct(const OpenACCShutdownConstruct *D); + void VisitOpenACCSetConstruct(const OpenACCSetConstruct *D); void VisitOMPExecutableDirective(const OMPExecutableDirective *D); void VisitOMPLoopBasedDirective(const OMPLoopBasedDirective *D); void VisitOMPLoopDirective(const OMPLoopDirective *D); @@ -2838,8 +2839,13 @@ void OpenACCClauseEnqueue::VisitIfClause(const OpenACCIfClause &C) { Visitor.AddStmt(C.getConditionExpr()); } void OpenACCClauseEnqueue::VisitSelfClause(const OpenACCSelfClause &C) { - if (C.hasConditionExpr()) - Visitor.AddStmt(C.getConditionExpr()); + if (C.isConditionExprClause()) { + if (C.hasConditionExpr()) + Visitor.AddStmt(C.getConditionExpr()); + } else { + for (Expr *Var : C.getVarList()) + Visitor.AddStmt(Var); + } } void OpenACCClauseEnqueue::VisitNumWorkersClause( const OpenACCNumWorkersClause &C) { @@ -2849,6 +2855,10 @@ void OpenACCClauseEnqueue::VisitDeviceNumClause( const OpenACCDeviceNumClause &C) { Visitor.AddStmt(C.getIntExpr()); } +void OpenACCClauseEnqueue::VisitDefaultAsyncClause( + const OpenACCDefaultAsyncClause &C) { + Visitor.AddStmt(C.getIntExpr()); +} void OpenACCClauseEnqueue::VisitVectorLengthClause( const OpenACCVectorLengthClause &C) { Visitor.AddStmt(C.getIntExpr()); @@ -3658,6 +3668,12 @@ void EnqueueVisitor::VisitOpenACCShutdownConstruct( EnqueueChildren(Clause); } +void EnqueueVisitor::VisitOpenACCSetConstruct(const OpenACCSetConstruct *C) { + EnqueueChildren(C); + for (auto *Clause : C->clauses()) + EnqueueChildren(Clause); +} + void EnqueueVisitor::VisitAnnotateAttr(const AnnotateAttr *A) { EnqueueChildren(A); } @@ -6426,6 +6442,10 @@ CXString clang_getCursorKindSpelling(enum CXCursorKind Kind) { return cxstring::createRef("OpenACCInitConstruct"); case CXCursor_OpenACCShutdownConstruct: return cxstring::createRef("OpenACCShutdownConstruct"); + case CXCursor_OpenACCSetConstruct: + return cxstring::createRef("OpenACCSetConstruct"); + case CXCursor_OpenACCUpdateConstruct: + return cxstring::createRef("OpenACCUpdateConstruct"); } llvm_unreachable("Unhandled CXCursorKind"); |