From: Dave Airlie <airl...@redhat.com>

Some of the Sascha Willems demos pick a D32/S8 format for the depth
buffer, then do a LOAD_OP_CLEAR/LOAD_OP_DONT_CARE on it, which means
we don't get to merge the undefined->depth and clear htile transitions.

This add the stencil aspect to the pending clears if there is a depth
clear pending and the stencil aspect is don't care.

Signed-off-by: Dave Airlie <airl...@redhat.com>
---
 src/amd/vulkan/radv_cmd_buffer.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c
index dd83fd0..d0271c8 100644
--- a/src/amd/vulkan/radv_cmd_buffer.c
+++ b/src/amd/vulkan/radv_cmd_buffer.c
@@ -1853,6 +1853,9 @@ radv_cmd_state_setup_attachments(struct radv_cmd_buffer 
*cmd_buffer,
                        if ((att_aspects & VK_IMAGE_ASPECT_DEPTH_BIT) &&
                            att->load_op == VK_ATTACHMENT_LOAD_OP_CLEAR) {
                                clear_aspects |= VK_IMAGE_ASPECT_DEPTH_BIT;
+                               if (att_aspects & VK_IMAGE_ASPECT_STENCIL_BIT &&
+                                   att->stencil_load_op == 
VK_ATTACHMENT_LOAD_OP_DONT_CARE)
+                                       clear_aspects |= 
VK_IMAGE_ASPECT_STENCIL_BIT;
                        }
                        if ((att_aspects & VK_IMAGE_ASPECT_STENCIL_BIT) &&
                            att->stencil_load_op == 
VK_ATTACHMENT_LOAD_OP_CLEAR) {
-- 
2.9.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to