Mesa (master): anv/cmd_buffer: Adjust layout transition aspect checking

Nanley Chery nchery at kemper.freedesktop.org
Mon Jun 26 18:22:50 UTC 2017


Module: Mesa
Branch: master
Commit: 5f4f50419cc351b9cb55118d970885d96e4ac254
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f4f50419cc351b9cb55118d970885d96e4ac254

Author: Nanley Chery <nanley.g.chery at intel.com>
Date:   Mon Jun 12 11:26:47 2017 -0700

anv/cmd_buffer: Adjust layout transition aspect checking

Reflect the fact that an image view or subresource range with the color
aspect cannot have any other aspect.

Signed-off-by: Nanley Chery <nanley.g.chery at intel.com>
Reviewed-by: Iago Toral Quiroga <itoral at igalia.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

 src/intel/vulkan/genX_cmd_buffer.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c
index 0216ea04a8..69b4812185 100644
--- a/src/intel/vulkan/genX_cmd_buffer.c
+++ b/src/intel/vulkan/genX_cmd_buffer.c
@@ -992,9 +992,8 @@ void genX(CmdPipelineBarrier)(
          transition_depth_buffer(cmd_buffer, image,
                                  pImageMemoryBarriers[i].oldLayout,
                                  pImageMemoryBarriers[i].newLayout);
-      }
-      if (pImageMemoryBarriers[i].subresourceRange.aspectMask &
-          VK_IMAGE_ASPECT_COLOR_BIT) {
+      } else if (pImageMemoryBarriers[i].subresourceRange.aspectMask ==
+                 VK_IMAGE_ASPECT_COLOR_BIT) {
          transition_color_buffer(cmd_buffer, image,
                                  pImageMemoryBarriers[i].oldLayout,
                                  pImageMemoryBarriers[i].newLayout,
@@ -2484,8 +2483,7 @@ cmd_buffer_subpass_transition_layouts(struct anv_cmd_buffer * const cmd_buffer,
          att_state->aux_usage =
             anv_layout_to_aux_usage(&cmd_buffer->device->info, image,
                                     image->aspects, target_layout);
-      }
-      if (image->aspects & VK_IMAGE_ASPECT_COLOR_BIT) {
+      } else if (image->aspects == VK_IMAGE_ASPECT_COLOR_BIT) {
          transition_color_buffer(cmd_buffer, image,
                                  att_state->current_layout, target_layout,
                                  &iview->isl, NULL);




More information about the mesa-commit mailing list