diff options
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/shader_info.h | 1 | ||||
-rw-r--r-- | src/compiler/spirv/spirv_to_nir.c | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/compiler/shader_info.h b/src/compiler/shader_info.h index ababe520b2d..6bbe526d2dc 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 descriptor_array_dynamic_indexing; }; typedef struct shader_info { diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c index 28274311c2b..884f5b2c69e 100644 --- a/src/compiler/spirv/spirv_to_nir.c +++ b/src/compiler/spirv/spirv_to_nir.c @@ -3384,6 +3384,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(descriptor_array_dynamic_indexing, cap); + break; + default: vtn_fail("Unhandled capability"); } |