mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 06:48:06 +02:00
radv/sqtt: Add and enable basic EXT_debug_utils support.
Only CommandBuffer markers for now. Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14645>
This commit is contained in:
parent
a97ec3eb13
commit
89f376b506
2 changed files with 35 additions and 1 deletions
|
|
@ -21,6 +21,7 @@
|
|||
* IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "vk_common_entrypoints.h"
|
||||
#include "radv_private.h"
|
||||
#include "radv_shader.h"
|
||||
|
||||
|
|
@ -807,6 +808,35 @@ sqtt_DebugMarkerSetObjectTagEXT(VkDevice device, const VkDebugMarkerObjectTagInf
|
|||
return VK_SUCCESS;
|
||||
}
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL
|
||||
sqtt_CmdBeginDebugUtilsLabelEXT(VkCommandBuffer commandBuffer,
|
||||
const VkDebugUtilsLabelEXT *pLabelInfo)
|
||||
{
|
||||
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
|
||||
radv_write_user_event_marker(cmd_buffer, UserEventPush, pLabelInfo->pLabelName);
|
||||
|
||||
vk_common_CmdBeginDebugUtilsLabelEXT(commandBuffer, pLabelInfo);
|
||||
}
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL
|
||||
sqtt_CmdEndDebugUtilsLabelEXT(VkCommandBuffer commandBuffer)
|
||||
{
|
||||
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
|
||||
radv_write_user_event_marker(cmd_buffer, UserEventPop, NULL);
|
||||
|
||||
vk_common_CmdEndDebugUtilsLabelEXT(commandBuffer);
|
||||
}
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL
|
||||
sqtt_CmdInsertDebugUtilsLabelEXT(VkCommandBuffer commandBuffer,
|
||||
const VkDebugUtilsLabelEXT *pLabelInfo)
|
||||
{
|
||||
RADV_FROM_HANDLE(radv_cmd_buffer, cmd_buffer, commandBuffer);
|
||||
radv_write_user_event_marker(cmd_buffer, UserEventTrigger, pLabelInfo->pLabelName);
|
||||
|
||||
vk_common_CmdInsertDebugUtilsLabelEXT(commandBuffer, pLabelInfo);
|
||||
}
|
||||
|
||||
/* Pipelines */
|
||||
static enum rgp_hardware_stages
|
||||
radv_mesa_to_rgp_shader_stage(struct radv_pipeline *pipeline, gl_shader_stage stage)
|
||||
|
|
|
|||
|
|
@ -355,6 +355,7 @@ static const struct vk_instance_extension_table radv_instance_extensions_support
|
|||
.KHR_external_semaphore_capabilities = true,
|
||||
.KHR_get_physical_device_properties2 = true,
|
||||
.EXT_debug_report = true,
|
||||
/* EXT_debug_utils is exposed only if thread trace is enabled. See radv_CreateInstance */
|
||||
|
||||
#ifdef RADV_USE_WSI_PLATFORM
|
||||
.KHR_get_surface_capabilities2 = true,
|
||||
|
|
@ -992,7 +993,10 @@ radv_CreateInstance(const VkInstanceCreateInfo *pCreateInfo,
|
|||
struct vk_instance_dispatch_table dispatch_table;
|
||||
vk_instance_dispatch_table_from_entrypoints(&dispatch_table, &radv_instance_entrypoints, true);
|
||||
vk_instance_dispatch_table_from_entrypoints(&dispatch_table, &wsi_instance_entrypoints, false);
|
||||
result = vk_instance_init(&instance->vk, &radv_instance_extensions_supported, &dispatch_table,
|
||||
struct vk_instance_extension_table extensions_supported = radv_instance_extensions_supported;
|
||||
if (radv_thread_trace_enabled())
|
||||
extensions_supported.EXT_debug_utils = true;
|
||||
result = vk_instance_init(&instance->vk, &extensions_supported, &dispatch_table,
|
||||
pCreateInfo, pAllocator);
|
||||
if (result != VK_SUCCESS) {
|
||||
vk_free(pAllocator, instance);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue