libclc is an open source, BSD/MIT dual licensedimplementation of the library requirements of theOpenCL C programming language, as specified by theOpenCL1.1 Specification. The following sections of the specificationimpose library requirements:
libclc is intended to be used with theClangcompiler's OpenCL frontend.
libclc is designed to be portable and extensible. To this end,it provides generic implementations of most library requirements,allowing the target to override the generic implementation at thegranularity of individual functions.
libclc currently supports the AMDGCN, and R600 and NVPTX targets, butsupport for more targets is welcome.