[Mesa-dev] [PATCH 08/10] spirv: Add support for VK_EXT_descriptor_indexing uniform indexing caps.

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Wed Apr 11 23:44:21 UTC 2018


---
 src/compiler/shader_info.h        | 1 +
 src/compiler/spirv/spirv_to_nir.c | 6 ++++++
 2 files changed, 7 insertions(+)

diff --git a/src/compiler/shader_info.h b/src/compiler/shader_info.h
index ababe520b2d..c8128fea01b 100644
--- a/src/compiler/shader_info.h
+++ b/src/compiler/shader_info.h
@@ -53,6 +53,7 @@ struct spirv_supported_capabilities {
    bool subgroup_vote;
    bool gcn_shader;
    bool trinary_minmax;
+   bool full_uniform_desciptor_indexing;
 };
 
 typedef struct shader_info {
diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c
index 78c1e9ff597..04d26841188 100644
--- a/src/compiler/spirv/spirv_to_nir.c
+++ b/src/compiler/spirv/spirv_to_nir.c
@@ -3382,6 +3382,12 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
          spv_check_supported(shader_viewport_index_layer, cap);
          break;
 
+      case SpvCapabilityInputAttachmentArrayDynamicIndexingEXT:
+      case SpvCapabilityUniformTexelBufferArrayDynamicIndexingEXT:
+      case SpvCapabilityStorageTexelBufferArrayDynamicIndexingEXT:
+         spv_check_supported(full_uniform_desciptor_indexing, cap);
+         break;
+
       default:
          vtn_fail("Unhandled capability");
       }
-- 
2.17.0



More information about the mesa-dev mailing list