From: Ian Romanick Date: Mon, 23 May 2016 20:31:29 +0000 (-0700) Subject: mesa: Allow GL_EXT_geometry_shader and GL_EXT_geometry_point_size X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1a72fbf9e6743368dc8e7664adf095af8ec5b6d8;p=mesa.git mesa: Allow GL_EXT_geometry_shader and GL_EXT_geometry_point_size Signed-off-by: Ian Romanick Reviewed-by: Ilia Mirkin Reviewed-by: Kenneth Graunke --- diff --git a/src/compiler/glsl/builtin_variables.cpp b/src/compiler/glsl/builtin_variables.cpp index cb5f7301c51..d4ea6607b46 100644 --- a/src/compiler/glsl/builtin_variables.cpp +++ b/src/compiler/glsl/builtin_variables.cpp @@ -1273,7 +1273,8 @@ builtin_variable_generator::generate_varyings() if (!state->es_shader || state->stage == MESA_SHADER_VERTEX || (state->stage == MESA_SHADER_GEOMETRY && - state->OES_geometry_point_size_enable) || + (state->OES_geometry_point_size_enable || + state->EXT_geometry_point_size_enable)) || ((state->stage == MESA_SHADER_TESS_CTRL || state->stage == MESA_SHADER_TESS_EVAL) && (state->OES_tessellation_point_size_enable || diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp index 2337eaea248..b5c5fdc574c 100644 --- a/src/compiler/glsl/glsl_parser_extras.cpp +++ b/src/compiler/glsl/glsl_parser_extras.cpp @@ -652,6 +652,8 @@ static const _mesa_glsl_extension _mesa_glsl_supported_extensions[] = { EXT(EXT_blend_func_extended), EXT(EXT_draw_buffers), EXT(EXT_clip_cull_distance), + EXT(EXT_geometry_point_size), + EXT(EXT_geometry_shader), EXT(EXT_gpu_shader5), EXT(EXT_separate_shader_objects), EXT(EXT_shader_framebuffer_fetch), diff --git a/src/compiler/glsl/glsl_parser_extras.h b/src/compiler/glsl/glsl_parser_extras.h index f8136092494..7092281a2b4 100644 --- a/src/compiler/glsl/glsl_parser_extras.h +++ b/src/compiler/glsl/glsl_parser_extras.h @@ -277,6 +277,7 @@ struct _mesa_glsl_parse_state { return OES_shader_io_blocks_enable || EXT_shader_io_blocks_enable || OES_geometry_shader_enable || + EXT_geometry_shader_enable || OES_tessellation_shader_enable || EXT_tessellation_shader_enable || @@ -285,7 +286,8 @@ struct _mesa_glsl_parse_state { bool has_geometry_shader() const { - return OES_geometry_shader_enable || is_version(150, 320); + return OES_geometry_shader_enable || EXT_geometry_shader_enable || + is_version(150, 320); } bool has_tessellation_shader() const @@ -701,6 +703,10 @@ struct _mesa_glsl_parse_state { bool EXT_clip_cull_distance_warn; bool EXT_draw_buffers_enable; bool EXT_draw_buffers_warn; + bool EXT_geometry_point_size_enable; + bool EXT_geometry_point_size_warn; + bool EXT_geometry_shader_enable; + bool EXT_geometry_shader_warn; bool EXT_gpu_shader5_enable; bool EXT_gpu_shader5_warn; bool EXT_separate_shader_objects_enable; diff --git a/src/mapi/glapi/gen/es_EXT.xml b/src/mapi/glapi/gen/es_EXT.xml index 929e0e7c0a8..6f2d6431fcd 100644 --- a/src/mapi/glapi/gen/es_EXT.xml +++ b/src/mapi/glapi/gen/es_EXT.xml @@ -881,6 +881,16 @@ + + + + + + + + + + diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h index c6fdd2c4cc6..9d0677af499 100644 --- a/src/mesa/main/extensions_table.h +++ b/src/mesa/main/extensions_table.h @@ -209,6 +209,8 @@ EXT(EXT_framebuffer_multisample , EXT_framebuffer_multisample EXT(EXT_framebuffer_multisample_blit_scaled , EXT_framebuffer_multisample_blit_scaled, GLL, GLC, x , x , 2011) EXT(EXT_framebuffer_object , dummy_true , GLL, x , x , x , 2000) EXT(EXT_framebuffer_sRGB , EXT_framebuffer_sRGB , GLL, GLC, x , x , 1998) +EXT(EXT_geometry_point_size , OES_geometry_shader , x , x , x , 31, 2015) +EXT(EXT_geometry_shader , OES_geometry_shader , x , x , x , 31, 2015) EXT(EXT_gpu_program_parameters , EXT_gpu_program_parameters , GLL, x , x , x , 2006) EXT(EXT_gpu_shader4 , EXT_gpu_shader4 , GLL, GLC, x , x , 2006) EXT(EXT_gpu_shader5 , ARB_gpu_shader5 , x , x , x , 31, 2014) diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp index a0bdd178cef..c0db287a028 100644 --- a/src/mesa/main/tests/dispatch_sanity.cpp +++ b/src/mesa/main/tests/dispatch_sanity.cpp @@ -2600,6 +2600,10 @@ const struct function gles31_functions_possible[] = { /* GL_OES_geometry_shader */ { "glFramebufferTextureOES", 31, -1}, + /* GL_EXT_geometry_shader */ + // We check for the aliased OES version above + // { "glFramebufferTextureEXT", 31, -1}, + /* GL_OES_tessellation_shader */ { "glPatchParameteriOES", 31, -1 },