[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-20 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 closed this revision. doru1004 added a comment. Commit 49d47c4d2f280d15d1de94c53b72b6ab3c127b35 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141871/new/ https://reviews.llvm.org/D141871

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-20 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev accepted this revision. ABataev added a comment. This revision is now accepted and ready to land. LG CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141871/new/ https://reviews.llvm.org/D141871 ___ cfe-commits mailing list

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-19 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 updated this revision to Diff 490659. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141871/new/ https://reviews.llvm.org/D141871 Files: clang/include/clang/AST/OpenMPClause.h clang/include/clang/Basic/DiagnosticParseKinds.td

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-19 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/test/OpenMP/declare_mapper_messages.c:33-36 +#pragma omp declare mapper(id2: struct vec vvec) map(iterator(it=0:vvec.len:2), tofrom:vvec.data[it]) +int var; // expected-note {{'var' declared here}} +// expected-error@+1 {{only

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-19 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/test/OpenMP/declare_mapper_messages.c:33-36 +#pragma omp declare mapper(id2: struct vec vvec) map(iterator(it=0:vvec.len:2), tofrom:vvec.data[it]) +int var; // expected-note {{'var' declared here}} +// expected-error@+1 {{only

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-19 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/test/OpenMP/declare_mapper_messages.c:33-36 +#pragma omp declare mapper(id2: struct vec vvec) map(iterator(it=0:vvec.len:2), tofrom:vvec.data[it]) +int var; // expected-note {{'var' declared here}} +// expected-error@+1 {{only

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-19 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/lib/Sema/SemaExpr.cpp:5423-5426 + +/// Act on the iterator variable declaration. +ActOnOpenMPIteratorVarDecl(VD); + ABataev wrote: > Can we register this variable only in declare mapper context, i.e. add

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-19 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/test/OpenMP/declare_mapper_messages.c:33-36 +#pragma omp declare mapper(id2: struct vec vvec) map(iterator(it=0:vvec.len:2), tofrom:vvec.data[it]) +int var; // expected-note {{'var' declared here}} +// expected-error@+1 {{only

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-19 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added a comment. Can you add positive test for declare mapper? Comment at: clang/lib/Sema/SemaExpr.cpp:5423-5426 + +/// Act on the iterator variable declaration. +ActOnOpenMPIteratorVarDecl(VD); + Can we register this variable only in declare

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:22399-22412 bool Sema::isOpenMPDeclareMapperVarDeclAllowed(const VarDecl *VD) const { assert(LangOpts.OpenMP && "Expected OpenMP mode."); const Expr *Ref = DSAStack->getDeclareMapperVarRef(); if

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); doru1004 wrote: > doru1004 wrote:

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); doru1004 wrote: > ABataev wrote: >

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); ABataev wrote: > doru1004 wrote: >

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); doru1004 wrote: > ABataev wrote: >

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); doru1004 wrote: > ABataev wrote: >

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); ABataev wrote: > doru1004 wrote: >

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); doru1004 wrote: > ABataev wrote: >

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); ABataev wrote: > doru1004 wrote: >

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 updated this revision to Diff 490277. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141871/new/ https://reviews.llvm.org/D141871 Files: clang/include/clang/AST/OpenMPClause.h clang/include/clang/Basic/DiagnosticParseKinds.td

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/test/OpenMP/target_map_messages.cpp:970-979 + // ompx-error@+8 {{use of undeclared identifier 'itt'; did you mean 'it'?}} + // ompx-note@+7 {{'it' declared here}} + // omp-error@+6 {{use of undeclared identifier 'itt'; did you

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/test/OpenMP/target_map_messages.cpp:970-979 + // ompx-error@+8 {{use of undeclared identifier 'itt'; did you mean 'it'?}} + // ompx-note@+7 {{'it' declared here}} + // omp-error@+6 {{use of undeclared identifier 'itt'; did you

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/test/OpenMP/target_map_messages.cpp:970-979 + // ompx-error@+8 {{use of undeclared identifier 'itt'; did you mean 'it'?}} + // ompx-note@+7 {{'it' declared here}} + // omp-error@+6 {{use of undeclared identifier 'itt'; did you

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/include/clang/AST/OpenMPClause.h:5779-5780 + /// Has iterator modifier + bool HasIteratorModifier = false; + It can be removed Comment at: clang/test/OpenMP/target_map_messages.cpp:970-979 +

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-18 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 updated this revision to Diff 490188. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141871/new/ https://reviews.llvm.org/D141871 Files: clang/include/clang/AST/OpenMPClause.h clang/include/clang/Basic/DiagnosticParseKinds.td

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-17 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1166-1168 +return llvm::any_of(Top->IteratorVarDecls, [VD](const VarDecl *IteratorVD) { + return IteratorVD == VD->getCanonicalDecl(); +}); doru1004 wrote: > ABataev wrote: >

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-17 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 added inline comments. Comment at: clang/include/clang/Parse/Parser.h:3474-3475 bool parseMapperModifier(Sema::OpenMPVarListDataTy ); + /// Parses the iterator modifier in map clause. + bool parseIteratorModifier(Sema::OpenMPVarListDataTy ); /// Parses

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-17 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 updated this revision to Diff 489942. doru1004 marked 3 inline comments as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141871/new/ https://reviews.llvm.org/D141871 Files: clang/include/clang/AST/OpenMPClause.h clang/include/clang/Basic/DiagnosticParseKinds.td

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-17 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/include/clang/AST/OpenMPClause.h:5869-5870 +if (IteratorModifier) { + HasIteratorModifier = true; + getTrailingObjects()[2 * varlist_size()] = IteratorModifier; +} Can we use just a nullptr as a

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-17 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 updated this revision to Diff 489917. doru1004 marked 3 inline comments as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141871/new/ https://reviews.llvm.org/D141871 Files: clang/include/clang/AST/OpenMPClause.h clang/include/clang/Basic/DiagnosticParseKinds.td

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-17 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added a comment. Erroneous test are required Comment at: clang/include/clang/AST/OpenMPClause.h:310-314 + /// Fetches list of variables associated with this clause. + Expr *getIteratorRef() { +return (static_cast(this) +->template

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-17 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 updated this revision to Diff 489787. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141871/new/ https://reviews.llvm.org/D141871 Files: clang/include/clang/AST/OpenMPClause.h clang/include/clang/Basic/DiagnosticParseKinds.td

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-16 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/include/clang/AST/OpenMPClause.h:5780 + /// Iterator modifier + Expr *IteratorModifierExpr = nullptr; + We're using tail allocation for such objects. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D141871: [Clang][OpenMP] Add parse and sema for iterator map modifier

2023-01-16 Thread Gheorghe-Teodor Bercea via Phabricator via cfe-commits
doru1004 created this revision. doru1004 added reviewers: jdoerfert, ABataev, carlo.bertolli, ronl, gregrodgers, jhuber6. doru1004 added a project: OpenMP. Herald added subscribers: guansong, yaxunl. Herald added a project: All. doru1004 requested review of this revision. Herald added