ABataev added a comment.

In D86119#2330601 <https://reviews.llvm.org/D86119#2330601>, @jdenny wrote:

> In D86119#2330339 <https://reviews.llvm.org/D86119#2330339>, @ABataev wrote:
>
>> In D86119#2330310 <https://reviews.llvm.org/D86119#2330310>, @jdenny wrote:
>>
>>> Thanks for working on this.  Sorry to take so long to review.  Before I try 
>>> to digest the code, I have a few high-level questions.
>>>
>>> Based on the test suite changes, `TARGET_PARAM` is disappearing from many 
>>> cases.  Can you explain a bit how that supports overlapping and reordering?
>>
>> `TARGET_PARAM` is used only for marking the data that should be passed to 
>> the kernel function as an argument. We just generate it in many cases but 
>> the runtime actually does not use them. Thу patch relies on this thing, 
>> otherwise, we may pass an incorrect number of arguments to the kernel 
>> functions.
>
> Is it reasonable to extract that change into a parent patch?  That would at 
> least make the test suite changes easier to follow.

I'll see what I can do about it.

>>> Have you considered issue 2337 for the OpenMP spec and how your 
>>> implementation handles the ambiguous cases cited there?
>>
>> Can you provide the details about this issue?
>
> It discusses ambiguities in the way the spec describes map clause ordering.  
> Here's one example relevant to `present`:
>
>   #pragma omp target exit data map(from: x) map(present, release: x)
>
> One statement in the spec says a map clause with `from` is effectively 
> ordered before one with `release`.  Another statement says a map clause with 
> `present` is effectively ordered before one without.  Which applies in the 
> above example?  In some discussions, people agreed the statement about 
> `present` was intended to have precedence, but the spec doesn't say that.  
> That resolution probably makes sense at entry to a region, but does it make 
> sense at exit?  Would it suppress `from` in this example?  (Actually, should 
> there be two reference counter decrements in this example or just one?)
>
> These ambiguities are the reason I punted on this issue when implementing 
> `present`.  If we can come up with a reasonable implementation for all cases, 
> perhaps we can propose a new wording for the spec.

In tgis implementation, the mapping withthe present modifier will be ordered to 
be the first.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D86119/new/

https://reviews.llvm.org/D86119

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to