On 02/07/16 12:02, Timothy Arceri wrote: > This just stops counting and assigning a storage location for > these uniforms, the count is only used to create the uniform storage. > > This uniform types don't use this storage.
s/This/These Reviewed-by: Samuel Iglesias Gonsálvez <sigles...@igalia.com> > --- > src/compiler/glsl/link_uniforms.cpp | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > diff --git a/src/compiler/glsl/link_uniforms.cpp > b/src/compiler/glsl/link_uniforms.cpp > index 68e033e..c23191a 100644 > --- a/src/compiler/glsl/link_uniforms.cpp > +++ b/src/compiler/glsl/link_uniforms.cpp > @@ -403,7 +403,7 @@ private: > */ > this->num_active_uniforms++; > > - if(!is_gl_identifier(name) && !is_shader_storage) > + if(!is_gl_identifier(name) && !is_shader_storage && !is_buffer_block) > this->num_values += values; > } > > @@ -767,9 +767,10 @@ private: > this->uniforms[id].is_shader_storage = > current_var->is_in_shader_storage_block(); > > - /* Do not assign storage if the uniform is builtin */ > + /* Do not assign storage if the uniform is a builtin or buffer object > */ > if (!this->uniforms[id].builtin && > - !this->uniforms[id].is_shader_storage) > + !this->uniforms[id].is_shader_storage && > + this->buffer_block_index == -1) > this->uniforms[id].storage = this->values; > > if (this->buffer_block_index != -1) { > @@ -823,7 +824,8 @@ private: > } > > if (!this->uniforms[id].builtin && > - !this->uniforms[id].is_shader_storage) > + !this->uniforms[id].is_shader_storage && > + this->buffer_block_index == -1) > this->values += values_for_type(type); > } > > @@ -1276,7 +1278,8 @@ link_assign_uniform_locations(struct gl_shader_program > *prog, > #ifndef NDEBUG > for (unsigned i = 0; i < num_uniforms; i++) { > assert(uniforms[i].storage != NULL || uniforms[i].builtin || > - uniforms[i].is_shader_storage); > + uniforms[i].is_shader_storage || > + uniforms[i].block_index != -1); > } > > assert(parcel.values == data_end); >
signature.asc
Description: OpenPGP digital signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev