compiler/types: Assert non-zero alignments in get_explicit_type_for_size_align
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7069>
diff --git a/src/compiler/glsl_types.cpp b/src/compiler/glsl_types.cpp
index ff3ed67..b0c99e8 100644
--- a/src/compiler/glsl_types.cpp
+++ b/src/compiler/glsl_types.cpp
@@ -2479,6 +2479,7 @@
return this;
} else if (this->is_vector()) {
type_info(this, size, alignment);
+ assert(*alignment > 0);
assert(*alignment % explicit_type_scalar_byte_size(this) == 0);
return glsl_type::get_instance(this->base_type, this->vector_elements,
1, 0, false, *alignment);
@@ -2532,6 +2533,7 @@
*size = this->matrix_columns * stride;
/* Matrix and column alignments match. See glsl_type::column_type() */
+ assert(col_align > 0);
*alignment = col_align;
return glsl_type::get_instance(this->base_type, this->vector_elements,
this->matrix_columns, stride, false, *alignment);