summaryrefslogtreecommitdiffstats
path: root/src/glsl/shader_enums.h
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2015-04-07 15:18:43 -0700
committerKenneth Graunke <kenneth@whitecape.org>2015-04-10 02:16:27 -0700
commit4b27391cadcc789a3befbd2b5a846012afa069b8 (patch)
tree632cd77f5cc4146335376da8a4211a7f91df1b8f /src/glsl/shader_enums.h
parentfeafe703998dd88ebea131741326eb229956656a (diff)
downloadexternal_mesa3d-4b27391cadcc789a3befbd2b5a846012afa069b8.zip
external_mesa3d-4b27391cadcc789a3befbd2b5a846012afa069b8.tar.gz
external_mesa3d-4b27391cadcc789a3befbd2b5a846012afa069b8.tar.bz2
nir: Move gl_shader_stage enum from mtypes.h to shader_enums.h.
I want to use this in some code that doesn't currently include mtypes.h. It seems like a better place for it anyway. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Diffstat (limited to 'src/glsl/shader_enums.h')
-rw-r--r--src/glsl/shader_enums.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/glsl/shader_enums.h b/src/glsl/shader_enums.h
index 7f59fdc..79e0f6b 100644
--- a/src/glsl/shader_enums.h
+++ b/src/glsl/shader_enums.h
@@ -27,6 +27,23 @@
#define SHADER_ENUMS_H
/**
+ * Shader stages. Note that these will become 5 with tessellation.
+ *
+ * The order must match how shaders are ordered in the pipeline.
+ * The GLSL linker assumes that if i<j, then the j-th shader is
+ * executed later than the i-th shader.
+ */
+typedef enum
+{
+ MESA_SHADER_VERTEX = 0,
+ MESA_SHADER_GEOMETRY = 1,
+ MESA_SHADER_FRAGMENT = 2,
+ MESA_SHADER_COMPUTE = 3,
+} gl_shader_stage;
+
+#define MESA_SHADER_STAGES (MESA_SHADER_COMPUTE + 1)
+
+/**
* Bitflags for system values.
*/
#define SYSTEM_BIT_SAMPLE_ID ((uint64_t)1 << SYSTEM_VALUE_SAMPLE_ID)