compiler/spirv: add XFB and GeometryStreams capability check support
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
This commit is contained in:
@@ -60,6 +60,8 @@ struct spirv_supported_capabilities {
|
|||||||
bool atomic_storage;
|
bool atomic_storage;
|
||||||
bool storage_8bit;
|
bool storage_8bit;
|
||||||
bool post_depth_coverage;
|
bool post_depth_coverage;
|
||||||
|
bool transform_feedback;
|
||||||
|
bool geometry_streams;
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef struct shader_info {
|
typedef struct shader_info {
|
||||||
|
@@ -3417,7 +3417,6 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
|
|||||||
case SpvCapabilityStorageImageExtendedFormats:
|
case SpvCapabilityStorageImageExtendedFormats:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SpvCapabilityGeometryStreams:
|
|
||||||
case SpvCapabilityLinkage:
|
case SpvCapabilityLinkage:
|
||||||
case SpvCapabilityVector16:
|
case SpvCapabilityVector16:
|
||||||
case SpvCapabilityFloat16Buffer:
|
case SpvCapabilityFloat16Buffer:
|
||||||
@@ -3427,7 +3426,6 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
|
|||||||
case SpvCapabilityInt8:
|
case SpvCapabilityInt8:
|
||||||
case SpvCapabilitySparseResidency:
|
case SpvCapabilitySparseResidency:
|
||||||
case SpvCapabilityMinLod:
|
case SpvCapabilityMinLod:
|
||||||
case SpvCapabilityTransformFeedback:
|
|
||||||
vtn_warn("Unsupported SPIR-V capability: %s",
|
vtn_warn("Unsupported SPIR-V capability: %s",
|
||||||
spirv_capability_to_string(cap));
|
spirv_capability_to_string(cap));
|
||||||
break;
|
break;
|
||||||
@@ -3446,6 +3444,14 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
|
|||||||
spv_check_supported(int16, cap);
|
spv_check_supported(int16, cap);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case SpvCapabilityTransformFeedback:
|
||||||
|
spv_check_supported(transform_feedback, cap);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SpvCapabilityGeometryStreams:
|
||||||
|
spv_check_supported(geometry_streams, cap);
|
||||||
|
break;
|
||||||
|
|
||||||
case SpvCapabilityAddresses:
|
case SpvCapabilityAddresses:
|
||||||
case SpvCapabilityKernel:
|
case SpvCapabilityKernel:
|
||||||
case SpvCapabilityImageBasic:
|
case SpvCapabilityImageBasic:
|
||||||
|
Reference in New Issue
Block a user