summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimothy Arceri <tarceri@itsqueeze.com>2020-01-16 14:43:30 +1100
committerMarge Bot <eric+marge@anholt.net>2020-03-06 23:22:14 +0000
commit1ccfe821b2244d6880b2aac6641f312c7171dc49 (patch)
treef4903b84d5369fcdfc362f818174e27da2a074de
parent120a26c6f25905474464661e351e36a4c7c76aea (diff)
nir: add glsl_get_std140_size() helper
This will be used by the nir glsl linker for linking uniforms. Reviewed-by: Alejandro PiƱeiro <apinheiro@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4050>
-rw-r--r--src/compiler/nir_types.cpp6
-rw-r--r--src/compiler/nir_types.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/src/compiler/nir_types.cpp b/src/compiler/nir_types.cpp
index 74a5a8d769a..631e8b41832 100644
--- a/src/compiler/nir_types.cpp
+++ b/src/compiler/nir_types.cpp
@@ -786,6 +786,12 @@ glsl_get_std140_base_alignment(const struct glsl_type *type, bool row_major)
}
unsigned
+glsl_get_std140_size(const struct glsl_type *type, bool row_major)
+{
+ return type->std140_size(row_major);
+}
+
+unsigned
glsl_get_explicit_size(const struct glsl_type *type, bool align_to_stride)
{
return type->explicit_size(align_to_stride);
diff --git a/src/compiler/nir_types.h b/src/compiler/nir_types.h
index e3a7ebcdaea..67d719adec6 100644
--- a/src/compiler/nir_types.h
+++ b/src/compiler/nir_types.h
@@ -58,6 +58,7 @@ glsl_get_internal_ifc_packing(const struct glsl_type *type,
unsigned glsl_get_std140_base_alignment(const struct glsl_type *type,
bool row_major);
+unsigned glsl_get_std140_size(const struct glsl_type *type, bool row_major);
unsigned glsl_get_explicit_stride(const struct glsl_type *type);
const struct glsl_type *glsl_get_array_element(const struct glsl_type *type);
const struct glsl_type *glsl_without_array(const struct glsl_type *type);