ABataev added a comment.

In D65835#1624610 <https://reviews.llvm.org/D65835#1624610>, @jdenny wrote:

> In D65835#1624477 <https://reviews.llvm.org/D65835#1624477>, @ABataev wrote:
>
> > Try something like `target parallel firstprivate (a) map(a)`. Currently it 
> > will create a firstprivate copy of the variable a in target context thought 
> > it is not required at all. It may lead to increased register pressure and 
> > performance degradation.
>
>
> Thanks.  The only combination that appears to be affected is `firstprivate` 
> and `map` for scalar types.  I had only tried arrays and structs earlier, but 
> they're not affected. If I had looked a little more closely at the test case 
> this patch already introduced, I would have noticed that `int` is affected.  
> The problematic analysis is in sema, where there was an apparent assumption 
> that `firstprivate` wouldn't appear with `map` due to the previous 
> restriction.  This update fixes that.
>
> For my previous update, I meant to point out that I introduced a fixme into 
> the test suite.  See the phabricator summary for details.


This is wrong. It affects all possible combinations and not only fof scalar 
types, all of them are affected.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D65835



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

Reply via email to