If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

A Mesa Branch Provides GLSL IR To TGSI Translator

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...

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.

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.

It's quite testable already, actually. It's working on nv50 for me with no noticeable regressions.

Some testing using r600g would be really nice, since all of my development and testing is done using nv50.

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.