[Mesa-dev] [PATCH] glsl: remove unused link_assign_uniform_block_offsets
Ian Romanick
idr at freedesktop.org
Wed Sep 24 08:40:04 PDT 2014
Nice catch.
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
On 09/24/2014 04:09 AM, Tapani Pälli wrote:
> ubo offsets are assigned by link_uniform_blocks since 514f8c7e
>
> Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
> ---
> src/glsl/link_uniforms.cpp | 34 ----------------------------------
> src/glsl/linker.h | 3 ---
> 2 files changed, 37 deletions(-)
>
> diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp
> index dcce183..5772771 100644
> --- a/src/glsl/link_uniforms.cpp
> +++ b/src/glsl/link_uniforms.cpp
> @@ -777,40 +777,6 @@ link_update_uniform_buffer_variables(struct gl_shader *shader)
> }
> }
>
> -void
> -link_assign_uniform_block_offsets(struct gl_shader *shader)
> -{
> - for (unsigned b = 0; b < shader->NumUniformBlocks; b++) {
> - struct gl_uniform_block *block = &shader->UniformBlocks[b];
> -
> - unsigned offset = 0;
> - for (unsigned int i = 0; i < block->NumUniforms; i++) {
> - struct gl_uniform_buffer_variable *ubo_var = &block->Uniforms[i];
> - const struct glsl_type *type = ubo_var->Type;
> -
> - unsigned alignment = type->std140_base_alignment(ubo_var->RowMajor);
> - unsigned size = type->std140_size(ubo_var->RowMajor);
> -
> - offset = glsl_align(offset, alignment);
> - ubo_var->Offset = offset;
> - offset += size;
> - }
> -
> - /* From the GL_ARB_uniform_buffer_object spec:
> - *
> - * "For uniform blocks laid out according to [std140] rules,
> - * the minimum buffer object size returned by the
> - * UNIFORM_BLOCK_DATA_SIZE query is derived by taking the
> - * offset of the last basic machine unit consumed by the
> - * last uniform of the uniform block (including any
> - * end-of-array or end-of-structure padding), adding one,
> - * and rounding up to the next multiple of the base
> - * alignment required for a vec4."
> - */
> - block->UniformBufferSize = glsl_align(offset, 16);
> - }
> -}
> -
> /**
> * Scan the program for image uniforms and store image unit access
> * information into the gl_shader data structure.
> diff --git a/src/glsl/linker.h b/src/glsl/linker.h
> index beb9bb2..7a6908c 100644
> --- a/src/glsl/linker.h
> +++ b/src/glsl/linker.h
> @@ -47,9 +47,6 @@ link_cross_validate_uniform_block(void *mem_ctx,
> unsigned int *num_linked_blocks,
> struct gl_uniform_block *new_block);
>
> -void
> -link_assign_uniform_block_offsets(struct gl_shader *shader);
> -
> extern bool
> link_uniform_blocks_are_compatible(const gl_uniform_block *a,
> const gl_uniform_block *b);
>
More information about the mesa-dev
mailing list