glsl: Add parsing support for multi-stream output in geometry shaders.

This implements parsing requirements for multi-stream support in
geometry shaders as defined in ARB_gpu_shader5.

Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
Samuel Iglesias Gonsalvez
2014-06-10 08:45:43 +02:00
committed by Iago Toral Quiroga
parent 15b5e663b0
commit a7e6ec6898
7 changed files with 144 additions and 1 deletions

View File

@@ -509,6 +509,8 @@ struct ast_type_qualifier {
/** \name Layout qualifiers for GL_ARB_gpu_shader5 */
/** \{ */
unsigned invocations:1;
unsigned stream:1; /**< Has stream value assigned */
unsigned explicit_stream:1; /**< stream value assigned explicitly by shader code */
/** \} */
}
/** \brief Set of flags, accessed by name. */
@@ -542,6 +544,9 @@ struct ast_type_qualifier {
/** Maximum output vertices in GLSL 1.50 geometry shaders. */
int max_vertices;
/** Stream in GLSL 1.50 geometry shaders. */
unsigned stream;
/** Input or output primitive type in GLSL 1.50 geometry shaders */
GLenum prim_type;