vulkan: Rename {encode,update}_bind_pipeline to {encode,update}_prepare

This commit is contained in:
Natalie Vock 2026-02-19 13:51:27 +01:00
parent 837078b8d5
commit 99617e4e15
6 changed files with 27 additions and 31 deletions

View file

@ -403,7 +403,7 @@ radv_build_flags(VkCommandBuffer commandBuffer, uint32_t key)
}
static VkResult
radv_encode_bind_pipeline(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state)
radv_encode_prepare(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state)
{
radv_bvh_build_bind_pipeline(commandBuffer, RADV_META_OBJECT_KEY_BVH_ENCODE, encode_spv, sizeof(encode_spv),
sizeof(struct encode_args),
@ -413,8 +413,7 @@ radv_encode_bind_pipeline(VkCommandBuffer commandBuffer, const struct vk_acceler
}
static VkResult
radv_encode_bind_pipeline_gfx12(VkCommandBuffer commandBuffer,
const struct vk_acceleration_structure_build_state *state)
radv_encode_prepare_gfx12(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state)
{
radv_bvh_build_bind_pipeline(commandBuffer, RADV_META_OBJECT_KEY_BVH_ENCODE, encode_gfx12_spv,
sizeof(encode_gfx12_spv), sizeof(struct encode_gfx12_args),
@ -524,8 +523,8 @@ radv_encode_as_gfx12(VkCommandBuffer commandBuffer, const struct vk_acceleration
}
static VkResult
radv_encode_triangles_bind_pipeline_gfx12(VkCommandBuffer commandBuffer,
const struct vk_acceleration_structure_build_state *state)
radv_encode_triangles_prepare_gfx12(VkCommandBuffer commandBuffer,
const struct vk_acceleration_structure_build_state *state)
{
bool compress_triangles = state->config.encode_key[2] & RADV_ENCODE_KEY_BATCH_COMPRESS_GFX12;
if (!compress_triangles)
@ -578,8 +577,8 @@ radv_encode_triangles_gfx12(VkCommandBuffer commandBuffer, const struct vk_accel
}
static VkResult
radv_encode_triangles_retry_bind_pipeline_gfx12(VkCommandBuffer commandBuffer,
const struct vk_acceleration_structure_build_state *state)
radv_encode_triangles_retry_prepare_gfx12(VkCommandBuffer commandBuffer,
const struct vk_acceleration_structure_build_state *state)
{
bool compress_triangles = state->config.encode_key[2] & RADV_ENCODE_KEY_BATCH_COMPRESS_GFX12;
if (!compress_triangles)
@ -636,7 +635,7 @@ radv_encode_triangles_retry_gfx12(VkCommandBuffer commandBuffer,
}
static VkResult
radv_init_header_bind_pipeline(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state)
radv_init_header_prepare(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state)
{
/* Wait for encoding to finish. */
vk_barrier_compute_w_to_compute_r(commandBuffer);
@ -769,8 +768,8 @@ radv_init_update_scratch(VkCommandBuffer commandBuffer, const struct vk_accelera
}
static void
radv_update_bind_pipeline(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state,
bool flushed_cp_after_init_update_scratch, bool flushed_compute_after_init_update_scratch)
radv_update_prepare(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state,
bool flushed_cp_after_init_update_scratch, bool flushed_compute_after_init_update_scratch)
{
VK_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
struct radv_device *device = radv_cmd_buffer_device(cmd_buffer);
@ -969,27 +968,25 @@ radv_device_init_accel_struct_build_state(struct radv_device *device)
.get_as_size = radv_get_as_size,
.get_update_scratch_size = radv_get_update_scratch_size,
.init_update_scratch = radv_init_update_scratch,
.update_bind_pipeline[0] = radv_update_bind_pipeline,
.update_prepare[0] = radv_update_prepare,
};
if (radv_use_bvh8(pdev)) {
device->meta_state.accel_struct_build.build_ops.update_as[0] = radv_update_as_gfx12;
device->meta_state.accel_struct_build.build_ops.get_encode_scratch_size = radv_get_encode_scratch_size;
device->meta_state.accel_struct_build.build_ops.encode_bind_pipeline[0] = radv_encode_bind_pipeline_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_prepare[0] = radv_encode_prepare_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_as[0] = radv_encode_as_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_bind_pipeline[1] =
radv_encode_triangles_bind_pipeline_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_prepare[1] = radv_encode_triangles_prepare_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_as[1] = radv_encode_triangles_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_bind_pipeline[2] =
radv_encode_triangles_retry_bind_pipeline_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_prepare[2] = radv_encode_triangles_retry_prepare_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_as[2] = radv_encode_triangles_retry_gfx12;
device->meta_state.accel_struct_build.build_ops.encode_bind_pipeline[3] = radv_init_header_bind_pipeline;
device->meta_state.accel_struct_build.build_ops.encode_prepare[3] = radv_init_header_prepare;
device->meta_state.accel_struct_build.build_ops.encode_as[3] = radv_init_header;
} else {
device->meta_state.accel_struct_build.build_ops.update_as[0] = radv_update_as;
device->meta_state.accel_struct_build.build_ops.encode_bind_pipeline[0] = radv_encode_bind_pipeline;
device->meta_state.accel_struct_build.build_ops.encode_prepare[0] = radv_encode_prepare;
device->meta_state.accel_struct_build.build_ops.encode_as[0] = radv_encode_as;
device->meta_state.accel_struct_build.build_ops.encode_bind_pipeline[1] = radv_init_header_bind_pipeline;
device->meta_state.accel_struct_build.build_ops.encode_prepare[1] = radv_init_header_prepare;
device->meta_state.accel_struct_build.build_ops.encode_as[1] = radv_init_header;
device->meta_state.accel_struct_build.build_ops.leaf_spirv_override = leaf_spv;
device->meta_state.accel_struct_build.build_ops.leaf_spirv_override_size = sizeof(leaf_spv);

View file

@ -174,8 +174,8 @@ tu_get_build_config(VkDevice device,
}
static VkResult
encode_bind_pipeline(VkCommandBuffer commandBuffer,
const struct vk_acceleration_structure_build_state *state)
encode_prepare(VkCommandBuffer commandBuffer,
const struct vk_acceleration_structure_build_state *state)
{
VK_FROM_HANDLE(tu_cmd_buffer, cmdbuf, commandBuffer);
struct tu_device *device = cmdbuf->device;
@ -348,7 +348,7 @@ header(VkCommandBuffer commandBuffer,
const struct vk_acceleration_structure_build_ops tu_as_build_ops = {
.get_build_config = tu_get_build_config,
.get_as_size = get_bvh_size,
.encode_bind_pipeline = { encode_bind_pipeline, header_bind_pipeline },
.encode_prepare = { encode_prepare, header_bind_pipeline },
.encode_as = { encode, header },
};

View file

@ -620,14 +620,14 @@ lvp_CopyAccelerationStructureToMemoryKHR(VkDevice _device, VkDeferredOperationKH
}
static VkResult
lvp_encode_bind_pipeline(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state)
lvp_encode_prepare(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state)
{
return VK_SUCCESS;
}
const struct vk_acceleration_structure_build_ops accel_struct_ops = {
.get_as_size = lvp_get_as_size,
.encode_bind_pipeline[0] = lvp_encode_bind_pipeline,
.encode_prepare[0] = lvp_encode_prepare,
.encode_as[0] = lvp_enqueue_encode_as,
};

View file

@ -358,7 +358,7 @@ anv_bvh_build_set_args(VkCommandBuffer commandBuffer, const void *args,
}
static VkResult
anv_encode_bind_pipeline(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state)
anv_encode_prepare(VkCommandBuffer commandBuffer, const struct vk_acceleration_structure_build_state *state)
{
anv_bvh_build_bind_pipeline(commandBuffer,
ANV_OBJECT_KEY_BVH_ENCODE,
@ -524,8 +524,7 @@ static const struct vk_acceleration_structure_build_ops anv_build_ops = {
.end_debug_marker = end_debug_marker,
.get_as_size = anv_get_as_size,
.get_build_config = anv_get_build_config,
.encode_bind_pipeline = { anv_encode_bind_pipeline,
anv_init_header_bind_pipeline },
.encode_prepare = { anv_encode_prepare, anv_init_header_bind_pipeline },
.encode_as = { anv_encode_as, anv_init_header },
};

View file

@ -1401,11 +1401,11 @@ vk_cmd_build_acceleration_structures(VkCommandBuffer commandBuffer,
}
if (update) {
ops->update_bind_pipeline[pass](commandBuffer, &bvh_states[i].vk,
ops->update_prepare[pass](commandBuffer, &bvh_states[i].vk,
flushed_cp_after_init_update_scratch,
flushed_compute_after_init_update_scratch);
} else {
ops->encode_bind_pipeline[pass](commandBuffer, &bvh_states[i].vk);
ops->encode_prepare[pass](commandBuffer, &bvh_states[i].vk);
}
} else {
if (update != (bvh_states[i].vk.config.internal_type ==

View file

@ -139,11 +139,11 @@ struct vk_acceleration_structure_build_ops {
VkDeviceSize (*get_encode_scratch_size)(VkDevice device, const struct vk_acceleration_structure_build_state *state);
VkDeviceSize (*get_update_scratch_size)(VkDevice device, const struct vk_acceleration_structure_build_state *state);
VkResult (*encode_bind_pipeline[MAX_ENCODE_PASSES])(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state);
VkResult (*encode_prepare[MAX_ENCODE_PASSES])(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state);
void (*encode_as[MAX_ENCODE_PASSES])(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state);
void (*init_update_scratch)(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state);
void (*update_bind_pipeline[MAX_ENCODE_PASSES])(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state,
void (*update_prepare[MAX_ENCODE_PASSES])(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state,
bool flushed_cp_after_init_update_scratch, bool flushed_compute_after_init_update_scratch);
void (*update_as[MAX_ENCODE_PASSES])(VkCommandBuffer cmd_buffer, const struct vk_acceleration_structure_build_state *state);