[patch,gomp4] make fortran loop variables implicitly private in openacc
Mon Sep 8 06:26:00 GMT 2014
sorry for the slow review.
On 22 August 2014 17:08, Cesar Philippidis wrote:
>> In OpenMP, one has (OMP 4.0, 2.14.3): "A list item that specifies a
>> given variable may not appear in more than one clause on the same
>> directive, except that a variable may be specified in both firstprivate
>> and lastprivate clauses."
>> And in 22.214.171.124, OpenMP has: "List items that appear in a private,
>> firstprivate, or reduction clause in a parallel construct may also
>> appear in a private clause in an enclosed parallel,task, or worksharing,
>> or simd construct.
>> I tried to find it in something similar in OpenACC - but I failed. I
>> found in (OpenACC 2.0a, 2.7.11) a reference to reduction with private,
>> which implies that a reduction variable my be private, but I didn't find
>> much more. In particular, it is not clear to me whether it would permit
>> only those which are private implicitly or in an oacc parallel region or
>> also in an explicit private clause in the same directive. Can you point
>> me to the spec?
> I'm not sure. I sent an email to the openacc technical mailing list, but
> I haven't heard back from them.
Any new on this?
> Is this patch ok for gomp-4_0-branch?
Looks good to me.
PS: Looking at
+ for (n = clauses->lists[OMP_LIST_PRIVATE]; n; n = n->next)
I was stumbing a bit until I realized that OMP_LIST_PRIVATE is the first
element. I wonder whether one should have something like OMP_LIST_FIRST
= OMP_LIST_PRIVATE and OMP_LIST_LAST = OMP_LIST_NUM (or
OMP_LIST_FIRST_ENUM or ...) which avoids the implicit knowledge which
comes first in the enum.
More information about the Gcc-patches