radv: Use RADV_META_SUSPEND_PREDICATING
Signed-off-by: Konstantin Seurer <konstantin.seurer@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17625>
This commit is contained in:

committed by
Marge Bot

parent
fdeca2ca0b
commit
b06e5535c0
@@ -457,7 +457,6 @@ blit_image(struct radv_cmd_buffer *cmd_buffer, struct radv_image *src_image,
|
||||
const VkImageSubresourceLayers *dst_res = ®ion->dstSubresource;
|
||||
struct radv_device *device = cmd_buffer->device;
|
||||
struct radv_meta_saved_state saved_state;
|
||||
bool old_predicating;
|
||||
VkSampler sampler;
|
||||
|
||||
/* From the Vulkan 1.0 spec:
|
||||
@@ -479,15 +478,12 @@ blit_image(struct radv_cmd_buffer *cmd_buffer, struct radv_image *src_image,
|
||||
},
|
||||
&cmd_buffer->pool->vk.alloc, &sampler);
|
||||
|
||||
radv_meta_save(
|
||||
&saved_state, cmd_buffer,
|
||||
RADV_META_SAVE_GRAPHICS_PIPELINE | RADV_META_SAVE_CONSTANTS | RADV_META_SAVE_DESCRIPTORS);
|
||||
|
||||
/* VK_EXT_conditional_rendering says that blit commands should not be
|
||||
* affected by conditional rendering.
|
||||
*/
|
||||
old_predicating = cmd_buffer->state.predicating;
|
||||
cmd_buffer->state.predicating = false;
|
||||
radv_meta_save(&saved_state, cmd_buffer,
|
||||
RADV_META_SAVE_GRAPHICS_PIPELINE | RADV_META_SAVE_CONSTANTS |
|
||||
RADV_META_SAVE_DESCRIPTORS | RADV_META_SUSPEND_PREDICATING);
|
||||
|
||||
unsigned dst_start, dst_end;
|
||||
if (dst_image->vk.image_type == VK_IMAGE_TYPE_3D) {
|
||||
@@ -602,9 +598,6 @@ blit_image(struct radv_cmd_buffer *cmd_buffer, struct radv_image *src_image,
|
||||
radv_image_view_finish(&src_iview);
|
||||
}
|
||||
|
||||
/* Restore conditional rendering. */
|
||||
cmd_buffer->state.predicating = old_predicating;
|
||||
|
||||
radv_meta_restore(&saved_state, cmd_buffer);
|
||||
|
||||
radv_DestroySampler(radv_device_to_handle(device), sampler, &cmd_buffer->pool->vk.alloc);
|
||||
|
Reference in New Issue
Block a user