[cfe-dev] A proposal for adding OpenCL C++ support (Spec v2.2)

Anastasia Stulova via cfe-dev cfe-dev at lists.llvm.org
Fri Feb 23 08:29:00 PST 2018


Hello,


A number of developers from the member companies within the Khronos Group are interested to contribute the prototype implementation of OpenCL C++ that is currently located on github and based on version 3.6:

https://github.com/KhronosGroup/SPIR/commit/0cfb6f7533d42ae3398a8574efd8abbdac88ac44


This implementation is compliant to OpenCL v2.2 standard:

https://www.khronos.org/registry/OpenCL/specs/opencl-2.2-cplusplus.pdf

Similarly to OpenCL C being based on C99, OpenCL C++ support is entirely based on C++14 with a number of extensions (some of which will be shared with OpenCL C) and a few minor restrictions.


The plan would be to take small patches from the github repository and perform any necessary rework and clean up before putting up for review. From the OpenCL side, I don't see any issue with this plan as it doesn't interfere with any current development I am aware of, and also it would be great to progress to the next OpenCL standard. I just want to check if there are any objections from anyone or things we should be aware of before the start. I'm particularly looking for feedback from C++ implementers as there might be some overlap.


Additionally, there are two more related threads, which I plan to discuss separately. There is:

(i) standard library support libclcxx: https://github.com/KhronosGroup/libclcxx.

(ii) and IR generation to SPIRV: http://lists.llvm.org/pipermail/llvm-dev/2018-February/121317.html

that we would like to provide as well, in order to allow Clang to produce an end binary targeting a wider range of architectures directly (not just AMD GPU). We expect that the complete open source solution for OpenCL C++ will increase significantly Clang users and unify our development forces i.e. refactoring, bug hunting, etc. The plan would be to do similar for OpenCL C too at a later point of time.


Please, contact me if you have any thoughts or comments.


Cheers,

Anastasia
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20180223/09b3708a/attachment.html>


More information about the cfe-dev mailing list