diff options
author | Nicolai Hähnle <[email protected]> | 2016-07-01 11:37:59 +0200 |
---|---|---|
committer | Nicolai Hähnle <[email protected]> | 2016-07-06 10:42:49 +0200 |
commit | 065eeb79f706d10340044447cc5821e64063ea9e (patch) | |
tree | 46ff66fe5e77f9af67d8a3687a5ae81252ad003f /src/gallium | |
parent | 19f8d2a843dc4b3b40b5b85371007e8ecc83186d (diff) |
radeonsi: correctly mark levels of 3D textures as fully decompressed
Account for the fact that max_layer is minified for higher levels.
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_blit.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c index a48c5bc19e1..114878738ba 100644 --- a/src/gallium/drivers/radeonsi/si_blit.c +++ b/src/gallium/drivers/radeonsi/si_blit.c @@ -214,7 +214,7 @@ si_blit_decompress_zs_planes_in_place(struct si_context *sctx, /* The texture will always be dirty if some layers aren't flushed. * I don't think this case occurs often though. */ - if (first_layer == 0 && last_layer == max_layer) { + if (first_layer == 0 && last_layer >= max_layer) { fully_decompressed_mask |= 1u << level; } } @@ -361,7 +361,7 @@ static void si_blit_decompress_color(struct pipe_context *ctx, /* The texture will always be dirty if some layers aren't flushed. * I don't think this case occurs often though. */ - if (first_layer == 0 && last_layer == max_layer) { + if (first_layer == 0 && last_layer >= max_layer) { rtex->dirty_level_mask &= ~(1 << level); } } |