anv: drop duplicate checks when setting the compressed bit

We need compression tracking for full resolves and at the moment only
CCS_E has full resolves.

Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22737>
This commit is contained in:
Rohan Garg 2023-04-27 16:45:39 +02:00 committed by Marge Bot
parent a7cef01db1
commit 2e8b1f6d1c

View file

@ -738,16 +738,6 @@ genX(cmd_buffer_mark_image_written)(struct anv_cmd_buffer *cmd_buffer,
{ {
/* The aspect must be exactly one of the image aspects. */ /* The aspect must be exactly one of the image aspects. */
assert(util_bitcount(aspect) == 1 && (aspect & image->vk.aspects)); assert(util_bitcount(aspect) == 1 && (aspect & image->vk.aspects));
/* The only compression types with more than just fast-clears are MCS,
* CCS_E, and HiZ. With HiZ we just trust the layout and don't actually
* track the current fast-clear and compression state. This leaves us
* with just MCS and CCS_E.
*/
if (aux_usage != ISL_AUX_USAGE_CCS_E &&
aux_usage != ISL_AUX_USAGE_MCS)
return;
set_image_compressed_bit(cmd_buffer, image, aspect, set_image_compressed_bit(cmd_buffer, image, aspect,
level, base_layer, layer_count, true); level, base_layer, layer_count, true);
} }
@ -1127,11 +1117,8 @@ transition_color_buffer(struct anv_cmd_buffer *cmd_buffer,
aspect, level, base_layer, level_layer_count, aspect, level, base_layer, level_layer_count,
ISL_AUX_OP_AMBIGUATE, NULL, false); ISL_AUX_OP_AMBIGUATE, NULL, false);
if (image->planes[plane].aux_usage == ISL_AUX_USAGE_CCS_E) { set_image_compressed_bit(cmd_buffer, image, aspect, level,
set_image_compressed_bit(cmd_buffer, image, aspect, base_layer, level_layer_count, false);
level, base_layer, level_layer_count,
false);
}
} }
} else { } else {
/* If will_full_fast_clear is set, the caller promises to fast-clear /* If will_full_fast_clear is set, the caller promises to fast-clear