summaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@codesourcery.com>2015-04-29 17:44:41 +0200
committerThomas Schwinge <tschwinge@gcc.gnu.org>2015-04-29 17:44:41 +0200
commitb811915de18ac5837e60898cf05cbb428dc35ead (patch)
tree5d32459e9ed3ee300bc31e8c1358d46db24be2d7 /gcc/tree.h
parentf970a17d6fc79eda660c78632ceff35d814933a8 (diff)
downloadgcc-b811915de18ac5837e60898cf05cbb428dc35ead.tar.gz
Add OMP_STANDALONE_CLAUSES.
gcc/ * tree.h (OMP_STANDALONE_CLAUSES): New macro. * gimplify.c (gimplify_omp_workshare): Use it. gcc/c/ * c-parser.c (c_parser_oacc_enter_exit_data): Use OMP_STANDALONE_CLAUSES. gcc/cp/ * parser.c (cp_parser_oacc_enter_exit_data): Use OMP_STANDALONE_CLAUSES. From-SVN: r222580
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index 2ec970884b6..e17bd9b1109 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1197,11 +1197,17 @@ extern void protected_set_expr_location (tree, location_t);
/* OpenMP and OpenACC directive and clause accessors. */
+/* Generic accessors for OMP nodes that keep the body as operand 0, and clauses
+ as operand 1. */
#define OMP_BODY(NODE) \
TREE_OPERAND (TREE_RANGE_CHECK (NODE, OACC_PARALLEL, OMP_CRITICAL), 0)
#define OMP_CLAUSES(NODE) \
TREE_OPERAND (TREE_RANGE_CHECK (NODE, OACC_PARALLEL, OMP_SINGLE), 1)
+/* Generic accessors for OMP nodes that keep clauses as operand 0. */
+#define OMP_STANDALONE_CLAUSES(NODE) \
+ TREE_OPERAND (TREE_RANGE_CHECK (NODE, OACC_CACHE, OMP_TARGET_UPDATE), 0)
+
#define OACC_PARALLEL_BODY(NODE) \
TREE_OPERAND (OACC_PARALLEL_CHECK (NODE), 0)
#define OACC_PARALLEL_CLAUSES(NODE) \