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

Jingyue Wu via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 21 13:38:59 PDT 2015


jingyue added a comment.

The changes to JumpThreading looks good to me.

But changing noduplicate to convergent is tricky. In general, the convergent attribute is not enough for `__syncthreads`. A compiler is allowed to unroll a loop that contains convergent instructions, because if they were control-equivalent before unrolling, they will still be afterwards. However, as Bjarke pointed out, it's unsafe to blindly unroll a loop that contains `__syncthreads`.


http://reviews.llvm.org/D12246





More information about the llvm-commits mailing list