[Mesa-dev] [PATCH 01/11] glsl/types: Make subroutine types have a single matrix column

Jason Ekstrand jason at jlekstrand.net
Wed Sep 30 18:41:05 PDT 2015


That way, if we do the usual thing of multiplying vector_elements by
matrix_columns we get the actual number of components in the type as per
component_slots().

While we're at it, we also switch to using the actual C++ field
initializers for vector_elements and matrix_columns.
---
 src/glsl/glsl_types.cpp | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/glsl/glsl_types.cpp b/src/glsl/glsl_types.cpp
index 8586b2e..25927f6 100644
--- a/src/glsl/glsl_types.cpp
+++ b/src/glsl/glsl_types.cpp
@@ -172,7 +172,7 @@ glsl_type::glsl_type(const char *subroutine_name) :
    base_type(GLSL_TYPE_SUBROUTINE),
    sampler_dimensionality(0), sampler_shadow(0), sampler_array(0),
    sampler_type(0), interface_packing(0),
-   vector_elements(0), matrix_columns(0),
+   vector_elements(1), matrix_columns(1),
    length(0)
 {
    mtx_lock(&glsl_type::mutex);
@@ -180,7 +180,6 @@ glsl_type::glsl_type(const char *subroutine_name) :
    init_ralloc_type_ctx();
    assert(subroutine_name != NULL);
    this->name = ralloc_strdup(this->mem_ctx, subroutine_name);
-   this->vector_elements = 1;
    mtx_unlock(&glsl_type::mutex);
 }
 
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list