[Mesa-dev] [PATCH 1/2] glsl: Add define for ARB_shader_precision

Glenn Kennard glenn.kennard at gmail.com
Sun Feb 1 17:08:20 PST 2015


On Wed, 31 Dec 2014 21:43:51 +0100, Micah Fedke  
<micah.fedke at collabora.co.uk> wrote:

> ---
>  src/glsl/glcpp/glcpp-parse.y    | 3 +++
>  src/glsl/glsl_parser_extras.cpp | 1 +
>  src/glsl/glsl_parser_extras.h   | 2 ++
>  src/mesa/main/extensions.c      | 1 +
>  src/mesa/main/mtypes.h          | 1 +
>  5 files changed, 8 insertions(+)
>
> diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y
> index 9b1a4f4..c9cc68f 100644
> --- a/src/glsl/glcpp/glcpp-parse.y
> +++ b/src/glsl/glcpp/glcpp-parse.y
> @@ -2473,6 +2473,9 @@  
> _glcpp_parser_handle_version_declaration(glcpp_parser_t *parser,  
> intmax_t versio
>               if (extensions->ARB_derivative_control)
>                   add_builtin_define(parser,  
> "GL_ARB_derivative_control", 1);
> +
> +              if (extensions->ARB_shader_precision)
> +                 add_builtin_define(parser, "GL_ARB_shader_precision",  
> 1);
>  	   }
>  	}
> diff --git a/src/glsl/glsl_parser_extras.cpp  
> b/src/glsl/glsl_parser_extras.cpp
> index 27e2eaf3..8555af6 100644
> --- a/src/glsl/glsl_parser_extras.cpp
> +++ b/src/glsl/glsl_parser_extras.cpp
> @@ -532,6 +532,7 @@ static const _mesa_glsl_extension  
> _mesa_glsl_supported_extensions[] = {
>     EXT(ARB_shader_atomic_counters,     true,  false,      
> ARB_shader_atomic_counters),
>     EXT(ARB_shader_bit_encoding,        true,  false,      
> ARB_shader_bit_encoding),
>     EXT(ARB_shader_image_load_store,    true,  false,      
> ARB_shader_image_load_store),
> +   EXT(ARB_shader_precision,           true,  false,      
> ARB_shader_precision),
>     EXT(ARB_shader_stencil_export,      true,  false,      
> ARB_shader_stencil_export),
>     EXT(ARB_shader_texture_lod,         true,  false,      
> ARB_shader_texture_lod),
>     EXT(ARB_shading_language_420pack,   true,  false,      
> ARB_shading_language_420pack),
> diff --git a/src/glsl/glsl_parser_extras.h  
> b/src/glsl/glsl_parser_extras.h
> index e04f7ce..0ca6053 100644
> --- a/src/glsl/glsl_parser_extras.h
> +++ b/src/glsl/glsl_parser_extras.h
> @@ -424,6 +424,8 @@ struct _mesa_glsl_parse_state {
>     bool ARB_shader_bit_encoding_warn;
>     bool ARB_shader_image_load_store_enable;
>     bool ARB_shader_image_load_store_warn;
> +   bool ARB_shader_precision_enable;
> +   bool ARB_shader_precision_warn;
>     bool ARB_shader_stencil_export_enable;
>     bool ARB_shader_stencil_export_warn;
>     bool ARB_shader_texture_lod_enable;
> diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c
> index 0df04c2..95c7a37 100644
> --- a/src/mesa/main/extensions.c
> +++ b/src/mesa/main/extensions.c
> @@ -147,6 +147,7 @@ static const struct extension extension_table[] = {
>     { "GL_ARB_shader_bit_encoding",                  
> o(ARB_shader_bit_encoding),                 GL,             2010 },
>     { "GL_ARB_shader_image_load_store",              
> o(ARB_shader_image_load_store),             GL,             2011 },
>     { "GL_ARB_shader_objects",                       
> o(dummy_true),                              GL,             2002 },
> +   { "GL_ARB_shader_precision",                     
> o(ARB_shader_precision),                    GL,             2014 },

Isn't this extension from 2010 rather than 2014?

>     { "GL_ARB_shader_stencil_export",                
> o(ARB_shader_stencil_export),               GL,             2009 },
>     { "GL_ARB_shader_texture_lod",                   
> o(ARB_shader_texture_lod),                  GL,             2009 },
>     { "GL_ARB_shading_language_100",                 
> o(dummy_true),                              GLL,            2003 },
> diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
> index b95dfb9..4c83379 100644
> --- a/src/mesa/main/mtypes.h
> +++ b/src/mesa/main/mtypes.h
> @@ -3757,6 +3757,7 @@ struct gl_extensions
>     GLboolean ARB_shader_atomic_counters;
>     GLboolean ARB_shader_bit_encoding;
>     GLboolean ARB_shader_image_load_store;
> +   GLboolean ARB_shader_precision;
>     GLboolean ARB_shader_stencil_export;
>     GLboolean ARB_shader_texture_lod;
>     GLboolean ARB_shading_language_packing;


More information about the mesa-dev mailing list