From 8f84564d463ca48db93a2f62b912276a7a1cbfbe Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 30 Jan 2017 15:27:09 +0000 Subject: [PATCH] Update for new enum values, dispatch table structs in latest headers --- renderdoc/driver/vulkan/vk_common.cpp | 53 ++++++++++++++++++- renderdoc/driver/vulkan/vk_dispatchtables.h | 1 - renderdoc/driver/vulkan/vk_hookset_defs.h | 20 +------ renderdoc/driver/vulkan/vk_layer.cpp | 2 - renderdoc/driver/vulkan/vk_layer_android.cpp | 2 - .../driver/vulkan/wrappers/vk_misc_funcs.cpp | 4 ++ 6 files changed, 58 insertions(+), 24 deletions(-) diff --git a/renderdoc/driver/vulkan/vk_common.cpp b/renderdoc/driver/vulkan/vk_common.cpp index d3b3de446..81165a3f5 100644 --- a/renderdoc/driver/vulkan/vk_common.cpp +++ b/renderdoc/driver/vulkan/vk_common.cpp @@ -1305,6 +1305,8 @@ string ToStrHelper::Get(const VkPipelineStageFla ret += " | VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT"; if(el & VK_PIPELINE_STAGE_ALL_COMMANDS_BIT) ret += " | VK_PIPELINE_STAGE_ALL_COMMANDS_BIT"; + if(el & VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX) + ret += " | VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX"; if(!ret.empty()) ret = ret.substr(3); @@ -1403,6 +1405,8 @@ string ToStrHelper::Get(const VkImageCreateFlagBit ret += " | VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"; if(el & VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT) ret += " | VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"; + if(el & VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR) + ret += " | VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR"; if(!ret.empty()) ret = ret.substr(3); @@ -2187,6 +2191,10 @@ string ToStrHelper::Get(const VkAccessFlagBits &el) ret += " | VK_ACCESS_MEMORY_READ_BIT"; if(el & VK_ACCESS_MEMORY_WRITE_BIT) ret += " | VK_ACCESS_MEMORY_WRITE_BIT"; + if(el & VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX) + ret += " | VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX"; + if(el & VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX) + ret += " | VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX"; if(!ret.empty()) ret = ret.substr(3); @@ -2268,8 +2276,8 @@ string ToStrHelper::Get(const VkStructureType &el) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_SUBMIT_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE) - TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_FENCE_CREATE_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_BIND_SPARSE_INFO) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_FENCE_CREATE_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_EVENT_CREATE_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO) @@ -2302,6 +2310,7 @@ string ToStrHelper::Get(const VkStructureType &el) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER) @@ -2314,6 +2323,47 @@ string ToStrHelper::Get(const VkStructureType &el) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR) TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT) + TOSTR_CASE_STRINGIZE(VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT) default: break; } @@ -2563,6 +2613,7 @@ string ToStrHelper::Get(const VkResult &el) TOSTR_CASE_STRINGIZE(VK_ERROR_INCOMPATIBLE_DISPLAY_KHR) TOSTR_CASE_STRINGIZE(VK_ERROR_VALIDATION_FAILED_EXT) TOSTR_CASE_STRINGIZE(VK_ERROR_INVALID_SHADER_NV) + TOSTR_CASE_STRINGIZE(VK_ERROR_OUT_OF_POOL_MEMORY_KHR) default: break; } diff --git a/renderdoc/driver/vulkan/vk_dispatchtables.h b/renderdoc/driver/vulkan/vk_dispatchtables.h index 3e4c4b6fe..a3ececb74 100644 --- a/renderdoc/driver/vulkan/vk_dispatchtables.h +++ b/renderdoc/driver/vulkan/vk_dispatchtables.h @@ -32,7 +32,6 @@ #undef CreateSemaphore #endif -#include "official/vk_layer.h" #include "vk_hookset_defs.h" void InitReplayTables(void *vulkanModule); diff --git a/renderdoc/driver/vulkan/vk_hookset_defs.h b/renderdoc/driver/vulkan/vk_hookset_defs.h index e2b428971..57cb986b1 100644 --- a/renderdoc/driver/vulkan/vk_hookset_defs.h +++ b/renderdoc/driver/vulkan/vk_hookset_defs.h @@ -24,6 +24,8 @@ #pragma once +#include "official/vk_layer.h" + #if defined(VK_USE_PLATFORM_WIN32_KHR) #define HookInitInstance_PlatformSpecific() \ @@ -651,11 +653,6 @@ VkExternalImageFormatPropertiesNV *, pExternalImageFormatProperties); \ HookDefine_PlatformSpecific() -// define function pointers for other platforms to make things easier -#ifndef VK_NV_external_memory_win32 -#define PFN_vkGetMemoryWin32HandleNV PFN_vkVoidFunction -#endif - struct VkLayerInstanceDispatchTableExtended : VkLayerInstanceDispatchTable { // for consistency & ease, we declare the CreateInstance pointer here @@ -665,9 +662,6 @@ struct VkLayerInstanceDispatchTableExtended : VkLayerInstanceDispatchTable // we need to use these before we have a dispatch table PFN_vkEnumerateInstanceExtensionProperties EnumerateInstanceExtensionProperties; PFN_vkEnumerateInstanceLayerProperties EnumerateInstanceLayerProperties; - - // VK_NV_external_memory_capabilities - PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV GetPhysicalDeviceExternalImageFormatPropertiesNV; }; struct VkLayerDispatchTableExtended : VkLayerDispatchTable @@ -675,14 +669,4 @@ struct VkLayerDispatchTableExtended : VkLayerDispatchTable // for consistency & ease, we declare the CreateDevice pointer here // even though it won't actually ever get used PFN_vkCreateDevice CreateDevice; - - // VK_EXT_debug_marker - PFN_vkDebugMarkerSetObjectTagEXT DebugMarkerSetObjectTagEXT; - PFN_vkDebugMarkerSetObjectNameEXT DebugMarkerSetObjectNameEXT; - PFN_vkCmdDebugMarkerBeginEXT CmdDebugMarkerBeginEXT; - PFN_vkCmdDebugMarkerEndEXT CmdDebugMarkerEndEXT; - PFN_vkCmdDebugMarkerInsertEXT CmdDebugMarkerInsertEXT; - - // VK_NV_external_memory_win32 - PFN_vkGetMemoryWin32HandleNV GetMemoryWin32HandleNV; }; diff --git a/renderdoc/driver/vulkan/vk_layer.cpp b/renderdoc/driver/vulkan/vk_layer.cpp index d12f2809c..c8db13842 100644 --- a/renderdoc/driver/vulkan/vk_layer.cpp +++ b/renderdoc/driver/vulkan/vk_layer.cpp @@ -25,8 +25,6 @@ #include #include -#include "official/vk_layer.h" - #include "api/replay/version.h" #include "common/common.h" #include "common/threading.h" diff --git a/renderdoc/driver/vulkan/vk_layer_android.cpp b/renderdoc/driver/vulkan/vk_layer_android.cpp index 3d3ba47bc..72c5a5313 100644 --- a/renderdoc/driver/vulkan/vk_layer_android.cpp +++ b/renderdoc/driver/vulkan/vk_layer_android.cpp @@ -25,8 +25,6 @@ #include #include -#include "official/vk_layer.h" - // RenderDoc Includes #include "vk_common.h" diff --git a/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp index b21ede2f0..e2fcd1693 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp @@ -991,9 +991,13 @@ static VkResourceRecord *GetObjRecord(VkDebugReportObjectTypeEXT objType, uint64 case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT: return GetRecord((VkSurfaceKHR)object); case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT: return GetRecord((VkSwapchainKHR)object); case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT: return GetRecord((VkCommandPool)object); + case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT: + case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT: case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT: case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT: case VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT: + case VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT: + case VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT: case VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT: break; } return NULL;