Anastasia added a comment.

In https://reviews.llvm.org/D38113#878852, @hfinkel wrote:

> In https://reviews.llvm.org/D38113#877874, @Anastasia wrote:
>
> > The problem of adding this attribute conservatively for all functions is 
> > that it prevents some optimizations to happen. I agree to commit this as a 
> > temporary fix to guarantee correctness of generated code.
>
>
> This is one of those unfortunate things we had to do for correctness in CUDA, 
> and the situation seems the same here. When we're not doing separate 
> compilation (which I imagine we're also generally not doing for OpenCL 
> complication), I'm under the impression that the attribute removal is fairly 
> effective.


I agree both communities would benefit so it feels like it might be worth the 
effort.

> 
> 
>> But if we ask to add the `convergent` attribute into the spec we can avoid 
>> doing this in the compiler?
> 
> But even if you do that, would that not be in a future version of OpenCL? If 
> so, for code complying to current standards, you'd need this behavior.

Yes, the fix is needed anyway to provide backwards compatibility.


https://reviews.llvm.org/D38113



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

Reply via email to