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