spirv: Support TaskPayloadWorkgroupEXT storage class.
authorTimur Kristóf <timur.kristof@gmail.com>
Sat, 19 Feb 2022 11:31:18 +0000 (12:31 +0100)
committerMarge Bot <emma+marge@anholt.net>
Fri, 2 Sep 2022 16:18:33 +0000 (16:18 +0000)
Just use the task_payload NIR storage class for this.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18366>

src/compiler/spirv/vtn_variables.c

index 1326a92..357e6f8 100644 (file)
@@ -1599,6 +1599,10 @@ vtn_storage_class_to_mode(struct vtn_builder *b,
       mode = vtn_variable_mode_workgroup;
       nir_mode = nir_var_mem_shared;
       break;
+   case SpvStorageClassTaskPayloadWorkgroupEXT:
+      mode = vtn_variable_mode_task_payload;
+      nir_mode = nir_var_mem_task_payload;
+      break;
    case SpvStorageClassAtomicCounter:
       mode = vtn_variable_mode_atomic_counter;
       nir_mode = nir_var_uniform;