About Social Code
aboutsummaryrefslogtreecommitdiff
path: root/src/compiler/shader_enums.c
diff options
context:
space:
mode:
authorCaio Marcelo de Oliveira Filho <caio.oliveira@intel.com>2020-02-19 10:14:10 -0800
committerMarge Bot <eric+marge@anholt.net>2020-11-05 23:36:45 +0000
commitf65182931dbcae545034ae7230bbcdcfea7d91da (patch)
tree38b8048f90e57db258b376653d162c6ccc6eb2db /src/compiler/shader_enums.c
parent1882a02d83b134877b9effa268da7ac5b62cb1dc (diff)
compiler: Add new Vulkan shader stages
This particular ordering makes them conveniently match VkShaderStageFlagBits, which is a property we already take advantage of in the previous shader stages. Abbreviations are based on the ones used in glslangValidator. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6479>
Diffstat (limited to 'src/compiler/shader_enums.c')
-rw-r--r--src/compiler/shader_enums.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/compiler/shader_enums.c b/src/compiler/shader_enums.c
index 0e28c5585c4..ccea8692833 100644
--- a/src/compiler/shader_enums.c
+++ b/src/compiler/shader_enums.c
@@ -43,6 +43,14 @@ gl_shader_stage_name(gl_shader_stage stage)
ENUM(MESA_SHADER_GEOMETRY),
ENUM(MESA_SHADER_FRAGMENT),
ENUM(MESA_SHADER_COMPUTE),
+ ENUM(MESA_SHADER_TASK),
+ ENUM(MESA_SHADER_MESH),
+ ENUM(MESA_SHADER_RAYGEN),
+ ENUM(MESA_SHADER_ANY_HIT),
+ ENUM(MESA_SHADER_CLOSEST_HIT),
+ ENUM(MESA_SHADER_MISS),
+ ENUM(MESA_SHADER_INTERSECTION),
+ ENUM(MESA_SHADER_CALLABLE),
ENUM(MESA_SHADER_KERNEL),
};
STATIC_ASSERT(ARRAY_SIZE(names) == MESA_ALL_SHADER_STAGES);
@@ -64,6 +72,14 @@ _mesa_shader_stage_to_string(unsigned stage)
case MESA_SHADER_KERNEL: return "kernel";
case MESA_SHADER_TESS_CTRL: return "tessellation control";
case MESA_SHADER_TESS_EVAL: return "tessellation evaluation";
+ case MESA_SHADER_TASK: return "task";
+ case MESA_SHADER_MESH: return "mesh";
+ case MESA_SHADER_RAYGEN: return "raygen";
+ case MESA_SHADER_ANY_HIT: return "any hit";
+ case MESA_SHADER_CLOSEST_HIT: return "closest hit";
+ case MESA_SHADER_MISS: return "miss";
+ case MESA_SHADER_INTERSECTION: return "intersection";
+ case MESA_SHADER_CALLABLE: return "callable";
}
unreachable("Unknown shader stage.");
@@ -84,6 +100,14 @@ _mesa_shader_stage_to_abbrev(unsigned stage)
case MESA_SHADER_KERNEL: return "CL";
case MESA_SHADER_TESS_CTRL: return "TCS";
case MESA_SHADER_TESS_EVAL: return "TES";
+ case MESA_SHADER_TASK: return "TASK";
+ case MESA_SHADER_MESH: return "MESH";
+ case MESA_SHADER_RAYGEN: return "RGEN";
+ case MESA_SHADER_ANY_HIT: return "RAHIT";
+ case MESA_SHADER_CLOSEST_HIT: return "RCHIT";
+ case MESA_SHADER_MISS: return "RMISS";
+ case MESA_SHADER_INTERSECTION: return "RINT";
+ case MESA_SHADER_CALLABLE: return "RCALL";
}
unreachable("Unknown shader stage.");