On Fri, Nov 13, 2015 at 10:53 AM, Tapani Pälli <tapani.pa...@intel.com> wrote: > On 11/12/2015 05:47 PM, Ilia Mirkin wrote: >> >> On Mon, Nov 2, 2015 at 6:36 AM, Tapani Pälli <tapani.pa...@intel.com> >> wrote: >>> >>> Patch sets matrix_stride as 0 for non matrix uniforms that are in a >>> atomic counter buffer. Matrix stride calculation for actual matrix >>> uniforms is done during link_assign_uniform_locations. >>> >>> From ARB_program_interface_query specification: >>> >>> GL_MATRIX_STRIDE: >>> >>> "For active variables not declared as a matrix or array of matrices, >>> zero is written to <params>. For active variables not backed by a >>> buffer object, -1 is written to <params>, regardless of the variable >>> type." >>> >>> Signed-off-by: Tapani Pälli <tapani.pa...@intel.com> >>> --- >>> src/glsl/link_atomics.cpp | 2 ++ >>> 1 file changed, 2 insertions(+) >>> >>> diff --git a/src/glsl/link_atomics.cpp b/src/glsl/link_atomics.cpp >>> index cdcc06d..3aa52db 100644 >>> --- a/src/glsl/link_atomics.cpp >>> +++ b/src/glsl/link_atomics.cpp >>> @@ -240,6 +240,8 @@ link_assign_atomic_counter_resources(struct >>> gl_context *ctx, >>> storage->offset = var->data.atomic.offset; >>> storage->array_stride = (var->type->is_array() ? >>> >>> var->type->without_array()->atomic_size() : 0); >>> + if (!var->type->is_matrix()) >>> + storage->matrix_stride = 0; >> >> Can atomics ever be in matrices? > > > Nope, but one can query matrix stride property of a uniform that is 'backed > by' atomic counter buffer.
Right, I get that... but why the if (!var->type->is_matrix())? _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev