summaryrefslogtreecommitdiffstats
path: root/src/compiler
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2016-02-23 22:02:41 -0800
committerJason Ekstrand <[email protected]>2016-02-23 22:07:25 -0800
commitc9564fd598573f609480f70a141b95900047ba58 (patch)
tree9b98c7e56427ee4e91da5caba758b026b08b9839 /src/compiler
parentf0f7cc22f3f061416c81cf80ccbe4a6a390082a7 (diff)
nir/spirv: Allow but warn for a few capabilities
Unfortunately, glslang gives us cull/clip distance and GS streams even if the shader doesn't use it whenever a shader is declared as version 450. This is a glslang bug, but we can easily enough ignore it for now.
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/nir/spirv/spirv_to_nir.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/compiler/nir/spirv/spirv_to_nir.c b/src/compiler/nir/spirv/spirv_to_nir.c
index 91f5c4b5186..cb069b93ae8 100644
--- a/src/compiler/nir/spirv/spirv_to_nir.c
+++ b/src/compiler/nir/spirv/spirv_to_nir.c
@@ -2167,7 +2167,6 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
case SpvCapabilitySampledImageArrayDynamicIndexing:
case SpvCapabilityStorageBufferArrayDynamicIndexing:
case SpvCapabilityStorageImageArrayDynamicIndexing:
- case SpvCapabilityClipDistance:
case SpvCapabilityImageRect:
case SpvCapabilitySampledRect:
case SpvCapabilitySampled1D:
@@ -2177,6 +2176,11 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
case SpvCapabilityImageBuffer:
case SpvCapabilityImageQuery:
break;
+ case SpvCapabilityClipDistance:
+ case SpvCapabilityCullDistance:
+ case SpvCapabilityGeometryStreams:
+ fprintf(stderr, "WARNING: Unsupported SPIR-V Capability\n");
+ break;
default:
assert(!"Unsupported capability");
}