[Openmp-commits] [PATCH] D76211: OpenMP Metadirective with user defined condition
Alexey Bataev via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Tue Mar 17 11:49:28 PDT 2020
ABataev added inline comments.
================
Comment at: clang/include/clang/AST/OpenMPClause.h:863
+/// clause with user defined condition.
+class OMPWhenClause : public OMPClause {
+ friend class OMPClauseReader;
----------------
`final`
================
Comment at: clang/include/clang/AST/OpenMPClause.h:866
+
+ Expr *expr;
+ OpenMPDirectiveKind DKind;
----------------
Reformat the patch
================
Comment at: clang/include/clang/AST/OpenMPClause.h:868
+ OpenMPDirectiveKind DKind;
+ SmallVector<OMPClause *, 5> Clauses;
+
----------------
Bad idea. If you need to store other clauses in this clause, use tail allocation.
================
Comment at: clang/include/clang/AST/OpenMPClause.h:906
+ /// Returns the clauses associated with the directive variants
+ SmallVector<OMPClause *, 5> getClauses() { return Clauses; }
+
----------------
Must return `ArrayRef`
================
Comment at: clang/include/clang/AST/StmtOpenMP.h:348
+class OMPMetaDirective : public OMPExecutableDirective {
+ friend class ASTStmtReader;
----------------
1. `final`
2. Comments?
================
Comment at: clang/include/clang/AST/StmtOpenMP.h:350
+ friend class ASTStmtReader;
+ Stmt* IfStmt;
+
----------------
This must be a part of the tail-allocated data members, otherwise you won't be able to correctly handle list of children nodes
================
Comment at: clang/lib/Serialization/ASTReader.cpp:11902
+ C->setExpr(Record.readSubExpr());
+ C->setLParenLoc(Record.readSourceLocation());
+}
----------------
Serialization for inner clauses
================
Comment at: clang/test/OpenMP/metadirective_default.c:1-13
+#include <stdio.h>
+#include <omp.h>
+
+int main()
+{
+ int N = 5;
+#pragma omp metadirective when(user={condition(N>10)}: parallel) \
----------------
This is not a test, check other files in this directory
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D76211/new/
https://reviews.llvm.org/D76211
More information about the Openmp-commits
mailing list