diff options
Diffstat (limited to 'gcc/tree-streamer-out.c')
-rw-r--r-- | gcc/tree-streamer-out.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/tree-streamer-out.c b/gcc/tree-streamer-out.c index 55abd3c..ac798a3 100644 --- a/gcc/tree-streamer-out.c +++ b/gcc/tree-streamer-out.c @@ -395,6 +395,8 @@ pack_ts_omp_clause_value_fields (struct output_block *ob, OMP_CLAUSE_PROC_BIND_KIND (expr)); break; case OMP_CLAUSE_REDUCTION: + case OMP_CLAUSE_TASK_REDUCTION: + case OMP_CLAUSE_IN_REDUCTION: bp_pack_enum (bp, tree_code, MAX_TREE_CODES, OMP_CLAUSE_REDUCTION_CODE (expr)); break; @@ -836,12 +838,18 @@ write_ts_omp_clause_tree_pointers (struct output_block *ob, tree expr, int i; for (i = 0; i < omp_clause_num_ops[OMP_CLAUSE_CODE (expr)]; i++) stream_write_tree (ob, OMP_CLAUSE_OPERAND (expr, i), ref_p); - if (OMP_CLAUSE_CODE (expr) == OMP_CLAUSE_REDUCTION) + switch (OMP_CLAUSE_CODE (expr)) { + case OMP_CLAUSE_REDUCTION: + case OMP_CLAUSE_TASK_REDUCTION: + case OMP_CLAUSE_IN_REDUCTION: /* We don't stream these right now, handle it if streaming of them is needed. */ gcc_assert (OMP_CLAUSE_REDUCTION_GIMPLE_INIT (expr) == NULL); gcc_assert (OMP_CLAUSE_REDUCTION_GIMPLE_MERGE (expr) == NULL); + break; + default: + break; } stream_write_tree (ob, OMP_CLAUSE_CHAIN (expr), ref_p); } |