Mesa (master): glsl/nir: Fix handling of 64-bit values in uniform storage

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jun 19 21:16:20 UTC 2019


Module: Mesa
Branch: master
Commit: b019fe8a5b6cba6c6cefe62718b682da451e699e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b019fe8a5b6cba6c6cefe62718b682da451e699e

Author: Jason Ekstrand <jason at jlekstrand.net>
Date:   Thu Jun  6 10:46:25 2019 -0500

glsl/nir: Fix handling of 64-bit values in uniform storage

Reviewed-by: Karol Herbst <kherbst at redhat.com>

---

 src/compiler/glsl/gl_nir_link_uniform_initializers.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/compiler/glsl/gl_nir_link_uniform_initializers.c b/src/compiler/glsl/gl_nir_link_uniform_initializers.c
index 36441b4bbe7..59ebdbd12e8 100644
--- a/src/compiler/glsl/gl_nir_link_uniform_initializers.c
+++ b/src/compiler/glsl/gl_nir_link_uniform_initializers.c
@@ -118,6 +118,7 @@ copy_constant_to_storage(union gl_constant_value *storage,
    const enum glsl_base_type base_type = glsl_get_base_type(type);
    const unsigned n_columns = glsl_get_matrix_columns(type);
    const unsigned n_rows = glsl_get_vector_elements(type);
+   unsigned dmul = glsl_base_type_is_64bit(base_type) ? 2 : 1;
    int i = 0;
 
    for (unsigned int column = 0; column < n_columns; column++) {
@@ -164,7 +165,7 @@ copy_constant_to_storage(union gl_constant_value *storage,
             assert(!"Should not get here.");
             break;
          }
-         i++;
+         i += dmul;
       }
    }
 }




More information about the mesa-commit mailing list