From 0b98f20310695ff45aee4fbce6c55f9c3d9e8025 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Pi=C3=B1eiro?= Date: Mon, 8 Mar 2021 01:13:46 +0100 Subject: [PATCH] v3dv: define broadcom shader stages Mostly the same that main mesa gl_shader_stage, but including the coordinate shader. This would allow to loop over all the available stages (for example if we need to free them, compute the max spill size, etc). Reviewed-by: Iago Toral Quiroga Part-of: --- src/broadcom/vulkan/v3dv_private.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/broadcom/vulkan/v3dv_private.h b/src/broadcom/vulkan/v3dv_private.h index 9c2e223f8e6..31fd48fff1d 100644 --- a/src/broadcom/vulkan/v3dv_private.h +++ b/src/broadcom/vulkan/v3dv_private.h @@ -260,6 +260,19 @@ struct v3dv_pipeline_cache_stats { uint32_t count; }; +/* Equivalent to gl_shader_stage, but including the coordinate shaders + * + * FIXME: perhaps move to common + */ +typedef enum { + BROADCOM_SHADER_VERTEX, + BROADCOM_SHADER_VERTEX_BIN, + BROADCOM_SHADER_FRAGMENT, + BROADCOM_SHADER_COMPUTE, +} broadcom_shader_stage; + +#define BROADCOM_SHADER_STAGES (BROADCOM_SHADER_COMPUTE + 1) + struct v3dv_pipeline_cache { struct vk_object_base base;