From: Marek O. <ma...@gm...> - 2010-04-03 22:58:44
|
On Sun, Apr 4, 2010 at 12:10 AM, Zack Rusin <za...@vm...> wrote: > I thought the initial proposal was likely a lot more feasible for a GSOC > (of > course there one has to point out that Mesa's GLSL compiler already does > unroll loops and in general simplifies control-flow so the points #1 and #2 > are > largely no-ops, but surely there's enough work on Gallium Radeon's drivers > left to keep Tom busy). Otherwise having a well-defined and reduced scope > with > clear deliverables would be rather necessary for LLVM->TGSI code because > that > is not something that you could get rock solid over a summer. > It doesn't seem to simplify branches or unroll loops that much, if at all. It fails even for the simplest cases like this one: if (gl_Vertex.x < 30.0) gl_FrontColor = vec4(1.0, 0.0, 0.0, 0.0); else gl_FrontColor = vec4(0.0, 1.0, 0.0, 0.0); This gets translated to TGSI "as is", which is fairly... you know what. -Marek |