On 02/12/15 19:03, Thomas Schwinge wrote:
Hi!
Copying Nathan for your information, in case you had not yet seen that
gcc/gimplify.c:oacc_default_clause change:
On Fri, 27 Nov 2015 12:29:21 +0100, Tom de Vries<tom_devr...@mentor.com> wrote:
>The OpenACC 2.0a standard says this about the default mapping for
>variables used in a kernels region:
>...
>An array or variable of aggregate data type referenced in the kernels
>construct that does not appear in a data clause for the construct or
>any enclosing data construct will be treated as if it appeared in a
>present_or_copy clause for the kernels construct.
>
>A scalar variable referenced in the kernels construct that does not
>appear in a data clause for the construct or any enclosing data
>construct will be treated as if it appeared in a copy clause.
>...
>
>But atm, all variables including the scalar ones have 'present_or_copy'
>defaults.
>
>This patch makes sure scalar variables get the 'copy' default.
>
>Bootstrapped and reg-tested on x86_64. OK for stage3 trunk?
I see:
PASS: gfortran.dg/goacc/reduction-2.f95 -O scan-tree-dump-times gimple "acc
loop private.k. reduction..:a." 1
PASS: gfortran.dg/goacc/reduction-2.f95 -O scan-tree-dump-times gimple "acc
loop private.p. reduction..:a." 1
[-PASS:-]{+FAIL:+} gfortran.dg/goacc/reduction-2.f95 -O scan-tree-dump-times
gimple "target oacc_kernels map.tofrom:a .len: 4.." 1
PASS: gfortran.dg/goacc/reduction-2.f95 -O scan-tree-dump-times gimple
"target oacc_parallel firstprivate.a." 1
PASS: gfortran.dg/goacc/reduction-2.f95 -O (test for excess errors)
I guess that one needs to be updated?
Seems to have been fixed by Cesar in r231204.
Thanks,
- Tom