From: Jason Ekstrand Date: Tue, 21 Nov 2017 20:27:43 +0000 (-0800) Subject: anv/cmd_buffer: Apply subpass flushes before set_subpass X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b5bd3fb4e43ce0e6edd453a3c502e9c8c5bdf4f1;p=mesa.git anv/cmd_buffer: Apply subpass flushes before set_subpass This seems slightly more correct because it means that the flushes happen before any clears or resolves implied by the subpass transition. Reviewed-by: Nanley Chery --- diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index 9c50f91b44b..ada05ccee64 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -3520,10 +3520,10 @@ void genX(CmdBeginRenderPass)( genX(flush_pipeline_select_3d)(cmd_buffer); - genX(cmd_buffer_set_subpass)(cmd_buffer, pass->subpasses); - cmd_buffer->state.pending_pipe_bits |= cmd_buffer->state.pass->subpass_flushes[0]; + + genX(cmd_buffer_set_subpass)(cmd_buffer, pass->subpasses); } void genX(CmdNextSubpass)( @@ -3543,11 +3543,11 @@ void genX(CmdNextSubpass)( */ cmd_buffer_subpass_transition_layouts(cmd_buffer, true); - genX(cmd_buffer_set_subpass)(cmd_buffer, cmd_buffer->state.subpass + 1); - uint32_t subpass_id = anv_get_subpass_id(&cmd_buffer->state); cmd_buffer->state.pending_pipe_bits |= cmd_buffer->state.pass->subpass_flushes[subpass_id]; + + genX(cmd_buffer_set_subpass)(cmd_buffer, cmd_buffer->state.subpass + 1); } void genX(CmdEndRenderPass)(