The SPIR registry contains specifications of the OpenCL Standard Portable Intermediate Representation, providing a non-source encoding and binary level portability for OpenCL device programs.
Open source software components supporting SPIR are available on Github. They include a modified Clang which generates SPIR from device programs written in OpenCL C in the SPIR repository, and related tools and headers in the SPIR-Tools repository,
The current version of SPIR is SPIR 2.0 Provisional.
Khronos welcomes comments and bug reports. To provide feedback, please file an issue in the SPIR-Registry Github project.