yaxunl added a comment.

> Should we deprecate noduplicate then as convergent should cover both use 
> cases for OpenCL I believe? As far as I understand noduplicate was added 
> specifically for SPMD use cases...

noduplicate has different semantics than convergent. Although it is proposed 
for SPMD originally, it could be used by non-SPMD programs to forbid duplicate 
of functions. There may be applications using this attribute.

I would suggest to leave this question for future. Probably ask llvm-dev first 
since the attribute is also in LLVM.



================
Comment at: include/clang/Basic/AttrDocs.td:630
+  void convfunc(void) __attribute__((convergent));
+  // Setting it as a C++11 attribute is also valid in a C++ program.
+  // void convfunc(void) [[clang::convergent]];
----------------
Anastasia wrote:
> Did you mean "in an OpenCL program"?
No.
In C++ program only, it is also valid to set it as C++11 attribute.
OpenCL does not support C++11 attribute.


https://reviews.llvm.org/D25343



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

Reply via email to