From 2aa507f87a6eddb4786d93eb4148093035e8bcff Mon Sep 17 00:00:00 2001 From: Icecream95 Date: Fri, 17 Jul 2020 23:26:41 +1200 Subject: [PATCH] nir: Set the alignment for SSBO lowering The alignment can just be copied from the source intrinsic. Fixes the assertion nir_intrinsic_align_offset(instr) < nir_intrinsic_align_mul(instr) Reviewed-by: Karol Herbst Reviewed-by: Alyssa Rosenzweig Part-of: --- src/compiler/nir/nir_lower_ssbo.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/compiler/nir/nir_lower_ssbo.c b/src/compiler/nir/nir_lower_ssbo.c index 144cd884cf1..904d92fa7e8 100644 --- a/src/compiler/nir/nir_lower_ssbo.c +++ b/src/compiler/nir/nir_lower_ssbo.c @@ -128,6 +128,9 @@ lower_ssbo_instr(nir_builder *b, nir_intrinsic_instr *intr) global->num_components = intr->num_components; global->src[is_store ? 1 : 0] = nir_src_for_ssa(address); + nir_intrinsic_set_align_mul(global, nir_intrinsic_align_mul(intr)); + nir_intrinsic_set_align_offset(global, nir_intrinsic_align_offset(intr)); + if (is_store) { nir_src_copy(&global->src[0], &intr->src[0], global); nir_intrinsic_set_write_mask(global, nir_intrinsic_write_mask(intr)); -- 2.30.2