summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/StmtPrinter.cpp
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2015-08-20 10:54:39 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2015-08-20 10:54:39 +0000
commit182227bd5bdc23c82ce90bfcd11b3d8a9575f299 (patch)
tree5f1d853042845f536f2bcbfd132fa53fc7676526 /clang/lib/AST/StmtPrinter.cpp
parentfcdb1c14ac8e70cf5d92cdc611262c410ead7385 (diff)
downloadbcm5719-llvm-182227bd5bdc23c82ce90bfcd11b3d8a9575f299.tar.gz
bcm5719-llvm-182227bd5bdc23c82ce90bfcd11b3d8a9575f299.zip
[OPENMP 4.1] Initial support for modifiers in 'linear' clause.
OpenMP 4.1 adds 3 optional modifiers to 'linear' clause. Format of 'linear' clause has changed to: ``` linear(linear-list[ : linear-step]) ``` where linear-list is one of the following ``` list modifier(list) ``` where modifier is one of the following: ``` ref (C++) val (C/C++) uval (C++) ``` Patch adds parsing and sema analysis for these modifiers. llvm-svn: 245550
Diffstat (limited to 'clang/lib/AST/StmtPrinter.cpp')
-rw-r--r--clang/lib/AST/StmtPrinter.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/AST/StmtPrinter.cpp b/clang/lib/AST/StmtPrinter.cpp
index 64f90ba951d..fb5fcc4902d 100644
--- a/clang/lib/AST/StmtPrinter.cpp
+++ b/clang/lib/AST/StmtPrinter.cpp
@@ -767,7 +767,13 @@ void OMPClausePrinter::VisitOMPReductionClause(OMPReductionClause *Node) {
void OMPClausePrinter::VisitOMPLinearClause(OMPLinearClause *Node) {
if (!Node->varlist_empty()) {
OS << "linear";
+ if (Node->getModifierLoc().isValid()) {
+ OS << '('
+ << getOpenMPSimpleClauseTypeName(OMPC_linear, Node->getModifier());
+ }
VisitOMPClauseList(Node, '(');
+ if (Node->getModifierLoc().isValid())
+ OS << ')';
if (Node->getStep() != nullptr) {
OS << ": ";
Node->getStep()->printPretty(OS, nullptr, Policy, 0);
OpenPOWER on IntegriCloud