If you also remove the uniforms[i].array_elements in the same manner, the assert in: ES31-CTS.explicit_uniform_location.uniform-loc-arrays-of-arrays Is also avoided.
> -----Original Message----- > From: mesa-dev [mailto:mesa-dev-boun...@lists.freedesktop.org] On > Behalf Of Tapani Pälli > Sent: Tuesday, October 20, 2015 11:24 AM > To: mesa-dev@lists.freedesktop.org > Subject: [Mesa-dev] [PATCH 1/3] glsl: skip buffer variables when filling > UniformRemapTable > > UniformRemapTable is used only for remapping user specified uniform > locations to driver internally used ones, shader storage buffer variables > should not utilize uniform locations. > > Signed-off-by: Tapani Pälli <tapani.pa...@intel.com> > --- > src/glsl/link_uniforms.cpp | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp index > fe00aa3..f7b87a1 100644 > --- a/src/glsl/link_uniforms.cpp > +++ b/src/glsl/link_uniforms.cpp > @@ -1180,7 +1180,8 @@ link_assign_uniform_locations(struct > gl_shader_program *prog, > > /* Reserve all the explicit locations of the active uniforms. */ > for (unsigned i = 0; i < num_uniforms; i++) { > - if (uniforms[i].type->is_subroutine()) > + if (uniforms[i].type->is_subroutine() || > + uniforms[i].is_shader_storage) > continue; > > if (uniforms[i].remap_location != UNMAPPED_UNIFORM_LOC) { @@ - > 1200,8 +1201,10 @@ link_assign_uniform_locations(struct > gl_shader_program *prog, > /* Reserve locations for rest of the uniforms. */ > for (unsigned i = 0; i < num_uniforms; i++) { > > - if (uniforms[i].type->is_subroutine()) > + if (uniforms[i].type->is_subroutine() || > + uniforms[i].is_shader_storage) > continue; > + > /* Built-in uniforms should not get any location. */ > if (uniforms[i].builtin) > continue; > -- > 2.4.3 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev