Module: Mesa Branch: master Commit: 6dbf975cb9208e4457c73f1231b79645d1a466af URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6dbf975cb9208e4457c73f1231b79645d1a466af
Author: Samuel Pitoiset <[email protected]> Date: Thu Apr 1 18:38:38 2021 +0200 radv: cleanup FMASK expand transitions Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9990> --- src/amd/vulkan/radv_cmd_buffer.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c index cdd2c815f26..9509802039b 100644 --- a/src/amd/vulkan/radv_cmd_buffer.c +++ b/src/amd/vulkan/radv_cmd_buffer.c @@ -6447,18 +6447,20 @@ static void radv_handle_color_image_transition(struct radv_cmd_buffer *cmd_buffe if (radv_image_has_fmask(image) && (image->usage & (VK_IMAGE_USAGE_STORAGE_BIT | - VK_IMAGE_USAGE_TRANSFER_DST_BIT))) { - if (src_layout != VK_IMAGE_LAYOUT_GENERAL && - dst_layout == VK_IMAGE_LAYOUT_GENERAL) { - /* A FMASK decompress is required before doing - * a MSAA decompress using FMASK. - */ - fmask_expand = true; - } + VK_IMAGE_USAGE_TRANSFER_DST_BIT)) && + radv_layout_fmask_compressed(cmd_buffer->device, image, + src_layout, src_queue_mask) && + !radv_layout_fmask_compressed(cmd_buffer->device, image, + dst_layout, dst_queue_mask)) { + fmask_expand = true; } - if (fce_eliminate || fmask_expand) + if (fce_eliminate || fmask_expand) { + /* A FMASK decompress is required before expanding + * FMASK. + */ radv_fast_clear_flush_image_inplace(cmd_buffer, image, range); + } if (fmask_expand) { struct radv_barrier_data barrier = {0}; _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
