Back in April we reported on the ambitious project by a lone, independent developer to write a GLSL IR to TGSI translator for Mesa
that wouldn't involve using Mesa's crufty IR. This work would also be a stepping-stone to GLSL 1.30 support in Mesa, which is needed for OpenGL 3.0 support in this critical free software project. Today the developer is reporting that he believes this translator is ready to be merged into Mesa.
Bryan Cain, the developer behind the GLSL to TGSI translator, wrote a status update
to the Mesa development list. In that email from today he announces that he feels the code is ready to be merged into Mesa. This GL Shading Language to TGSI (the Tungsten Graphics IR used by Gallium3D) translator is now deemed stable and doesn't produce any Piglit regression failures with the Softpipe or Nouveau (NV50) drivers.
This translator also adds in native integer support as required by the GLSL 1.30 specification, but the drivers do need to implement the respective TGSI opcode for this support.
Of course, this work is fairly invasive so it now must undergo review and it probably won't be merged in time for the Mesa 7.11 release that's planned for next month. "Developing this necessitated significant changes elsewhere in Mesa, and some small changes in Gallium. This means that some of the commits in my branch probably need to be reviewed by the developers of those components."
There's also the other work being done by the LunarG consulting company to create LunarGLASS
, which would use LLVM IR inside of Mesa as a competing design.
By the time of Mesa 7.12 (or Mesa 8.0 should the OpenGL 3.0 requirements be met) in January of 2012, this work should hopefully be sorted out and ready to be released. Right now this code is living in the "glsl-to-tgsi" branch of Mesa.