Mesa 20.3 Can Now Consume SPIR-V Binaries Generated By LLVM's libclc

Written by Michael Larabel in Microsoft on 26 September 2020 at 10:02 AM EDT. 18 Comments
Microsoft's work on Mesa continues with a Microsoft engineer reviving earlier work carried out by David Airlie for allowing SPIR-V binaries produced by LLVM's libclc library to work with Mesa OpenCL.

Libclc is the LLVM library around OpenCL C programming language support and goes along with Clang's OpenCL front-end. Jesse Natalie of Microsoft has seen his two month old merge request land on Friday for being able to make use of libclc SPIR-V binaries that can be used by Mesa OpenCL code. Ultimately this code in part allows converting a libclc SPIR-V library into a set of NIR functions. Earlier this year the effort was started by Red Hat's David Airlie for being able to support a SPIR-V library generated from libclc to implement OpenCL runtime functions. Microsoft though pursued the work over the finish as part of their effort for getting OpenCL over Direct3D 12 (and OpenGL).

This work also required patches to LLVM that were recently moved including the addition of the libclc SPIR-V target, overload/mangling for all OpenCL built-insm and other changes. This support for using libclc SPIR-V will be part of next quarter's Mesa 20.3 release.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week