[Mesa-dev] [PATCH 10/15] compiler/spirv: add XFB and GeometryStreams capability check support

Alejandro Piñeiro apinheiro at igalia.com
Tue Jul 31 11:17:44 UTC 2018


FWIW, this is the only patch pending to be reviewed on the series (sorry
Timothy, I used wrong patch numbers when I pinged you on IRC).

BR


On 20/07/18 17:08, Alejandro Piñeiro wrote:
> ---
>  src/compiler/shader_info.h        |  2 ++
>  src/compiler/spirv/spirv_to_nir.c | 10 ++++++++--
>  2 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/src/compiler/shader_info.h b/src/compiler/shader_info.h
> index 3b95d5962c0..958e6bb98bf 100644
> --- a/src/compiler/shader_info.h
> +++ b/src/compiler/shader_info.h
> @@ -59,6 +59,8 @@ struct spirv_supported_capabilities {
>     bool stencil_export;
>     bool atomic_storage;
>     bool storage_8bit;
> +   bool transform_feedback;
> +   bool geometry_streams;
>  };
>  
>  typedef struct shader_info {
> diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c
> index 0957efb2aa1..c8b91f068a8 100644
> --- a/src/compiler/spirv/spirv_to_nir.c
> +++ b/src/compiler/spirv/spirv_to_nir.c
> @@ -3424,7 +3424,6 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
>        case SpvCapabilityStorageImageExtendedFormats:
>           break;
>  
> -      case SpvCapabilityGeometryStreams:
>        case SpvCapabilityLinkage:
>        case SpvCapabilityVector16:
>        case SpvCapabilityFloat16Buffer:
> @@ -3434,7 +3433,6 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
>        case SpvCapabilityInt8:
>        case SpvCapabilitySparseResidency:
>        case SpvCapabilityMinLod:
> -      case SpvCapabilityTransformFeedback:
>           vtn_warn("Unsupported SPIR-V capability: %s",
>                    spirv_capability_to_string(cap));
>           break;
> @@ -3453,6 +3451,14 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, SpvOp opcode,
>           spv_check_supported(int16, cap);
>           break;
>  
> +      case SpvCapabilityTransformFeedback:
> +         spv_check_supported(transform_feedback, cap);
> +         break;
> +
> +      case SpvCapabilityGeometryStreams:
> +         spv_check_supported(geometry_streams, cap);
> +         break;
> +
>        case SpvCapabilityAddresses:
>        case SpvCapabilityKernel:
>        case SpvCapabilityImageBasic:




More information about the mesa-dev mailing list