Clarify gcc/gimplify.c:oacc_default_clause
gcc/ * gimplify.c (oacc_default_clause): Clarify. From-SVN: r248279
This commit is contained in:
parent
9740ed54a6
commit
0d0afa9faf
2 changed files with 26 additions and 18 deletions
|
@ -1,3 +1,7 @@
|
|||
2017-05-19 Thomas Schwinge <thomas@codesourcery.com>
|
||||
|
||||
* gimplify.c (oacc_default_clause): Clarify.
|
||||
|
||||
2017-05-19 Nathan Sidwell <nathan@acm.org>
|
||||
|
||||
LANG_HOOK_REGISTER_DUMPS
|
||||
|
|
|
@ -6952,30 +6952,34 @@ oacc_default_clause (struct gimplify_omp_ctx *ctx, tree decl, unsigned flags)
|
|||
|
||||
switch (ctx->region_type)
|
||||
{
|
||||
default:
|
||||
gcc_unreachable ();
|
||||
|
||||
case ORT_ACC_KERNELS:
|
||||
/* Scalars are default 'copy' under kernels, non-scalars are default
|
||||
'present_or_copy'. */
|
||||
flags |= GOVD_MAP;
|
||||
if (!AGGREGATE_TYPE_P (type))
|
||||
flags |= GOVD_MAP_FORCE;
|
||||
|
||||
rkind = "kernels";
|
||||
|
||||
if (AGGREGATE_TYPE_P (type))
|
||||
/* Aggregates default to 'present_or_copy'. */
|
||||
flags |= GOVD_MAP;
|
||||
else
|
||||
/* Scalars default to 'copy'. */
|
||||
flags |= GOVD_MAP | GOVD_MAP_FORCE;
|
||||
|
||||
break;
|
||||
|
||||
case ORT_ACC_PARALLEL:
|
||||
{
|
||||
if (on_device || AGGREGATE_TYPE_P (type) || declared)
|
||||
/* Aggregates default to 'present_or_copy'. */
|
||||
flags |= GOVD_MAP;
|
||||
else
|
||||
/* Scalars default to 'firstprivate'. */
|
||||
flags |= GOVD_FIRSTPRIVATE;
|
||||
rkind = "parallel";
|
||||
}
|
||||
rkind = "parallel";
|
||||
|
||||
if (on_device || declared)
|
||||
flags |= GOVD_MAP;
|
||||
else if (AGGREGATE_TYPE_P (type))
|
||||
/* Aggregates default to 'present_or_copy'. */
|
||||
flags |= GOVD_MAP;
|
||||
else
|
||||
/* Scalars default to 'firstprivate'. */
|
||||
flags |= GOVD_FIRSTPRIVATE;
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
gcc_unreachable ();
|
||||
}
|
||||
|
||||
if (DECL_ARTIFICIAL (decl))
|
||||
|
|
Loading…
Add table
Reference in a new issue