Lines Matching refs:clauses
3 sharing and copying clauses, offloading to accelerators, and more.
67 clauses. The second phase expands code for the constructs, as well as
122 /* A hash map from the reduction clauses to the registered array
134 /* A tree_list of the reduction clauses in this context. This is
136 clauses in scan_omp_for and is not guaranteed to contain a valid
140 /* A tree_list of the reduction clauses in outer contexts. This is
142 clauses in scan_omp_for and is not guaranteed to contain a valid
691 even private vars in its linear etc. clauses.
1142 specified by CLAUSES. */
1145 scan_sharing_clauses (tree clauses, omp_context *ctx)
1150 for (c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
1167 for (c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
1226 /* Collect 'reduction' clauses on OpenACC compute construct. */
1230 /* No 'reduction' clauses on OpenACC 'kernels'. */
1756 for (c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
1957 for (c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
2161 clauses on OpenMP parallel or task. */
2187 /* If there are lastprivate clauses on the inner
2258 are copyin clauses. */
2418 OMP_CLAUSE_SHARED clauses on GIMPLE_OMP_{PARALLEL,TASK,TEAMS}
2464 tree clauses = gimple_omp_parallel_clauses (ctx->stmt);
2465 tree c = omp_find_clause (clauses, OMP_CLAUSE__REDUCTEMP_);
2517 tree clauses = gimple_omp_task_clauses (ctx->stmt);
2518 tree c1 = omp_find_clause (clauses, OMP_CLAUSE__LOOPTEMP_);
2521 tree c3 = omp_find_clause (clauses, OMP_CLAUSE__REDUCTEMP_);
2654 /* Check the parallelism clauses inside a OpenACC 'kernels' region.
2725 tree clauses = gimple_omp_for_clauses (stmt);
2734 for (tree c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
2863 tree *prev_ptr = &clauses;
2875 gimple_omp_for_set_clauses (stmt, clauses);
2879 scan_sharing_clauses (clauses, ctx);
3059 tree clauses = gimple_omp_target_clauses (stmt);
3078 scan_sharing_clauses (clauses, ctx);
3469 tree clauses
3471 if (!omp_find_clause (clauses, OMP_CLAUSE_NOGROUP))
4204 tree clauses = gimple_omp_for_clauses (as_a <gomp_for *> (stmt));
4205 tree c = omp_find_clause (clauses, OMP_CLAUSE_REDUCTION);
4237 if (tree clauses = gimple_omp_scan_clauses (as_a <gomp_scan *> (stmt)))
4239 if (OMP_CLAUSE_CODE (clauses) == OMP_CLAUSE_INCLUSIVE)
4241 else if (OMP_CLAUSE_CODE (clauses) == OMP_CLAUSE_EXCLUSIVE)
4310 clauses found during the scan. */
4867 /* Generate code to implement the input clauses, FIRSTPRIVATE and COPYIN,
4873 lower_rec_input_clauses (tree clauses, gimple_seq *ilist, gimple_seq *dlist,
4890 sctx.is_simt = is_simd && omp_find_clause (clauses, OMP_CLAUSE__SIMT_);
4893 with data sharing clauses referencing variable sized vars. That
4897 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
4990 /* For reduction clauses, build
5001 c = omp_find_clause (clauses, OMP_CLAUSE__REDUCTEMP_);
5023 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
5101 /* Handle _looptemp_/_reductemp_ clauses only on
5819 expansion ICE. Ditto for other privatization clauses. */
6159 tree ct = omp_find_clause (clauses,
6833 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
6999 lastprivate clauses we need to ensure the lastprivate copying
7036 in context CTX with CLAUSES. */
7039 lower_lastprivate_conditional_clauses (tree *clauses, omp_context *ctx)
7046 tree next = *clauses;
7047 for (tree c = *clauses; c; c = OMP_CLAUSE_CHAIN (c))
7067 OMP_CLAUSE_CHAIN (c3) = *clauses;
7068 *clauses = c3;
7088 tree c2 = omp_find_clause (*clauses, OMP_CLAUSE__CONDTEMP_);
7105 OMP_CLAUSE_CHAIN (c2) = *clauses;
7106 *clauses = c2;
7132 /* Generate code to implement the LASTPRIVATE clauses. This is used for
7140 lower_lastprivate_clauses (tree clauses, tree predicate, gimple_seq *body_p,
7144 tree x, c, label = NULL, orig_clauses = clauses;
7150 /* Early exit if there are no lastprivate or linear clauses. */
7151 for (; clauses ; clauses = OMP_CLAUSE_CHAIN (clauses))
7152 if (OMP_CLAUSE_CODE (clauses) == OMP_CLAUSE_LASTPRIVATE
7153 || (OMP_CLAUSE_CODE (clauses) == OMP_CLAUSE_LINEAR
7154 && !OMP_CLAUSE_LINEAR_NO_COPYOUT (clauses)))
7156 if (clauses == NULL)
7159 with its parallel. In that case, look for the clauses on the
7168 clauses = omp_find_clause (gimple_omp_parallel_clauses (ctx->stmt),
7170 if (clauses == NULL)
7228 for (c = clauses; c ;)
7395 clauses also on the parallel statement itself. */
7414 /* Lower the OpenACC reductions of CLAUSES for compute axis LEVEL
7430 lower_oacc_reductions (location_t loc, tree clauses, tree level, bool inner,
7443 for (tree c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
7446 /* No 'reduction' clauses on OpenACC 'kernels'. */
7488 /* No 'reduction' clauses inside OpenACC 'kernels'
7652 /* Generate code to implement the REDUCTION clauses, append it
7659 lower_reduction_clauses (tree clauses, gimple_seq *stmt_seqp,
7682 for (c = clauses; c && count < 2; c = OMP_CLAUSE_CHAIN (c))
7699 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
7958 /* Generate code to implement the COPYPRIVATE clauses. */
7961 lower_copyprivate_clauses (tree clauses, gimple_seq *slist, gimple_seq *rlist,
7966 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
8007 /* Generate code to implement the clauses, FIRSTPRIVATE, COPYIN, LASTPRIVATE,
8011 lower_send_clauses (tree clauses, gimple_seq *ilist, gimple_seq *olist,
8018 /* For taskloop, ignore first two _looptemp_ clauses, those are initialized
8026 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
8281 lower_oacc_head_mark (location_t loc, tree ddvar, tree clauses,
8292 for (tree c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
8417 /* Generate the before and after OpenACC loop sequences. CLAUSES are
8418 the loop clauses, from which we extract reductions. Initialize
8422 lower_oacc_head_tail (location_t loc, tree clauses, gcall *private_marker,
8429 unsigned count = lower_oacc_head_mark (loc, ddvar, clauses, head, ctx);
8467 lower_oacc_reductions (loc, clauses, place, inner,
8551 omp_task_reductions_find_first (tree clauses, enum tree_code code,
8556 clauses = omp_find_clause (clauses, ccode);
8557 if (clauses == NULL_TREE)
8561 || OMP_CLAUSE_REDUCTION_TASK (clauses))
8562 return clauses;
8563 clauses = OMP_CLAUSE_CHAIN (clauses);
9063 /* Lower task_reduction and reduction clauses (the latter unless CODE is
9068 lower_omp_task_reductions (omp_context *ctx, enum tree_code code, tree clauses,
9075 clauses = omp_task_reductions_find_first (clauses, code, ccode);
9076 if (clauses == NULL_TREE)
9113 for (tree c = clauses;
9292 for (tree c = clauses;
9712 /* Merge depend clauses from multiple adjacent
9742 /* Canonicalize sink dependence clauses into one folded clause if
9754 ignore sink clauses where the loop direction is unknown, or where
9925 /* Ordered without clauses is #pragma omp threads, while we want
9926 a nop instead if we remove all clauses. */
9956 all the depend clauses to be merged still might need to be available
10066 /* For exclusive scan, swap GIMPLE_OMP_SCAN without clauses
10067 with following GIMPLE_OMP_SCAN with clauses, so that input_phase,
10457 tree clauses, cond, vinit;
10533 clauses = gimple_omp_for_clauses (fd->for_stmt);
10535 lower_lastprivate_clauses (clauses, cond, body_p, &stmts, clist, ctx);
10551 any iterations don't execute the lastprivate clauses by accident. */
10706 /* Scan CLAUSES for candidates for adjusting OpenACC privatization level in
10710 oacc_privatization_scan_clause_chain (omp_context *ctx, tree clauses)
10712 for (tree c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
10807 // The _scantemp_ clauses will arrange for rpriva to be initialized to
11688 tree clauses = *pc;
11722 decls in _looptemp_ clauses, because the outer stmt
11737 *pc = clauses;
11740 /* The pre-body and input clauses go before the lowered GIMPLE_OMP_FOR. */
11826 /* Once lowered, extract the bounds and clauses. */
11865 /* After the loop, add exit clauses. */
12161 /* Fields for first two _looptemp_ clauses are initialized by
12321 tree c, clauses;
12325 clauses = omp_find_clause (*pclauses, OMP_CLAUSE_DEPEND);
12326 gcc_assert (clauses);
12327 for (c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
12381 for (c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
12433 tree clauses;
12440 clauses = gimple_omp_taskreg_clauses (stmt);
12470 && omp_find_clause (clauses, OMP_CLAUSE_DEPEND))
12521 lower_rec_input_clauses (clauses, &par_ilist, &par_olist, ctx, NULL);
12524 lower_reduction_clauses (clauses, &par_rlist, NULL, ctx);
12544 lower_send_clauses (clauses, &ilist, &olist, ctx);
12610 tree clauses;
12662 clauses = gimple_omp_target_clauses (stmt);
12666 bool has_depend = omp_find_clause (clauses, OMP_CLAUSE_DEPEND) != NULL_TREE;
12693 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
12847 /* No 'firstprivate' clauses on OpenACC 'kernels'. */
12881 /* No 'private' clauses on OpenACC 'kernels'. */
13005 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
13560 for (c = clauses; c ; c = OMP_CLAUSE_CHAIN (c))
13808 for (c = clauses; c; c = OMP_CLAUSE_CHAIN (c))
13988 lower_oacc_reductions (gimple_location (ctx->stmt), clauses, level,
14428 tree clauses;
14436 clauses = gimple_omp_for_clauses (up->stmt);
14438 clauses = gimple_omp_sections_clauses (up->stmt);
14439 tree c = omp_find_clause (clauses, OMP_CLAUSE__CONDTEMP_);