From b010b6f69120737c28562898cc087545ebb3cad3 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Tue, 25 Jul 2023 12:37:46 -0400 Subject: [PATCH] panfrost: Disable blending for no-op logic ops Prevents regression from the series, since we don't support empty blend shaders. This could be fixed more generically but I'm not inclined to compile more blend shaders than needed so shrug. Signed-off-by: Alyssa Rosenzweig Reviewed-by: Italo Nicola Part-of: --- src/gallium/drivers/panfrost/pan_cmdstream.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/pan_cmdstream.c b/src/gallium/drivers/panfrost/pan_cmdstream.c index 4779b260269..dc4c861cba1 100644 --- a/src/gallium/drivers/panfrost/pan_cmdstream.c +++ b/src/gallium/drivers/panfrost/pan_cmdstream.c @@ -4217,7 +4217,9 @@ panfrost_create_blend_state(struct pipe_context *pipe, unsigned constant_mask = pan_blend_constant_mask(equation); const bool supports_2src = pan_blend_supports_2src(PAN_ARCH); so->info[c] = (struct pan_blend_info){ - .enabled = (equation.color_mask != 0), + .enabled = (equation.color_mask != 0) && + !(blend->logicop_enable && + blend->logicop_func == PIPE_LOGICOP_NOOP), .opaque = !blend->logicop_enable && pan_blend_is_opaque(equation), .constant_mask = constant_mask,