From 8f0fe71cc5658728adc273daa03400aab7ec6d93 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Tue, 12 Feb 2019 12:49:08 -0600 Subject: [PATCH] nir/xfb: Properly align 64-bit values MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Fixes: 19064b8c "nir: Add a pass for gathering transform feedback info" Reviewed-by: Alejandro Piñeiro --- 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 176bf89..446b7ac 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.7.4