More Intel ARB_gl_spirv Code Lands In Mesa, But Still Not Ready To Finish Up OpenGL 4.6
As has been the case for months, the Intel "i965" OpenGL driver and the RadeonSI Gallium3D driver have been blocked from OpenGL 4.6 due to pending ABR_gl_spirv / ARB_spirv_extensions work. They have long ago completed the other OpenGL 4.6 extensions, but this big addition that allows SPIR-V to be used now within OpenGL has been a big undertaking for the open-source OpenGL drivers.
Intel developers and those at the Igalia consulting firm have been working on the GL SPIR-V support for months and landed several rounds of patches so far, including more today. Hitting Mesa 18.2 Git today were the latest batch of SPIR-V and NIR patches that allow for atomic storage to be exposed within the Intel OpenGL driver (for Gen 7+) and to use the new NIR atomic counter linker for SPIR-V shaders.
While they are getting closer to the finish line, they aren't there yet and it looks like it could still be a while before that race is over. Igalia's Alejandro Piñeiro briefly summed up the state as:
TL; DR: In summary there is a lot already done, but there is still work to do. In general, we tried to cover as much features as possible, and we are now dealing with the corner cases/specifics of each feature.
I give a more detailed, but somewhat quick/messy answer below. If you want a more structured/detailed answer I could it write tomorrow and send to the list.
As a reference, and after getting the atomic counters series pushed, our development branch has 66 patches.
Remaining are are XFB/geometry shaders, UBO/SSBO support, ARB_spirv_extensions enablement, support for arrays of arrays with UBOs/SSBOs, validations, GLSL shader cache integration, and other work. Plenty of testing is also necessary.
So while a lot has already landed, it doesn't look like they can cross the finish line soon. With Mesa 18.2 expected for branching around 20 July, presumably they won't meet that deadline for finishing up the i965 SPIR-V bits and thus no OpenGL 4.6 for this quarter's Mesa3D release. Hopefully we can see this milestone achieved then for Mesa 18.3 in Q4. Fortunately, there isn't any major Linux software that I am aware of right now requiring OpenGL 4.6 and meanwhile the Intel ANV Vulkan driver is in great shape anyhow.