From dfbd62e772d4373f4ab7553b556931085a70488a Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 14 Oct 2015 10:08:18 -0600 Subject: [PATCH] mesa: optimize _UsesDualSrc blend flag setting For glBlendFunc and glBlendFuncSeparate(), the _UsesDualSrc flag will be the same for all buffers, so no need to compute it N times. Reviewed-by: Eric Anholt --- src/mesa/main/blend.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c index a7b7c5b7e8a..9dec2d41408 100644 --- a/src/mesa/main/blend.c +++ b/src/mesa/main/blend.c @@ -255,8 +255,13 @@ _mesa_BlendFuncSeparate( GLenum sfactorRGB, GLenum dfactorRGB, ctx->Color.Blend[buf].DstRGB = dfactorRGB; ctx->Color.Blend[buf].SrcA = sfactorA; ctx->Color.Blend[buf].DstA = dfactorA; - update_uses_dual_src(ctx, buf); } + + update_uses_dual_src(ctx, 0); + for (buf = 1; buf < numBuffers; buf++) { + ctx->Color.Blend[buf]._UsesDualSrc = ctx->Color.Blend[0]._UsesDualSrc; + } + ctx->Color._BlendFuncPerBuffer = GL_FALSE; if (ctx->Driver.BlendFuncSeparate) { -- 2.30.2