ABataev added a comment.

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

> In D65835#1639612 <https://reviews.llvm.org/D65835#1639612>, @ABataev wrote:
>
> > In D65835#1639593 <https://reviews.llvm.org/D65835#1639593>, @jdenny wrote:
> >
> > > In D65835#1639585 <https://reviews.llvm.org/D65835#1639585>, @ABataev 
> > > wrote:
> > >
> > > > In D65835#1639584 <https://reviews.llvm.org/D65835#1639584>, @jdenny 
> > > > wrote:
> > > >
> > > > > I want to be sure we're on the same page.  Due to the changes I just 
> > > > > backed out, the following two examples now generate different code:
> > > > >
> > > > >   int a = 0;
> > > > >   #pragma omp target map(a)
> > > > >   #pragma omp teams firstprivate(a)
> > > > >     ;
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >   int a = 0;
> > > > >   #pragma omp target teams firstprivate(a) map(a)
> > > > >     ;
> > > > >
> > > > >
> > > > > The difference is whether `a` is passed by reference (the first case) 
> > > > > or value (the second case) to the offloading function.
> > > > >
> > > > > Is that fine for you?
> > > >
> > > >
> > > > No, this is what I warned about. We shall have the same codegen just 
> > > > like in the first case, the value must be passed by reference and 
> > > > mapped as tofrom.
> > >
> > >
> > > If I add back those changes I just backed out, we get the same codegen.  
> > > Is that what you want?
> >
> >
> > Those 2 cases must result in the same codegen. But I rather doubt we need 
> > your previous changes. Check `Sema::isOpenMPCapturedByRef` instead, 
> > required functionality must be handled in this function.
>
>
> That's the focus of my previous changes.  The rest just supports the changes 
> there.


We don't need this new level counter to correctly handle this situation. Just 
check for the combined target directive in `Sema::isOpenMPCapturedByRef` and 
return true if it is mapped as to from or just from. The change must be very 
simple.


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