summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/compiler/nir/spirv/spirv_to_nir.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/compiler/nir/spirv/spirv_to_nir.c b/src/compiler/nir/spirv/spirv_to_nir.c
index b5e7f536e2e..a50a581cfb6 100644
--- a/src/compiler/nir/spirv/spirv_to_nir.c
+++ b/src/compiler/nir/spirv/spirv_to_nir.c
@@ -2148,17 +2148,24 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
/* Unhandled, but these are for debug so that's ok. */
break;
- case SpvOpCapability:
- switch ((SpvCapability)w[1]) {
+ case SpvOpCapability: {
+ SpvCapability cap = w[1];
+ switch (cap) {
case SpvCapabilityMatrix:
case SpvCapabilityShader:
case SpvCapabilityGeometry:
+ case SpvCapabilityUniformBufferArrayDynamicIndexing:
+ case SpvCapabilitySampledImageArrayDynamicIndexing:
+ case SpvCapabilityStorageBufferArrayDynamicIndexing:
+ case SpvCapabilityStorageImageArrayDynamicIndexing:
case SpvCapabilityClipDistance:
+ case SpvCapabilityImageQuery:
break;
default:
assert(!"Unsupported capability");
}
break;
+ }
case SpvOpExtInstImport:
vtn_handle_extension(b, opcode, w, count);