[Mesa-dev] [PATCH] spirv: Allow ignoring decorations for workgroup variables

Jason Ekstrand jason at jlekstrand.net
Mon Dec 11 23:34:08 UTC 2017


Since we switched over to lowering SLM access directly in SPIR-V -> NIR,
we no longer have vtn_variables for SLM.  It's all safe as with UBOs and
SSBOs but we need to let it through in the assert.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104213
Fixes: 8761a04d0d9332d9c0c99164faf855fc3c741f7c
---
 src/compiler/spirv/vtn_variables.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/compiler/spirv/vtn_variables.c b/src/compiler/spirv/vtn_variables.c
index 671f18a..745269b 100644
--- a/src/compiler/spirv/vtn_variables.c
+++ b/src/compiler/spirv/vtn_variables.c
@@ -1533,7 +1533,9 @@ var_decoration_cb(struct vtn_builder *b, struct vtn_value *val, int member,
           */
          vtn_assert(vtn_var->mode == vtn_variable_mode_ubo ||
                     vtn_var->mode == vtn_variable_mode_ssbo ||
-                    vtn_var->mode == vtn_variable_mode_push_constant);
+                    vtn_var->mode == vtn_variable_mode_push_constant ||
+                    (vtn_var->mode == vtn_variable_mode_workgroup &&
+                     b->options->lower_workgroup_access_to_offsets));
       }
    }
 }
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list