summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaOpenMP.cpp
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2014-07-17 12:47:03 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2014-07-17 12:47:03 +0000
commit74ba3a5880e539e1a4641fcba7a2509fecb383e6 (patch)
tree9a78d60976a6cbb00b0b00af3c0d07c9ab1ea9df /clang/lib/Sema/SemaOpenMP.cpp
parent28d7b026873670ff533bf250a72125bce25af84d (diff)
downloadbcm5719-llvm-74ba3a5880e539e1a4641fcba7a2509fecb383e6.tar.gz
bcm5719-llvm-74ba3a5880e539e1a4641fcba7a2509fecb383e6.zip
[OPENMP] Initial parsing and sema analysis of 'mergeable' clause.
llvm-svn: 213262
Diffstat (limited to 'clang/lib/Sema/SemaOpenMP.cpp')
-rw-r--r--clang/lib/Sema/SemaOpenMP.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaOpenMP.cpp b/clang/lib/Sema/SemaOpenMP.cpp
index 85a9ccffd8c..9f63dbbc472 100644
--- a/clang/lib/Sema/SemaOpenMP.cpp
+++ b/clang/lib/Sema/SemaOpenMP.cpp
@@ -2069,6 +2069,7 @@ OMPClause *Sema::ActOnOpenMPSingleExprClause(OpenMPClauseKind Kind, Expr *Expr,
case OMPC_ordered:
case OMPC_nowait:
case OMPC_untied:
+ case OMPC_mergeable:
case OMPC_threadprivate:
case OMPC_unknown:
llvm_unreachable("Clause is not allowed.");
@@ -2270,6 +2271,7 @@ OMPClause *Sema::ActOnOpenMPSimpleClause(
case OMPC_ordered:
case OMPC_nowait:
case OMPC_untied:
+ case OMPC_mergeable:
case OMPC_threadprivate:
case OMPC_unknown:
llvm_unreachable("Clause is not allowed.");
@@ -2383,6 +2385,7 @@ OMPClause *Sema::ActOnOpenMPSingleExprWithArgClause(
case OMPC_ordered:
case OMPC_nowait:
case OMPC_untied:
+ case OMPC_mergeable:
case OMPC_threadprivate:
case OMPC_unknown:
llvm_unreachable("Clause is not allowed.");
@@ -2460,6 +2463,9 @@ OMPClause *Sema::ActOnOpenMPClause(OpenMPClauseKind Kind,
case OMPC_untied:
Res = ActOnOpenMPUntiedClause(StartLoc, EndLoc);
break;
+ case OMPC_mergeable:
+ Res = ActOnOpenMPMergeableClause(StartLoc, EndLoc);
+ break;
case OMPC_if:
case OMPC_final:
case OMPC_num_threads:
@@ -2499,6 +2505,11 @@ OMPClause *Sema::ActOnOpenMPUntiedClause(SourceLocation StartLoc,
return new (Context) OMPUntiedClause(StartLoc, EndLoc);
}
+OMPClause *Sema::ActOnOpenMPMergeableClause(SourceLocation StartLoc,
+ SourceLocation EndLoc) {
+ return new (Context) OMPMergeableClause(StartLoc, EndLoc);
+}
+
OMPClause *Sema::ActOnOpenMPVarListClause(
OpenMPClauseKind Kind, ArrayRef<Expr *> VarList, Expr *TailExpr,
SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation ColonLoc,
@@ -2547,6 +2558,7 @@ OMPClause *Sema::ActOnOpenMPVarListClause(
case OMPC_ordered:
case OMPC_nowait:
case OMPC_untied:
+ case OMPC_mergeable:
case OMPC_threadprivate:
case OMPC_unknown:
llvm_unreachable("Clause is not allowed.");
OpenPOWER on IntegriCloud