[Mesa-dev] [PATCH 2/2] nir/xfb: Properly align 64-bit values

Jason Ekstrand jason at jlekstrand.net
Wed Feb 13 17:32:33 UTC 2019


Fixes: 19064b8c "nir: Add a pass for gathering transform feedback info"
Cc: Alejandro PiƱeiro <apinheiro at igalia.com>
---
 src/compiler/nir/nir_gather_xfb_info.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/compiler/nir/nir_gather_xfb_info.c b/src/compiler/nir/nir_gather_xfb_info.c
index 96f0ece5e75..a1de2d681eb 100644
--- a/src/compiler/nir/nir_gather_xfb_info.c
+++ b/src/compiler/nir/nir_gather_xfb_info.c
@@ -33,6 +33,10 @@ add_var_xfb_outputs(nir_xfb_info *xfb,
                     unsigned *offset,
                     const struct glsl_type *type)
 {
+   /* If this type contains a 64-bit value, align to 8 bytes */
+   if (glsl_type_contains_64bit(type))
+      *offset = ALIGN_POT(*offset, 8);
+
    if (glsl_type_is_array(type) || glsl_type_is_matrix(type)) {
       unsigned length = glsl_get_length(type);
       const struct glsl_type *child_type = glsl_get_array_element(type);
-- 
2.20.1



More information about the mesa-dev mailing list