treewide: Use vk_collect_dependency_info_src_stages

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37961>
This commit is contained in:
Mel Henning
2025-10-20 12:34:34 -04:00
committed by Marge Bot
parent 90d17c0088
commit fafb81cd02
8 changed files with 22 additions and 74 deletions
+1 -8
View File
@@ -14521,14 +14521,7 @@ radv_CmdSetEvent2(VkCommandBuffer commandBuffer, VkEvent _event, const VkDepende
{
VK_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
VK_FROM_HANDLE(radv_event, event, _event);
VkPipelineStageFlags2 src_stage_mask = 0;
for (uint32_t i = 0; i < pDependencyInfo->memoryBarrierCount; i++)
src_stage_mask |= pDependencyInfo->pMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->bufferMemoryBarrierCount; i++)
src_stage_mask |= pDependencyInfo->pBufferMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->imageMemoryBarrierCount; i++)
src_stage_mask |= pDependencyInfo->pImageMemoryBarriers[i].srcStageMask;
VkPipelineStageFlags2 src_stage_mask = vk_collect_dependency_info_src_stages(pDependencyInfo);
write_event(cmd_buffer, event, src_stage_mask, 1);
}
+4 -8
View File
@@ -9,6 +9,8 @@
#include "tu_event.h"
#include "vk_synchronization.h"
#include "tu_cmd_buffer.h"
#include "tu_rmv.h"
@@ -109,14 +111,8 @@ tu_CmdSetEvent2(VkCommandBuffer commandBuffer,
{
VK_FROM_HANDLE(tu_cmd_buffer, cmd, commandBuffer);
VK_FROM_HANDLE(tu_event, event, _event);
VkPipelineStageFlags2 src_stage_mask = 0;
for (uint32_t i = 0; i < pDependencyInfo->memoryBarrierCount; i++)
src_stage_mask |= pDependencyInfo->pMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->bufferMemoryBarrierCount; i++)
src_stage_mask |= pDependencyInfo->pBufferMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->imageMemoryBarrierCount; i++)
src_stage_mask |= pDependencyInfo->pImageMemoryBarriers[i].srcStageMask;
VkPipelineStageFlags2 src_stage_mask =
vk_collect_dependency_info_src_stages(pDependencyInfo);
tu_write_event<CHIP>(cmd, event, src_stage_mask, 1);
}
+3 -8
View File
@@ -48,6 +48,7 @@
#include "vk_blend.h"
#include "vk_cmd_enqueue_entrypoints.h"
#include "vk_descriptor_update_template.h"
#include "vk_synchronization.h"
#include "vk_util.h"
#include "vk_enum_to_str.h"
@@ -2792,14 +2793,8 @@ static void handle_event_set2(struct vk_cmd_queue_entry *cmd,
{
LVP_FROM_HANDLE(lvp_event, event, cmd->u.set_event2.event);
VkPipelineStageFlags2 src_stage_mask = 0;
for (uint32_t i = 0; i < cmd->u.set_event2.dependency_info->memoryBarrierCount; i++)
src_stage_mask |= cmd->u.set_event2.dependency_info->pMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < cmd->u.set_event2.dependency_info->bufferMemoryBarrierCount; i++)
src_stage_mask |= cmd->u.set_event2.dependency_info->pBufferMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < cmd->u.set_event2.dependency_info->imageMemoryBarrierCount; i++)
src_stage_mask |= cmd->u.set_event2.dependency_info->pImageMemoryBarriers[i].srcStageMask;
VkPipelineStageFlags2 src_stage_mask =
vk_collect_dependency_info_src_stages(cmd->u.set_event2.dependency_info);
if (src_stage_mask & VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT)
state->pctx->flush(state->pctx, NULL, 0);
+3 -9
View File
@@ -76,6 +76,7 @@
#include "vk_log.h"
#include "vk_object.h"
#include "vk_pipeline_layout.h"
#include "vk_synchronization.h"
#include "vk_util.h"
/* Structure used to pass data into pvr_compute_generate_control_stream()
@@ -8341,7 +8342,6 @@ void pvr_CmdSetEvent2(VkCommandBuffer commandBuffer,
{
VK_FROM_HANDLE(pvr_cmd_buffer, cmd_buffer, commandBuffer);
VK_FROM_HANDLE(pvr_event, event, _event);
VkPipelineStageFlags2 stage_mask = 0;
VkResult result;
PVR_CHECK_COMMAND_BUFFER_BUILDING_STATE(cmd_buffer);
@@ -8350,14 +8350,8 @@ void pvr_CmdSetEvent2(VkCommandBuffer commandBuffer,
if (result != VK_SUCCESS)
return;
for (uint32_t i = 0; i < pDependencyInfo->memoryBarrierCount; i++)
stage_mask |= pDependencyInfo->pMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->bufferMemoryBarrierCount; i++)
stage_mask |= pDependencyInfo->pBufferMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->imageMemoryBarrierCount; i++)
stage_mask |= pDependencyInfo->pImageMemoryBarriers[i].srcStageMask;
VkPipelineStageFlags2 stage_mask =
vk_collect_dependency_info_src_stages(pDependencyInfo);
cmd_buffer->state.current_sub_cmd->event = (struct pvr_sub_cmd_event){
.type = PVR_EVENT_TYPE_SET,
+2 -8
View File
@@ -6160,14 +6160,8 @@ void genX(CmdSetEvent2)(
case INTEL_ENGINE_CLASS_RENDER:
case INTEL_ENGINE_CLASS_COMPUTE: {
VkPipelineStageFlags2 src_stages = 0;
for (uint32_t i = 0; i < pDependencyInfo->memoryBarrierCount; i++)
src_stages |= pDependencyInfo->pMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->bufferMemoryBarrierCount; i++)
src_stages |= pDependencyInfo->pBufferMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->imageMemoryBarrierCount; i++)
src_stages |= pDependencyInfo->pImageMemoryBarriers[i].srcStageMask;
VkPipelineStageFlags2 src_stages =
vk_collect_dependency_info_src_stages(pDependencyInfo);
cmd_buffer->state.pending_pipe_bits |= ANV_PIPE_POST_SYNC_BIT;
genX(cmd_buffer_apply_pipe_flushes)(cmd_buffer);
+3 -8
View File
@@ -28,6 +28,7 @@
#include "anv_measure.h"
#include "vk_format.h"
#include "vk_render_pass.h"
#include "vk_synchronization.h"
#include "vk_util.h"
#include "util/fast_idiv_by_const.h"
@@ -5811,14 +5812,8 @@ void genX(CmdSetEvent2)(
ANV_FROM_HANDLE(anv_cmd_buffer, cmd_buffer, commandBuffer);
ANV_FROM_HANDLE(anv_event, event, _event);
VkPipelineStageFlags2 src_stages = 0;
for (uint32_t i = 0; i < pDependencyInfo->memoryBarrierCount; i++)
src_stages |= pDependencyInfo->pMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->bufferMemoryBarrierCount; i++)
src_stages |= pDependencyInfo->pBufferMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->imageMemoryBarrierCount; i++)
src_stages |= pDependencyInfo->pImageMemoryBarriers[i].srcStageMask;
VkPipelineStageFlags2 src_stages =
vk_collect_dependency_info_src_stages(pDependencyInfo);
cmd_buffer->state.pending_pipe_bits |= ANV_PIPE_POST_SYNC_BIT;
genX(cmd_buffer_apply_pipe_flushes)(cmd_buffer);
+4 -7
View File
@@ -9,6 +9,8 @@
#include "nvk_entrypoints.h"
#include "nvk_mme.h"
#include "vk_synchronization.h"
#include "nv_push_cl906f.h"
#include "nv_push_cl9097.h"
#include "nv_push_cl90b5.h"
@@ -214,13 +216,8 @@ nvk_CmdSetEvent2(VkCommandBuffer commandBuffer,
nvk_cmd_flush_wait_dep(cmd, pDependencyInfo, false);
VkPipelineStageFlags2 stages = 0;
for (uint32_t i = 0; i < pDependencyInfo->memoryBarrierCount; i++)
stages |= pDependencyInfo->pMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->bufferMemoryBarrierCount; i++)
stages |= pDependencyInfo->pBufferMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < pDependencyInfo->imageMemoryBarrierCount; i++)
stages |= pDependencyInfo->pImageMemoryBarriers[i].srcStageMask;
VkPipelineStageFlags2 stages =
vk_collect_dependency_info_src_stages(pDependencyInfo);
nvk_event_report_semaphore(cmd, stages, event->addr, VK_EVENT_SET);
}
+2 -18
View File
@@ -12,6 +12,7 @@
#include "venus-protocol/vn_protocol_driver_command_buffer.h"
#include "venus-protocol/vn_protocol_driver_command_pool.h"
#include "vk_synchronization.h"
#include "vn_descriptor_set.h"
#include "vn_device.h"
@@ -1580,23 +1581,6 @@ vn_CmdSetEvent(VkCommandBuffer commandBuffer,
false);
}
static VkPipelineStageFlags2
vn_dependency_info_collect_src_stage_mask(const VkDependencyInfo *dep_info)
{
VkPipelineStageFlags2 mask = 0;
for (uint32_t i = 0; i < dep_info->memoryBarrierCount; i++)
mask |= dep_info->pMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < dep_info->bufferMemoryBarrierCount; i++)
mask |= dep_info->pBufferMemoryBarriers[i].srcStageMask;
for (uint32_t i = 0; i < dep_info->imageMemoryBarrierCount; i++)
mask |= dep_info->pImageMemoryBarriers[i].srcStageMask;
return mask;
}
void
vn_CmdSetEvent2(VkCommandBuffer commandBuffer,
VkEvent event,
@@ -1611,7 +1595,7 @@ vn_CmdSetEvent2(VkCommandBuffer commandBuffer,
VN_CMD_ENQUEUE(vkCmdSetEvent2, commandBuffer, event, pDependencyInfo);
const VkPipelineStageFlags2 src_stage_mask =
vn_dependency_info_collect_src_stage_mask(pDependencyInfo);
vk_collect_dependency_info_src_stages(pDependencyInfo);
vn_event_feedback_cmd_record(commandBuffer, event, src_stage_mask,
VK_EVENT_SET, true);
}