Khronos SPIR Registry

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,

SPIR Specification, Headers, and Documentation

The current version of SPIR is SPIR 2.0 Provisional.

Older Versions
Providing Feedback on the Registry

Khronos welcomes comments and bug reports. To provide feedback, please file an issue in the SPIR-Registry Github project.