I figured this would become a Phoronix article. Anyway, I'm the author of the GLSL IR to TGSI translator that this article is about.
Not sure why Michael didn't mention my name a single time in the entire article, though.
Phoronix: A Mesa Branch Provides GLSL IR To TGSI Translator
What's been talked about extensively and for quite a while but not acted upon too much is ridding Mesa of Mesa IR, it's intermediate representation used internally by core Mesa and its drivers. It was also talked about as a possible summer project of replacing Mesa IR with GLSL IR. Now though an individual has begun gutting out Mesa IR and providing a direct GL Shading Language IR to TGSI (the Gallium3D IR) translator...
http://www.phoronix.com/vr.php?view=OTM5Mw
I figured this would become a Phoronix article. Anyway, I'm the author of the GLSL IR to TGSI translator that this article is about.
Not sure why Michael didn't mention my name a single time in the entire article, though.
Best of luck in this effort! Once you have something that's somewhat testable, let Michael know so he can put out an article about it. I don't know if you will need to write driver-specific code for this work (for r600g, r300g, i965g, svga, nouveau, etc) -- but if not, I will be able to help test on r600g/evergreen and i965g and svga. And if you do need driver-specific code, be sure to ask the individual driver maintainers to take a look and see if they can help with that.
i'll test it with my rv620 chipset (r600g) .
Thanks for your works !
Hi, this is great news!
But what are the main differences between the Plombo and the LunarGLASS versions?
Think of a line between the common code in Mesa and the HW-specific driver code.
Plombo's work is "above the line", shortening the path used to generate TGSI from GLSL by going from GLSL IR directly to TGSI rather than the current GLSL IR => Mesa IR => TGSI path.
Most of the LunarGlass work so far has been "below the line", implementing a more flexible mechanism for converting and optimizing a HW-independent IR (such as TGSI) into HW-specific instructions.
I've just pushed to my branch again. Before, the translator still generated Mesa IR that wasn't ultimately used, but still depended on some information from it. Now, that information has been moved elsewhere in the translator, so I was able to remove the generation of Mesa IR instructions completely.![]()