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.
This commit is contained in:
Jason Ekstrand 2016-02-23 22:02:41 -08:00
parent f0f7cc22f3
commit c9564fd598

View file

@ -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");
}