From 52056206e171f8eec0afc16cfd90ee68bf290e7b Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Wed, 21 Feb 2018 13:07:10 -0800 Subject: [PATCH] anv: Don't assert that stencil HiZ clears are single-slice It's true for depth HiZ clears because we only have HiZ on single-slice images right now. However, for stencil-only clears there is no such restriction. Tested-by: Rafael Antognolli Reviewed-by: Nanley Chery --- src/intel/vulkan/genX_cmd_buffer.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index 8015a42c154..ce546249b34 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -3438,9 +3438,12 @@ cmd_buffer_begin_subpass(struct anv_cmd_buffer *cmd_buffer, VK_IMAGE_ASPECT_STENCIL_BIT)) { if (att_state->fast_clear) { /* We currently only support HiZ for single-layer images */ - assert(iview->planes[0].isl.base_level == 0); - assert(iview->planes[0].isl.base_array_layer == 0); - assert(fb->layers == 1); + if (att_state->pending_clear_aspects & VK_IMAGE_ASPECT_DEPTH_BIT) { + assert(iview->image->planes[0].aux_usage == ISL_AUX_USAGE_HIZ); + assert(iview->planes[0].isl.base_level == 0); + assert(iview->planes[0].isl.base_array_layer == 0); + assert(fb->layers == 1); + } anv_image_hiz_clear(cmd_buffer, image, att_state->pending_clear_aspects, -- 2.30.2