radv: track the pipeline bind point for indirect commands layout
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Tue, 20 Jun 2023 06:38:57 +0000 (08:38 +0200)
committerMarge Bot <emma+marge@anholt.net>
Wed, 23 Aug 2023 06:05:39 +0000 (06:05 +0000)
This will be used to implement DGC compute.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24275>

src/amd/vulkan/radv_device_generated_commands.c
src/amd/vulkan/radv_private.h

index bbc7c58..80a783b 100644 (file)
@@ -934,6 +934,7 @@ radv_CreateIndirectCommandsLayoutNV(VkDevice _device, const VkIndirectCommandsLa
 
    vk_object_base_init(&device->vk, &layout->base, VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV);
 
+   layout->pipeline_bind_point = pCreateInfo->pipelineBindPoint;
    layout->input_stride = pCreateInfo->pStreamStrides[0];
    layout->token_count = pCreateInfo->tokenCount;
    typed_memcpy(layout->tokens, pCreateInfo->pTokens, pCreateInfo->tokenCount);
index d51cbd3..cf9542b 100644 (file)
@@ -3224,6 +3224,8 @@ void radv_sqtt_emit_relocated_shaders(struct radv_cmd_buffer *cmd_buffer, struct
 struct radv_indirect_command_layout {
    struct vk_object_base base;
 
+   VkPipelineBindPoint pipeline_bind_point;
+
    uint32_t input_stride;
    uint32_t token_count;