diff options
| author | Tony Barbour <tony@LunarG.com> | 2017-06-19 16:50:37 -0600 |
|---|---|---|
| committer | Tony-LunarG <tony@lunarg.com> | 2017-06-29 13:03:10 -0600 |
| commit | 4a1572c647e1b063b2d0e06f026d7645c51a486d (patch) | |
| tree | d0271fcd504cf41fd24d6ffcc6fc0e6865161d3c /layers/core_validation.cpp | |
| parent | 845b2c663757a9030ae108dc76602cc57495f1cc (diff) | |
| download | usermoji-4a1572c647e1b063b2d0e06f026d7645c51a486d.tar.xz | |
layers: Add names to objects and print in validation
Change-Id: Ie6587c26c8528ffac5698b8cb3ca2c4cc86b1dfd
layers: Fill out the rest of debug marker calls
Change-Id: I0c4085e36e5c06e11c0c09d1ca126ae6db35526d
Diffstat (limited to 'layers/core_validation.cpp')
| -rw-r--r-- | layers/core_validation.cpp | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index 9450278c..9b43035f 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -10135,6 +10135,41 @@ VKAPI_ATTR VkResult VKAPI_CALL GetDisplayPlaneCapabilitiesKHR(VkPhysicalDevice p return result; } +VKAPI_ATTR VkResult VKAPI_CALL DebugMarkerSetObjectNameEXT(VkDevice device, VkDebugMarkerObjectNameInfoEXT *pNameInfo) { + std::unique_lock<std::mutex> lock(global_lock); + layer_data *device_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map); + if (pNameInfo->pObjectName) { + device_data->report_data->debugObjectNameMap->insert( + std::make_pair<uint64_t, std::string>((uint64_t &&)pNameInfo->object, pNameInfo->pObjectName)); + } else { + device_data->report_data->debugObjectNameMap->erase(pNameInfo->object); + } + lock.unlock(); + VkResult result = device_data->dispatch_table.DebugMarkerSetObjectNameEXT(device, pNameInfo); + return result; +} + +VKAPI_ATTR VkResult VKAPI_CALL DebugMarkerSetObjectTagEXT(VkDevice device, VkDebugMarkerObjectTagInfoEXT *pTagInfo) { + layer_data *device_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map); + VkResult result = device_data->dispatch_table.DebugMarkerSetObjectTagEXT(device, pTagInfo); + return result; +} + +VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerBeginEXT(VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT *pMarkerInfo) { + layer_data *device_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map); + device_data->dispatch_table.CmdDebugMarkerBeginEXT(commandBuffer, pMarkerInfo); +} + +VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerEndEXT(VkCommandBuffer commandBuffer) { + layer_data *device_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map); + device_data->dispatch_table.CmdDebugMarkerEndEXT(commandBuffer); +} + +VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerInsertEXT(VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT *pMarkerInfo) { + layer_data *device_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map); + device_data->dispatch_table.CmdDebugMarkerInsertEXT(commandBuffer, pMarkerInfo); +} + VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL GetDeviceProcAddr(VkDevice device, const char *funcName); VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL GetPhysicalDeviceProcAddr(VkInstance instance, const char *funcName); VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL GetInstanceProcAddr(VkInstance instance, const char *funcName); @@ -10262,6 +10297,11 @@ static const std::unordered_map<std::string, void*> name_to_funcptr_map = { {"vkCmdNextSubpass", (void*)CmdNextSubpass}, {"vkCmdEndRenderPass", (void*)CmdEndRenderPass}, {"vkCmdExecuteCommands", (void*)CmdExecuteCommands}, + {"vkCmdDebugMarkerBeginEXT", (void*)CmdDebugMarkerBeginEXT}, + {"vkCmdDebugMarkerEndEXT", (void*)CmdDebugMarkerEndEXT}, + {"vkCmdDebugMarkerInsertEXT", (void*)CmdDebugMarkerInsertEXT}, + {"vkDebugMarkerSetObjectNameEXT", (void*)DebugMarkerSetObjectNameEXT}, + {"vkDebugMarkerSetObjectTagEXT", (void*)DebugMarkerSetObjectTagEXT}, {"vkSetEvent", (void*)SetEvent}, {"vkMapMemory", (void*)MapMemory}, {"vkUnmapMemory", (void*)UnmapMemory}, |
