summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPierre-Eric Pelloux-Prayer <[email protected]>2019-12-19 19:54:16 +0100
committerMarge Bot <[email protected]>2020-01-15 10:10:15 +0000
commitc2df5389bb44a625a53ac06e637019c94236f201 (patch)
treee70c099197ecc423a1056f0fb06475cf40bb8461
parentb5e748b49b3fb9ef7a5e3af01e2ddbac59f90796 (diff)
radeonsi: make sure fmask expand is done if needed
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2248 Fixes: 095a58204d9 ("radeonsi: expand FMASK before MSAA image stores are used") Reviewed-by: Marek Olšák <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3174>
-rw-r--r--src/gallium/drivers/radeonsi/si_blit.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c
index 70ad55d8a41..854065aba6b 100644
--- a/src/gallium/drivers/radeonsi/si_blit.c
+++ b/src/gallium/drivers/radeonsi/si_blit.c
@@ -444,7 +444,7 @@ static void si_blit_decompress_color(struct si_context *sctx,
if (!need_dcc_decompress)
level_mask &= tex->dirty_level_mask;
if (!level_mask)
- return;
+ goto expand_fmask;
if (unlikely(sctx->log))
u_log_printf(sctx->log,
@@ -515,6 +515,7 @@ static void si_blit_decompress_color(struct si_context *sctx,
vi_dcc_enabled(tex, first_level),
tex->surface.u.gfx9.dcc.pipe_aligned);
+expand_fmask:
if (need_fmask_expand && tex->surface.fmask_offset && tex->fmask_is_not_identity) {
si_compute_expand_fmask(&sctx->b, &tex->buffer.b.b);
tex->fmask_is_not_identity = false;