v2: Implement missing Enable/Disable (Emil) v3: Drop unused NewIntelBlackholeRender (Ken)
v4: Bring back NewIntelBlackholeRender as i965 implementation uses it again (Lionel) Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com> Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> --- src/mesa/main/enable.c | 14 ++++++++++++++ src/mesa/main/extensions_table.h | 1 + src/mesa/main/mtypes.h | 8 ++++++++ 3 files changed, 23 insertions(+) diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index d1b2f3a9625..7b482bdf5db 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -1137,6 +1137,16 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) ctx->Color.BlendCoherent = state; break; + case GL_BLACKHOLE_RENDER_INTEL: + if (!_mesa_has_INTEL_blackhole_render(ctx)) + goto invalid_enum_error; + if (ctx->IntelBlackholeRender == state) + return; + FLUSH_VERTICES(ctx, 0); + ctx->NewDriverState |= ctx->DriverFlags.NewIntelBlackholeRender; + ctx->IntelBlackholeRender = state; + break; + default: goto invalid_enum_error; } @@ -1776,6 +1786,10 @@ _mesa_IsEnabled( GLenum cap ) CHECK_EXTENSION(MESA_tile_raster_order); return ctx->TileRasterOrderIncreasingY; + case GL_BLACKHOLE_RENDER_INTEL: + CHECK_EXTENSION(INTEL_blackhole_render); + return ctx->IntelBlackholeRender; + default: goto invalid_enum_error; } diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h index 1c55df8a228..cb41aa8be4a 100644 --- a/src/mesa/main/extensions_table.h +++ b/src/mesa/main/extensions_table.h @@ -309,6 +309,7 @@ EXT(IBM_texture_mirrored_repeat , dummy_true EXT(INGR_blend_func_separate , EXT_blend_func_separate , GLL, x , x , x , 1999) +EXT(INTEL_blackhole_render , INTEL_blackhole_render , 30, 30, x , ES2, 2018) EXT(INTEL_conservative_rasterization , INTEL_conservative_rasterization , x , GLC, x , 31, 2013) EXT(INTEL_performance_query , INTEL_performance_query , GLL, GLC, x , ES2, 2013) diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 220751ba7bb..605b4973f13 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -4240,6 +4240,7 @@ struct gl_extensions GLboolean ATI_fragment_shader; GLboolean ATI_separate_stencil; GLboolean GREMEDY_string_marker; + GLboolean INTEL_blackhole_render; GLboolean INTEL_conservative_rasterization; GLboolean INTEL_performance_query; GLboolean KHR_blend_equation_advanced; @@ -4585,6 +4586,11 @@ struct gl_driver_flags /** Programmable sample location state for gl_context::DrawBuffer */ uint64_t NewSampleLocations; + + /** + * gl_context::IntelBlackholeRender + */ + uint64_t NewIntelBlackholeRender; }; struct gl_buffer_binding @@ -5006,6 +5012,8 @@ struct gl_context GLfloat ConservativeRasterDilate; GLenum16 ConservativeRasterMode; + GLboolean IntelBlackholeRender; /**< GL_INTEL_blackhole_render */ + /** Does glVertexAttrib(0) alias glVertex()? */ bool _AttribZeroAliasesVertex; -- 2.17.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev