[Mesa-dev] [PATCH 0/7] Refactor uniform initializer handling

Ian Romanick idr at freedesktop.org
Thu Apr 12 17:25:36 PDT 2012


This was a bit of follow-on work that I had wanted to do back when I
did all the other uniform rework.  Setting the initial values for
uniforms (that have initializers in the GLSL code) is moved from
ir_to_mesa to the linker.

In addition, support for initializers on samplers is added.  This
gives some small simplification in the ff_fragment_shader code.  It
will also make re-working the ARB_fragment_program compiler to use
GLSL IR a bit easier.  In the future, it may also be used to support
sampler "bindings" from GL_ARB_shading_language_420pack.

I would also like to eventually eliminate the extra indirection of
gl_shader_program::SamplerUnits and gl_program::TexturesUsed.  That
code is intertwined with a bunch of other stuff, and it may have to
wait a bit.

The supplied unit tests hit most of the cases *except* structures.  I
intend to add structure tests, but I want to wait until some of Eric's
ir_builder work lands.  I suspect I'll end up extending that work to
make building structures a bit easier as well.



More information about the mesa-dev mailing list