Thanks Tapani! Reviewed-by: Samuel Iglesias Gonsalvez <sigles...@igalia.com>
Can you add a test to piglit to check this case? Sam On 11/05/15 12:24, Tapani Pälli wrote: > Patch marks uniforms inside UBO properly referenced by stages. > > Signed-off-by: Tapani Pälli <tapani.pa...@intel.com> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90397 > --- > src/glsl/linker.cpp | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp > index ea73c6f..ecdc025 100644 > --- a/src/glsl/linker.cpp > +++ b/src/glsl/linker.cpp > @@ -2700,6 +2700,16 @@ build_program_resource_list(struct gl_context *ctx, > > uint8_t stageref = > build_stageref(shProg, shProg->UniformStorage[i].name); > + > + /* Add stagereferences for uniforms in a uniform block. */ > + int block_index = shProg->UniformStorage[i].block_index; > + if (block_index != -1) { > + for (unsigned j = 0; j < MESA_SHADER_STAGES; j++) { > + if (shProg->UniformBlockStageIndex[j][block_index] != -1) > + stageref |= (1 << j); > + } > + } > + > if (!add_program_resource(shProg, GL_UNIFORM, > &shProg->UniformStorage[i], stageref)) > return; > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev