[Mesa-dev] [PATCH] nir: Mark deref UBO and SSBO access as non-scalar

Jason Ekstrand jason at jlekstrand.net
Mon Jan 21 22:38:23 UTC 2019


Fixes: 63b9aa2e2574 "spirv: Add support for using derefs for..."
---
 src/compiler/nir/nir_lower_phis_to_scalar.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/compiler/nir/nir_lower_phis_to_scalar.c b/src/compiler/nir/nir_lower_phis_to_scalar.c
index 3d7155c04f6..41ae19e8391 100644
--- a/src/compiler/nir/nir_lower_phis_to_scalar.c
+++ b/src/compiler/nir/nir_lower_phis_to_scalar.c
@@ -86,7 +86,9 @@ is_phi_src_scalarizable(nir_phi_src *src,
       case nir_intrinsic_load_deref: {
          nir_deref_instr *deref = nir_src_as_deref(src_intrin->src[0]);
          return deref->mode == nir_var_shader_in ||
-                deref->mode == nir_var_uniform;
+                deref->mode == nir_var_uniform ||
+                deref->mode == nir_var_mem_ubo ||
+                deref->mode == nir_var_mem_ssbo;
       }
 
       case nir_intrinsic_interp_deref_at_centroid:
-- 
2.20.1



More information about the mesa-dev mailing list