[Mesa-dev] [PATCH] glsl: remove unused link_assign_uniform_block_offsets

Tapani Pälli tapani.palli at intel.com
Wed Sep 24 04:09:23 PDT 2014


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);
-- 
1.9.3



More information about the mesa-dev mailing list