[PATCH] D12246: [NVPTX] change threading intrinsics from noduplicate to convergent

escha via llvm-commits llvm-commits at lists.llvm.org
Sat Aug 29 03:29:37 PDT 2015


> On Aug 28, 2015, at 11:01 PM, Owen Anderson <resistor at mac.com> wrote:
> 
> 
>> On Aug 28, 2015, at 6:22 PM, Bjarke Roune <broune at google.com <mailto:broune at google.com>> wrote:
>> 
>> The langref doesn't give semantics for when instructions marked convergent can be duplicated, only for when they can be moved. Owen, do you have some semantics for this in mind?
> 
> I deliberately didn’t add any constraints on duplication, both because IME it’s difficult to deal with in practice, and because I have use cases in mind that don’t care about duplication the way that a barrier does.
> 
> —Owen

Would it be correct to say a barrier needs noduplicate if it uses a particular argument to represent a particular barrier counter, whereas if the barrier has no such argument, it could be marked convergent-only?

So you could loop-unroll the latter, but not the former.

—escha
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150829/8bfab12d/attachment.html>


More information about the llvm-commits mailing list