anv: refresh cached current batch bo after emitting some commands
[mesa.git] / src / intel / vulkan / anv_dump.c
index f36a9b572d54f85ee224250f7b5871711c1c18d7..f3447f43b2190af65616cfaec9b69abe8b3baa8c 100644 (file)
@@ -62,7 +62,7 @@ dump_image_init(struct anv_device *device, struct dump_image *image,
                 uint32_t width, uint32_t height, const char *filename)
 {
    VkDevice vk_device = anv_device_to_handle(device);
-   MAYBE_UNUSED VkResult result;
+   ASSERTED VkResult result;
 
    image->filename = filename;
    image->extent = (VkExtent2D) { width, height };
@@ -200,7 +200,7 @@ static void
 dump_image_write_to_ppm(struct anv_device *device, struct dump_image *image)
 {
    VkDevice vk_device = anv_device_to_handle(device);
-   MAYBE_UNUSED VkResult result;
+   ASSERTED VkResult result;
 
    VkMemoryRequirements reqs;
    anv_GetImageMemoryRequirements(vk_device, image->image, &reqs);
@@ -249,7 +249,7 @@ anv_dump_image_to_ppm(struct anv_device *device,
                       const char *filename)
 {
    VkDevice vk_device = anv_device_to_handle(device);
-   MAYBE_UNUSED VkResult result;
+   ASSERTED VkResult result;
 
    PFN_vkBeginCommandBuffer BeginCommandBuffer =
       (void *)anv_GetDeviceProcAddr(anv_device_to_handle(device),
@@ -410,16 +410,15 @@ dump_add_image(struct anv_cmd_buffer *cmd_buffer, struct anv_image *image,
 }
 
 void
-anv_dump_add_framebuffer(struct anv_cmd_buffer *cmd_buffer,
-                         struct anv_framebuffer *fb)
+anv_dump_add_attachments(struct anv_cmd_buffer *cmd_buffer)
 {
    if (!dump_lock(ANV_DUMP_FRAMEBUFFERS_BIT))
       return;
 
    unsigned dump_idx = dump_count++;
 
-   for (unsigned i = 0; i < fb->attachment_count; i++) {
-      struct anv_image_view *iview = fb->attachments[i];
+   for (unsigned i = 0; i < cmd_buffer->state.pass->attachment_count; i++) {
+      struct anv_image_view *iview = cmd_buffer->state.attachments[i].image_view;
 
       uint32_t b;
       for_each_bit(b, iview->image->aspects) {
@@ -436,7 +435,7 @@ anv_dump_add_framebuffer(struct anv_cmd_buffer *cmd_buffer,
             unreachable("Invalid aspect");
          }
 
-         char *filename = ralloc_asprintf(dump_ctx, "framebuffer%04d-%d%s.ppm",
+         char *filename = ralloc_asprintf(dump_ctx, "attachment%04d-%d%s.ppm",
                                           dump_idx, i, suffix);
 
          unsigned plane = anv_image_aspect_to_plane(iview->image->aspects, aspect);