Module: Mesa
Branch: master
Commit: f73f748323ef5a421ffd8fa0f02afd9627e31023
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f73f748323ef5a421ffd8fa0f02afd9627e31023

Author: Eric Anholt <[email protected]>
Date:   Thu Sep  6 13:37:37 2018 -0700

v3d: Fix SRC_ALPHA_SATURATE blending for RTs without alpha.

Fixes
dEQP-GLES3.functional.fragment_ops.blend.default_framebuffer.rgb_func_alpha_func.dst.src_alpha_saturate_src_alpha_saturate
and friends with --deqp-egl-config-name=rgb565d0s0

Cc: "18.2" <[email protected]>

---

 src/gallium/drivers/v3d/v3dx_emit.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/v3d/v3dx_emit.c 
b/src/gallium/drivers/v3d/v3dx_emit.c
index c58ac4b44a..537dd1ff9a 100644
--- a/src/gallium/drivers/v3d/v3dx_emit.c
+++ b/src/gallium/drivers/v3d/v3dx_emit.c
@@ -69,7 +69,9 @@ v3d_factor(enum pipe_blendfactor factor, bool dst_alpha_one)
         case PIPE_BLENDFACTOR_INV_CONST_ALPHA:
                 return V3D_BLEND_FACTOR_INV_CONST_ALPHA;
         case PIPE_BLENDFACTOR_SRC_ALPHA_SATURATE:
-                return V3D_BLEND_FACTOR_SRC_ALPHA_SATURATE;
+                return (dst_alpha_one ?
+                        V3D_BLEND_FACTOR_ZERO :
+                        V3D_BLEND_FACTOR_SRC_ALPHA_SATURATE);
         default:
                 unreachable("Bad blend factor");
         }

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to