From: Francisco Jerez Date: Mon, 12 Feb 2018 22:48:20 +0000 (-0800) Subject: mesa: Implement glFramebufferFetchBarrierEXT entry point. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=378e918e2891b2712b64c4ad1ef92bfc539a13e7;p=mesa.git mesa: Implement glFramebufferFetchBarrierEXT entry point. Reviewed-by: Plamena Manolova --- diff --git a/src/mesa/main/barrier.c b/src/mesa/main/barrier.c index 0f0b0a210d1..2be30220e49 100644 --- a/src/mesa/main/barrier.c +++ b/src/mesa/main/barrier.c @@ -127,8 +127,7 @@ _mesa_BlendBarrier(void) { GET_CURRENT_CONTEXT(ctx); - if (!ctx->Extensions.EXT_shader_framebuffer_fetch_non_coherent && - !ctx->Extensions.KHR_blend_equation_advanced) { + if (!ctx->Extensions.KHR_blend_equation_advanced) { _mesa_error(ctx, GL_INVALID_OPERATION, "glBlendBarrier(not supported)"); return; @@ -136,3 +135,17 @@ _mesa_BlendBarrier(void) ctx->Driver.FramebufferFetchBarrier(ctx); } + +void GLAPIENTRY +_mesa_FramebufferFetchBarrierEXT(void) +{ + GET_CURRENT_CONTEXT(ctx); + + if (!ctx->Extensions.EXT_shader_framebuffer_fetch_non_coherent) { + _mesa_error(ctx, GL_INVALID_OPERATION, + "glFramebufferFetchBarrierEXT(not supported)"); + return; + } + + ctx->Driver.FramebufferFetchBarrier(ctx); +} diff --git a/src/mesa/main/barrier.h b/src/mesa/main/barrier.h index 53ecf863f07..acc15c67794 100644 --- a/src/mesa/main/barrier.h +++ b/src/mesa/main/barrier.h @@ -53,4 +53,7 @@ _mesa_MemoryBarrierByRegion(GLbitfield barriers); void GLAPIENTRY _mesa_BlendBarrier(void); +void GLAPIENTRY +_mesa_FramebufferFetchBarrierEXT(void); + #endif /* BARRIER_H */ diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp index d697343627e..83a4b046542 100644 --- a/src/mesa/main/tests/dispatch_sanity.cpp +++ b/src/mesa/main/tests/dispatch_sanity.cpp @@ -1023,6 +1023,9 @@ const struct function common_desktop_functions_possible[] = { /* GL_ARB_gl_spirv */ { "glSpecializeShaderARB", 45, -1 }, + /* GL_EXT_shader_framebuffer_fetch_non_coherent */ + { "glFramebufferFetchBarrierEXT", 20, -1 }, + { NULL, 0, -1 } }; @@ -2446,6 +2449,9 @@ const struct function gles2_functions_possible[] = { { "glGetQueryObjectui64vEXT", 20, -1 }, { "glQueryCounterEXT", 20, -1 }, + /* GL_EXT_shader_framebuffer_fetch_non_coherent */ + { "glFramebufferFetchBarrierEXT", 20, -1 }, + { NULL, 0, -1 } };