nir: add glsl_get_std140_base_alignment() helper
authorTimothy Arceri <tarceri@itsqueeze.com>
Thu, 16 Jan 2020 03:01:42 +0000 (14:01 +1100)
committerMarge Bot <eric+marge@anholt.net>
Fri, 6 Mar 2020 23:22:14 +0000 (23:22 +0000)
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>

src/compiler/nir_types.cpp
src/compiler/nir_types.h

index 432c65a7cdd40641efc87a4c68003d68ca25d0cf..74a5a8d769a695f963a08cf560993d419f4df97d 100644 (file)
@@ -779,6 +779,12 @@ glsl_get_internal_ifc_packing(const struct glsl_type *type,
    return type->get_internal_ifc_packing(std430_supported);
 }
 
+unsigned
+glsl_get_std140_base_alignment(const struct glsl_type *type, bool row_major)
+{
+   return type->std140_base_alignment(row_major);
+}
+
 unsigned
 glsl_get_explicit_size(const struct glsl_type *type, bool align_to_stride)
 {
index 877edda6389b64afbf9d4502700a4911774a87c1..e3a7ebcdaea46c0ca90deff96220e6b5590d418a 100644 (file)
@@ -56,6 +56,8 @@ const enum glsl_interface_packing
 glsl_get_internal_ifc_packing(const struct glsl_type *type,
                               bool std430_supported);
 
+unsigned glsl_get_std140_base_alignment(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);