From 15c4ae461dba101e12924fc8e3e9099b3e700bab Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 20 Jun 2016 16:35:32 -0700 Subject: [PATCH] MESA_shader_integer_functions: Boiler plate extension tracking Signed-off-by: Ian Romanick Reviewed-by: Matt Turner --- src/compiler/glsl/glcpp/glcpp-parse.y | 3 +++ src/compiler/glsl/glsl_parser_extras.cpp | 1 + src/compiler/glsl/glsl_parser_extras.h | 2 ++ src/compiler/glsl/standalone_scaffolding.cpp | 2 ++ src/mesa/main/extensions_table.h | 1 + src/mesa/main/mtypes.h | 1 + 6 files changed, 10 insertions(+) diff --git a/src/compiler/glsl/glcpp/glcpp-parse.y b/src/compiler/glsl/glcpp/glcpp-parse.y index 2cfa6a6825a..a1597611144 100644 --- a/src/compiler/glsl/glcpp/glcpp-parse.y +++ b/src/compiler/glsl/glcpp/glcpp-parse.y @@ -2479,6 +2479,9 @@ _glcpp_parser_handle_version_declaration(glcpp_parser_t *parser, intmax_t versio if (extensions->EXT_shader_samples_identical) add_builtin_define(parser, "GL_EXT_shader_samples_identical", 1); + + if (extensions->MESA_shader_integer_functions) + add_builtin_define(parser, "GL_MESA_shader_integer_functions", 1); } if (version >= 150) diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp index 96014247e5d..007743497d4 100644 --- a/src/compiler/glsl/glsl_parser_extras.cpp +++ b/src/compiler/glsl/glsl_parser_extras.cpp @@ -652,6 +652,7 @@ static const _mesa_glsl_extension _mesa_glsl_supported_extensions[] = { EXT(EXT_shader_samples_identical, true, true, EXT_shader_samples_identical), EXT(EXT_texture_array, true, false, EXT_texture_array), EXT(EXT_texture_buffer, false, true, OES_texture_buffer), + EXT(MESA_shader_integer_functions, true, true, MESA_shader_integer_functions), }; #undef EXT diff --git a/src/compiler/glsl/glsl_parser_extras.h b/src/compiler/glsl/glsl_parser_extras.h index 669b3d1b201..9548e62532f 100644 --- a/src/compiler/glsl/glsl_parser_extras.h +++ b/src/compiler/glsl/glsl_parser_extras.h @@ -681,6 +681,8 @@ struct _mesa_glsl_parse_state { bool EXT_texture_array_warn; bool EXT_texture_buffer_enable; bool EXT_texture_buffer_warn; + bool MESA_shader_integer_functions_enable; + bool MESA_shader_integer_functions_warn; /*@}*/ /** Extensions supported by the OpenGL implementation. */ diff --git a/src/compiler/glsl/standalone_scaffolding.cpp b/src/compiler/glsl/standalone_scaffolding.cpp index 53729af3921..b0fb4b726ae 100644 --- a/src/compiler/glsl/standalone_scaffolding.cpp +++ b/src/compiler/glsl/standalone_scaffolding.cpp @@ -177,6 +177,8 @@ void initialize_context_to_defaults(struct gl_context *ctx, gl_api api) ctx->Extensions.EXT_shader_integer_mix = true; ctx->Extensions.EXT_texture_array = true; + ctx->Extensions.MESA_shader_integer_functions = true; + ctx->Extensions.NV_texture_rectangle = true; ctx->Const.GLSLVersion = 120; diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h index 6c47b3b1e79..cbb3fb8f56e 100644 --- a/src/mesa/main/extensions_table.h +++ b/src/mesa/main/extensions_table.h @@ -288,6 +288,7 @@ EXT(KHR_texture_compression_astc_ldr , KHR_texture_compression_astc_ldr EXT(KHR_texture_compression_astc_sliced_3d , KHR_texture_compression_astc_sliced_3d , GLL, GLC, x , ES2, 2015) EXT(MESA_pack_invert , MESA_pack_invert , GLL, GLC, x , x , 2002) +EXT(MESA_shader_integer_functions , MESA_shader_integer_functions , GLL, GLC, x , 30, 2016) EXT(MESA_texture_signed_rgba , EXT_texture_snorm , GLL, GLC, x , x , 2009) EXT(MESA_window_pos , dummy_true , GLL, x , x , x , 2000) EXT(MESA_ycbcr_texture , MESA_ycbcr_texture , GLL, GLC, x , x , 2002) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index ecc5b49073d..ad046e2a671 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -3948,6 +3948,7 @@ struct gl_extensions GLboolean KHR_texture_compression_astc_ldr; GLboolean KHR_texture_compression_astc_sliced_3d; GLboolean MESA_pack_invert; + GLboolean MESA_shader_integer_functions; GLboolean MESA_ycbcr_texture; GLboolean NV_conditional_render; GLboolean NV_fog_distance; -- 2.30.2