radv: fix setting CB_SHADER_MASK for dual source blending
CB_SHADER_MASK was computed without the second color buffer format which looks totally wrong to me. While we are at it, copy a comment from RadeonSI. 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>
This commit is contained in:
@@ -541,10 +541,13 @@ radv_pipeline_compute_spi_color_formats(struct radv_pipeline *pipeline,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
blend->cb_shader_mask = ac_get_cb_shader_mask(col_format);
|
/* The output for dual source blending should have the same format as
|
||||||
|
* the first output.
|
||||||
|
*/
|
||||||
if (blend->mrt0_is_dual_src)
|
if (blend->mrt0_is_dual_src)
|
||||||
col_format |= (col_format & 0xf) << 4;
|
col_format |= (col_format & 0xf) << 4;
|
||||||
|
|
||||||
|
blend->cb_shader_mask = ac_get_cb_shader_mask(col_format);
|
||||||
blend->spi_shader_col_format = col_format;
|
blend->spi_shader_col_format = col_format;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user