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" <mesa-stable@lists.freedesktop.org>
(cherry picked from commit f73f748323)
This commit is contained in:
Eric Anholt 2018-09-06 13:37:37 -07:00 committed by Andres Gomez
parent 9dff29fda5
commit 8ed365a7ff

View file

@ -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");
}