When alphaToCoverage is enabled, we should always write the alpha
channel of MRT0 if it's unused. This now matches RadeonSI.
This fixes the new CTS:
dEQP-VK.pipeline.multisample.alpha_to_coverage_unused_attachment.samples_*.alpha_invisible
Cc: 19.0 19.1 <mesa-stable@lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-By: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl
(cherry picked from commit 91aa25f462
)
tags/mesa-19.1.0
@@ -524,7 +524,7 @@ radv_pipeline_compute_spi_color_formats(struct radv_pipeline *pipeline, | |||
col_format |= cf << (4 * i); | |||
} | |||
if (!col_format && blend->need_src_alpha & (1 << 0)) { | |||
if (!(col_format & 0xf) && blend->need_src_alpha & (1 << 0)) { | |||
/* When a subpass doesn't have any color attachments, write the | |||
* alpha channel of MRT0 when alpha coverage is enabled because | |||
* the depth attachment needs it. |