From f98984ad1390098f2a5cf5d8770b35ad8fcf6d6a Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Thu, 28 Oct 2021 13:47:41 +0300 Subject: [PATCH] nir/lower_io: include the variable access in the lowered intrinsic Signed-off-by: Lionel Landwerlin Cc: mesa-stable Reviewed-by: Caio Oliveira Part-of: --- src/compiler/nir/nir_lower_io.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/compiler/nir/nir_lower_io.c b/src/compiler/nir/nir_lower_io.c index e1b15647d9a..32cfbc2288c 100644 --- a/src/compiler/nir/nir_lower_io.c +++ b/src/compiler/nir/nir_lower_io.c @@ -312,6 +312,9 @@ emit_load(struct lower_io_state *state, nir_intrinsic_set_range(load, state->type_size(var->type, var->data.bindless)); + if (nir_intrinsic_has_access(load)) + nir_intrinsic_set_access(load, var->data.access); + nir_intrinsic_set_dest_type(load, dest_type); if (load->intrinsic != nir_intrinsic_load_uniform) { @@ -418,6 +421,9 @@ emit_store(struct lower_io_state *state, nir_ssa_def *data, nir_intrinsic_set_write_mask(store, write_mask); + if (nir_intrinsic_has_access(store)) + nir_intrinsic_set_access(store, var->data.access); + if (array_index) store->src[1] = nir_src_for_ssa(array_index);