Update vulkan.h.in to 1.0.49 and strip unused exts
authorPyry Haulos <phaulos@google.com>
Wed, 10 May 2017 16:54:23 +0000 (09:54 -0700)
committerPyry Haulos <phaulos@google.com>
Tue, 16 May 2017 17:59:23 +0000 (13:59 -0400)
This change updates vulkan.h.in to match header version 49.
Vendor-specific extensions and KHX extensions that are not covered by CTS
are removed.

gen_framework.py now auto-detects function class from its first argument,
except for vkGet*ProcAddr, which require special handling.

Components: Vulkan

Change-Id: If6e1d959091a9064585bf29ef9983d03649ce513

25 files changed:
external/vulkancts/framework/vulkan/vkBasicTypes.inl
external/vulkancts/framework/vulkan/vkConcreteDeviceInterface.inl
external/vulkancts/framework/vulkan/vkConcreteInstanceInterface.inl
external/vulkancts/framework/vulkan/vkDebugReportUtil.cpp
external/vulkancts/framework/vulkan/vkDeviceDriverImpl.inl
external/vulkancts/framework/vulkan/vkDeviceFunctionPointers.inl
external/vulkancts/framework/vulkan/vkFunctionPointerTypes.inl
external/vulkancts/framework/vulkan/vkHandleType.inl
external/vulkancts/framework/vulkan/vkImageUtil.cpp
external/vulkancts/framework/vulkan/vkInitDeviceFunctionPointers.inl
external/vulkancts/framework/vulkan/vkInitInstanceFunctionPointers.inl
external/vulkancts/framework/vulkan/vkInstanceDriverImpl.inl
external/vulkancts/framework/vulkan/vkInstanceFunctionPointers.inl
external/vulkancts/framework/vulkan/vkNullDriver.cpp
external/vulkancts/framework/vulkan/vkNullDriverImpl.inl
external/vulkancts/framework/vulkan/vkRefUtil.inl
external/vulkancts/framework/vulkan/vkRefUtilImpl.inl
external/vulkancts/framework/vulkan/vkStrUtil.inl
external/vulkancts/framework/vulkan/vkStrUtilImpl.inl
external/vulkancts/framework/vulkan/vkStructTypes.inl
external/vulkancts/framework/vulkan/vkTypeUtil.inl
external/vulkancts/framework/vulkan/vkVirtualDeviceInterface.inl
external/vulkancts/framework/vulkan/vkVirtualInstanceInterface.inl
external/vulkancts/scripts/gen_framework.py
external/vulkancts/scripts/src/vulkan.h.in

index aad3052..ca9cf41 100644 (file)
@@ -46,10 +46,8 @@ VK_DEFINE_NON_DISPATCHABLE_HANDLE    (VkSurfaceKHR,                                  HANDLE_TYPE_SURFACE_KHR);
 VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkSwapchainKHR,                                HANDLE_TYPE_SWAPCHAIN_KHR);
 VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkDisplayKHR,                                  HANDLE_TYPE_DISPLAY_KHR);
 VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkDisplayModeKHR,                              HANDLE_TYPE_DISPLAY_MODE_KHR);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkDebugReportCallbackEXT,              HANDLE_TYPE_DEBUG_REPORT_CALLBACK_EXT);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkObjectTableNVX,                              HANDLE_TYPE_OBJECT_TABLE_NVX);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkIndirectCommandsLayoutNVX,   HANDLE_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX);
 VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkDescriptorUpdateTemplateKHR, HANDLE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkDebugReportCallbackEXT,              HANDLE_TYPE_DEBUG_REPORT_CALLBACK_EXT);
 
 enum VkPipelineCacheHeaderVersion
 {
@@ -88,103 +86,84 @@ enum VkResult
 
 enum VkStructureType
 {
-       VK_STRUCTURE_TYPE_APPLICATION_INFO                                                                              = 0,
-       VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO                                                                  = 1,
-       VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO                                                              = 2,
-       VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO                                                                    = 3,
-       VK_STRUCTURE_TYPE_SUBMIT_INFO                                                                                   = 4,
-       VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO                                                                  = 5,
-       VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE                                                                   = 6,
-       VK_STRUCTURE_TYPE_BIND_SPARSE_INFO                                                                              = 7,
-       VK_STRUCTURE_TYPE_FENCE_CREATE_INFO                                                                             = 8,
-       VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO                                                                 = 9,
-       VK_STRUCTURE_TYPE_EVENT_CREATE_INFO                                                                             = 10,
-       VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO                                                                = 11,
-       VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO                                                                    = 12,
-       VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO                                                               = 13,
-       VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO                                                                             = 14,
-       VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO                                                                = 15,
-       VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO                                                             = 16,
-       VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO                                                    = 17,
-       VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO                                             = 18,
-       VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO                               = 19,
-       VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO                             = 20,
-       VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO                               = 21,
-       VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO                                   = 22,
-       VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO                              = 23,
-       VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO                                = 24,
-       VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO                              = 25,
-       VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO                                = 26,
-       VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO                                    = 27,
-       VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO                                                 = 28,
-       VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO                                                  = 29,
-       VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO                                                   = 30,
-       VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO                                                                   = 31,
-       VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO                                             = 32,
-       VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO                                                   = 33,
-       VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO                                                  = 34,
-       VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET                                                                  = 35,
-       VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET                                                                   = 36,
-       VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO                                                               = 37,
-       VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO                                                               = 38,
-       VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO                                                              = 39,
-       VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO                                                  = 40,
-       VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO                                               = 41,
-       VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO                                                             = 42,
-       VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO                                                                = 43,
-       VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER                                                                 = 44,
-       VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER                                                                  = 45,
-       VK_STRUCTURE_TYPE_MEMORY_BARRIER                                                                                = 46,
-       VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO                                                   = 47,
-       VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO                                                             = 48,
-       VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR                                                             = 1000001000,
-       VK_STRUCTURE_TYPE_PRESENT_INFO_KHR                                                                              = 1000001001,
-       VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR                                                  = 1000002000,
-       VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR                                               = 1000002001,
-       VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR                                                              = 1000003000,
-       VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR                                                  = 1000004000,
-       VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR                                                   = 1000005000,
-       VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR                                               = 1000006000,
-       VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR                                                   = 1000007000,
-       VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR                                               = 1000008000,
-       VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR                                                 = 1000009000,
-       VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT                                 = 1000011000,
-       VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD  = 1000018000,
-       VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT                                             = 1000022000,
-       VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT                                              = 1000022001,
-       VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT                                                  = 1000022002,
-       VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV                             = 1000026000,
-       VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV                    = 1000026001,
-       VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV                  = 1000026002,
-       VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV                                  = 1000056000,
-       VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV                                                = 1000056001,
-       VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV                                    = 1000057000,
-       VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV                                    = 1000057001,
-       VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV                             = 1000058000,
-       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR                                                = 1000059000,
-       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR                                              = 1000059001,
-       VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR                                                               = 1000059002,
-       VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR                                                 = 1000059003,
-       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR                               = 1000059004,
-       VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR                                                 = 1000059005,
-       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR                               = 1000059006,
-       VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR                                  = 1000059007,
-       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR                = 1000059008,
-       VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT                                                                  = 1000061000,
-       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR                = 1000080000,
-       VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR                                                                   = 1000084000,
-       VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR                               = 1000111000,
-       VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR                    = 1000085000,
-       VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX                                                  = 1000086000,
-       VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX                              = 1000086001,
-       VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX                                                 = 1000086002,
-       VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX                               = 1000086003,
-       VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX                                  = 1000086004,
-       VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX                                = 1000086005,
-       VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE                                                             = 1000092000,
-       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR                                    = 1000119000,
-       VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR                                                    = 1000119001,
-       VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR                                                                  = 1000119002,
+       VK_STRUCTURE_TYPE_APPLICATION_INFO                                                                      = 0,
+       VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO                                                          = 1,
+       VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO                                                      = 2,
+       VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO                                                            = 3,
+       VK_STRUCTURE_TYPE_SUBMIT_INFO                                                                           = 4,
+       VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO                                                          = 5,
+       VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE                                                           = 6,
+       VK_STRUCTURE_TYPE_BIND_SPARSE_INFO                                                                      = 7,
+       VK_STRUCTURE_TYPE_FENCE_CREATE_INFO                                                                     = 8,
+       VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO                                                         = 9,
+       VK_STRUCTURE_TYPE_EVENT_CREATE_INFO                                                                     = 10,
+       VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO                                                        = 11,
+       VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO                                                            = 12,
+       VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO                                                       = 13,
+       VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO                                                                     = 14,
+       VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO                                                        = 15,
+       VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO                                                     = 16,
+       VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO                                            = 17,
+       VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO                                     = 18,
+       VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO                       = 19,
+       VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO                     = 20,
+       VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO                       = 21,
+       VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO                           = 22,
+       VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO                      = 23,
+       VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO                        = 24,
+       VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO                      = 25,
+       VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO                        = 26,
+       VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO                            = 27,
+       VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO                                         = 28,
+       VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO                                          = 29,
+       VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO                                           = 30,
+       VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO                                                           = 31,
+       VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO                                     = 32,
+       VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO                                           = 33,
+       VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO                                          = 34,
+       VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET                                                          = 35,
+       VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET                                                           = 36,
+       VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO                                                       = 37,
+       VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO                                                       = 38,
+       VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO                                                      = 39,
+       VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO                                          = 40,
+       VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO                                       = 41,
+       VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO                                                     = 42,
+       VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO                                                        = 43,
+       VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER                                                         = 44,
+       VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER                                                          = 45,
+       VK_STRUCTURE_TYPE_MEMORY_BARRIER                                                                        = 46,
+       VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO                                           = 47,
+       VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO                                                     = 48,
+       VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR                                                     = 1000001000,
+       VK_STRUCTURE_TYPE_PRESENT_INFO_KHR                                                                      = 1000001001,
+       VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR                                          = 1000002000,
+       VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR                                       = 1000002001,
+       VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR                                                      = 1000003000,
+       VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR                                          = 1000004000,
+       VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR                                           = 1000005000,
+       VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR                                       = 1000006000,
+       VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR                                           = 1000007000,
+       VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR                                       = 1000008000,
+       VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR                                         = 1000009000,
+       VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT                         = 1000011000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR                                        = 1000059000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR                                      = 1000059001,
+       VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR                                                       = 1000059002,
+       VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR                                         = 1000059003,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR                       = 1000059004,
+       VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR                                         = 1000059005,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR                       = 1000059006,
+       VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR                          = 1000059007,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR        = 1000059008,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR        = 1000080000,
+       VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR                                                           = 1000084000,
+       VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR            = 1000085000,
+       VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE                                                     = 1000092000,
+       VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR                       = 1000111000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR                            = 1000119000,
+       VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR                                            = 1000119001,
+       VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR                                                          = 1000119002,
 };
 
 enum VkSystemAllocationScope
@@ -392,14 +371,8 @@ enum VkFormat
        VK_FORMAT_ASTC_12x10_SRGB_BLOCK                 = 182,
        VK_FORMAT_ASTC_12x12_UNORM_BLOCK                = 183,
        VK_FORMAT_ASTC_12x12_SRGB_BLOCK                 = 184,
-       VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG   = 1000054000,
-       VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG   = 1000054001,
-       VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG   = 1000054002,
-       VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG   = 1000054003,
-       VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG    = 1000054004,
-       VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG    = 1000054005,
-       VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG    = 1000054006,
-       VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG    = 1000054007,
+
+       VK_FORMAT_LAST
 };
 
 enum VkImageType
@@ -635,7 +608,8 @@ enum VkFilter
 {
        VK_FILTER_NEAREST       = 0,
        VK_FILTER_LINEAR        = 1,
-       VK_FILTER_CUBIC_IMG     = 1000015000,
+
+       VK_FILTER_LAST
 };
 
 enum VkSamplerMipmapMode
@@ -735,6 +709,44 @@ enum VkSubpassContents
        VK_SUBPASS_CONTENTS_LAST
 };
 
+enum VkObjectType
+{
+       VK_OBJECT_TYPE_UNKNOWN                                                  = 0,
+       VK_OBJECT_TYPE_INSTANCE                                                 = 1,
+       VK_OBJECT_TYPE_PHYSICAL_DEVICE                                  = 2,
+       VK_OBJECT_TYPE_DEVICE                                                   = 3,
+       VK_OBJECT_TYPE_QUEUE                                                    = 4,
+       VK_OBJECT_TYPE_SEMAPHORE                                                = 5,
+       VK_OBJECT_TYPE_COMMAND_BUFFER                                   = 6,
+       VK_OBJECT_TYPE_FENCE                                                    = 7,
+       VK_OBJECT_TYPE_DEVICE_MEMORY                                    = 8,
+       VK_OBJECT_TYPE_BUFFER                                                   = 9,
+       VK_OBJECT_TYPE_IMAGE                                                    = 10,
+       VK_OBJECT_TYPE_EVENT                                                    = 11,
+       VK_OBJECT_TYPE_QUERY_POOL                                               = 12,
+       VK_OBJECT_TYPE_BUFFER_VIEW                                              = 13,
+       VK_OBJECT_TYPE_IMAGE_VIEW                                               = 14,
+       VK_OBJECT_TYPE_SHADER_MODULE                                    = 15,
+       VK_OBJECT_TYPE_PIPELINE_CACHE                                   = 16,
+       VK_OBJECT_TYPE_PIPELINE_LAYOUT                                  = 17,
+       VK_OBJECT_TYPE_RENDER_PASS                                              = 18,
+       VK_OBJECT_TYPE_PIPELINE                                                 = 19,
+       VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT                    = 20,
+       VK_OBJECT_TYPE_SAMPLER                                                  = 21,
+       VK_OBJECT_TYPE_DESCRIPTOR_POOL                                  = 22,
+       VK_OBJECT_TYPE_DESCRIPTOR_SET                                   = 23,
+       VK_OBJECT_TYPE_FRAMEBUFFER                                              = 24,
+       VK_OBJECT_TYPE_COMMAND_POOL                                             = 25,
+       VK_OBJECT_TYPE_SURFACE_KHR                                              = 1000000000,
+       VK_OBJECT_TYPE_SWAPCHAIN_KHR                                    = 1000001000,
+       VK_OBJECT_TYPE_DISPLAY_KHR                                              = 1000002000,
+       VK_OBJECT_TYPE_DISPLAY_MODE_KHR                                 = 1000002001,
+       VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT                = 1000011000,
+       VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR   = 1000085000,
+       VK_OBJECT_TYPE_OBJECT_TABLE_NVX                                 = 1000086000,
+       VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX             = 1000086001,
+};
+
 enum VkColorSpaceKHR
 {
        VK_COLOR_SPACE_SRGB_NONLINEAR_KHR               = 0,
@@ -763,39 +775,48 @@ enum VkPresentModeKHR
        VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR   = 1000111001,
 };
 
+enum VkDescriptorUpdateTemplateTypeKHR
+{
+       VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR   = 0,
+       VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1,
+
+       VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_KHR_LAST
+};
+
 enum VkDebugReportObjectTypeEXT
 {
-       VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT                                 = 0,
-       VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT                                = 1,
-       VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT                 = 2,
-       VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT                                  = 3,
-       VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT                                   = 4,
-       VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT                               = 5,
-       VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT                  = 6,
-       VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT                                   = 7,
-       VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT                   = 8,
-       VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT                                  = 9,
-       VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT                                   = 10,
-       VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT                                   = 11,
-       VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT                              = 12,
-       VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT                             = 13,
-       VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT                              = 14,
-       VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT                   = 15,
-       VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT                  = 16,
-       VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT                 = 17,
-       VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT                             = 18,
-       VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT                                = 19,
-       VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT   = 20,
-       VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT                                 = 21,
-       VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT                 = 22,
-       VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT                  = 23,
-       VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT                             = 24,
-       VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT                    = 25,
-       VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT                             = 26,
-       VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT                   = 27,
-       VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT                    = 28,
-
-       VK_DEBUG_REPORT_OBJECT_TYPE_EXT_LAST
+       VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT                                                 = 0,
+       VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT                                                = 1,
+       VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT                                 = 2,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT                                                  = 3,
+       VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT                                                   = 4,
+       VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT                                               = 5,
+       VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT                                  = 6,
+       VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT                                                   = 7,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT                                   = 8,
+       VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT                                                  = 9,
+       VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT                                                   = 10,
+       VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT                                                   = 11,
+       VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT                                              = 12,
+       VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT                                             = 13,
+       VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT                                              = 14,
+       VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT                                   = 15,
+       VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT                                  = 16,
+       VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT                                 = 17,
+       VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT                                             = 18,
+       VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT                                                = 19,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT                   = 20,
+       VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT                                                 = 21,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT                                 = 22,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT                                  = 23,
+       VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT                                             = 24,
+       VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT                                    = 25,
+       VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT                                             = 26,
+       VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT                                   = 27,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT                                    = 28,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT                                             = 29,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT                                = 30,
+       VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT  = 1000085000,
 };
 
 enum VkDebugReportErrorEXT
@@ -806,72 +827,23 @@ enum VkDebugReportErrorEXT
        VK_DEBUG_REPORT_ERROR_EXT_LAST
 };
 
-enum VkRasterizationOrderAMD
-{
-       VK_RASTERIZATION_ORDER_STRICT_AMD       = 0,
-       VK_RASTERIZATION_ORDER_RELAXED_AMD      = 1,
-
-       VK_RASTERIZATION_ORDER_AMD_LAST
-};
-
-enum VkValidationCheckEXT
-{
-       VK_VALIDATION_CHECK_ALL_EXT     = 0,
-
-       VK_VALIDATION_CHECK_EXT_LAST
-};
-
-enum VkIndirectCommandsTokenTypeNVX
-{
-       VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX                 = 0,
-       VK_INDIRECT_COMMANDS_TOKEN_DESCRIPTOR_SET_NVX   = 1,
-       VK_INDIRECT_COMMANDS_TOKEN_INDEX_BUFFER_NVX             = 2,
-       VK_INDIRECT_COMMANDS_TOKEN_VERTEX_BUFFER_NVX    = 3,
-       VK_INDIRECT_COMMANDS_TOKEN_PUSH_CONSTANT_NVX    = 4,
-       VK_INDIRECT_COMMANDS_TOKEN_DRAW_INDEXED_NVX             = 5,
-       VK_INDIRECT_COMMANDS_TOKEN_DRAW_NVX                             = 6,
-       VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX                 = 7,
-
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_NVX_LAST
-};
-
-enum VkObjectEntryTypeNVX
-{
-       VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX      = 0,
-       VK_OBJECT_ENTRY_PIPELINE_NVX            = 1,
-       VK_OBJECT_ENTRY_INDEX_BUFFER_NVX        = 2,
-       VK_OBJECT_ENTRY_VERTEX_BUFFER_NVX       = 3,
-       VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX       = 4,
-
-       VK_OBJECT_ENTRY_TYPE_NVX_LAST
-};
-
-enum VkDescriptorUpdateTemplateTypeKHR
-{
-       VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR   = 0,
-       VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1,
-
-       VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_KHR_LAST
-};
-
 enum VkFormatFeatureFlagBits
 {
-       VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT                                             = 0x00000001,
-       VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT                                             = 0x00000002,
-       VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT                              = 0x00000004,
-       VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT                              = 0x00000008,
-       VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT                              = 0x00000010,
-       VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT               = 0x00000020,
-       VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT                                             = 0x00000040,
-       VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT                                  = 0x00000080,
-       VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT                    = 0x00000100,
-       VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT                  = 0x00000200,
-       VK_FORMAT_FEATURE_BLIT_SRC_BIT                                                  = 0x00000400,
-       VK_FORMAT_FEATURE_BLIT_DST_BIT                                                  = 0x00000800,
-       VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT               = 0x00001000,
-       VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG    = 0x00002000,
-       VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR                                  = 0x00004000,
-       VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR                                  = 0x00008000,
+       VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT                                     = 0x00000001,
+       VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT                                     = 0x00000002,
+       VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT                      = 0x00000004,
+       VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT                      = 0x00000008,
+       VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT                      = 0x00000010,
+       VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT       = 0x00000020,
+       VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT                                     = 0x00000040,
+       VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT                          = 0x00000080,
+       VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT            = 0x00000100,
+       VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT          = 0x00000200,
+       VK_FORMAT_FEATURE_BLIT_SRC_BIT                                          = 0x00000400,
+       VK_FORMAT_FEATURE_BLIT_DST_BIT                                          = 0x00000800,
+       VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT       = 0x00001000,
+       VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR                          = 0x00004000,
+       VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR                          = 0x00008000,
 };
 typedef deUint32 VkFormatFeatureFlags;
 
@@ -955,7 +927,6 @@ enum VkPipelineStageFlagBits
        VK_PIPELINE_STAGE_HOST_BIT                                                              = 0x00004000,
        VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT                                              = 0x00008000,
        VK_PIPELINE_STAGE_ALL_COMMANDS_BIT                                              = 0x00010000,
-       VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX                               = 0x00020000,
 };
 typedef deUint32 VkPipelineStageFlags;
 
@@ -1092,6 +1063,8 @@ enum VkAttachmentDescriptionFlagBits
 };
 typedef deUint32 VkAttachmentDescriptionFlags;
 
+typedef deUint32 VkSubpassDescriptionFlags;
+
 enum VkAccessFlagBits
 {
        VK_ACCESS_INDIRECT_COMMAND_READ_BIT                             = 0x00000001,
@@ -1184,6 +1157,8 @@ enum VkCompositeAlphaFlagBitsKHR
 };
 typedef deUint32 VkCompositeAlphaFlagsKHR;
 
+typedef deUint32 VkSwapchainCreateFlagsKHR;
+
 enum VkDisplayPlaneAlphaFlagBitsKHR
 {
        VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR                                   = 0x00000001,
@@ -1203,39 +1178,6 @@ enum VkDebugReportFlagBitsEXT
 };
 typedef deUint32 VkDebugReportFlagsEXT;
 
-enum VkExternalMemoryHandleTypeFlagBitsNV
-{
-       VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV              = 0x00000001,
-       VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV  = 0x00000002,
-       VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV               = 0x00000004,
-       VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV   = 0x00000008,
-};
-typedef deUint32 VkExternalMemoryHandleTypeFlagsNV;
-
-enum VkExternalMemoryFeatureFlagBitsNV
-{
-       VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV        = 0x00000001,
-       VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV            = 0x00000002,
-       VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV            = 0x00000004,
-};
-typedef deUint32 VkExternalMemoryFeatureFlagsNV;
-
-enum VkIndirectCommandsLayoutUsageFlagBitsNVX
-{
-       VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX   = 0x00000001,
-       VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX              = 0x00000002,
-       VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX              = 0x00000004,
-       VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX             = 0x00000008,
-};
-typedef deUint32 VkIndirectCommandsLayoutUsageFlagsNVX;
-
-enum VkObjectEntryUsageFlagBitsNVX
-{
-       VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX  = 0x00000001,
-       VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX   = 0x00000002,
-};
-typedef deUint32 VkObjectEntryUsageFlagsNVX;
-
 typedef deUint32 VkInstanceCreateFlags;
 
 typedef deUint32 VkDeviceCreateFlags;
@@ -1288,10 +1230,6 @@ typedef deUint32 VkFramebufferCreateFlags;
 
 typedef deUint32 VkRenderPassCreateFlags;
 
-typedef deUint32 VkSubpassDescriptionFlags;
-
-typedef deUint32 VkSwapchainCreateFlagsKHR;
-
 typedef deUint32 VkDisplayModeCreateFlagsKHR;
 
 typedef deUint32 VkDisplaySurfaceCreateFlagsKHR;
index 737ce24..8cc6e9d 100644 (file)
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  */
-virtual void           destroyDevice                                                                   (VkDevice device, const VkAllocationCallbacks* pAllocator) const;
-virtual void           getDeviceQueue                                                                  (VkDevice device, deUint32 queueFamilyIndex, deUint32 queueIndex, VkQueue* pQueue) const;
-virtual VkResult       queueSubmit                                                                             (VkQueue queue, deUint32 submitCount, const VkSubmitInfo* pSubmits, VkFence fence) const;
-virtual VkResult       queueWaitIdle                                                                   (VkQueue queue) const;
-virtual VkResult       deviceWaitIdle                                                                  (VkDevice device) const;
-virtual VkResult       allocateMemory                                                                  (VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory) const;
-virtual void           freeMemory                                                                              (VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       mapMemory                                                                               (VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData) const;
-virtual void           unmapMemory                                                                             (VkDevice device, VkDeviceMemory memory) const;
-virtual VkResult       flushMappedMemoryRanges                                                 (VkDevice device, deUint32 memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const;
-virtual VkResult       invalidateMappedMemoryRanges                                    (VkDevice device, deUint32 memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const;
-virtual void           getDeviceMemoryCommitment                                               (VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes) const;
-virtual VkResult       bindBufferMemory                                                                (VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset) const;
-virtual VkResult       bindImageMemory                                                                 (VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset) const;
-virtual void           getBufferMemoryRequirements                                             (VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements) const;
-virtual void           getImageMemoryRequirements                                              (VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements) const;
-virtual void           getImageSparseMemoryRequirements                                (VkDevice device, VkImage image, deUint32* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements) const;
-virtual VkResult       queueBindSparse                                                                 (VkQueue queue, deUint32 bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence) const;
-virtual VkResult       createFence                                                                             (VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const;
-virtual void           destroyFence                                                                    (VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       resetFences                                                                             (VkDevice device, deUint32 fenceCount, const VkFence* pFences) const;
-virtual VkResult       getFenceStatus                                                                  (VkDevice device, VkFence fence) const;
-virtual VkResult       waitForFences                                                                   (VkDevice device, deUint32 fenceCount, const VkFence* pFences, VkBool32 waitAll, deUint64 timeout) const;
-virtual VkResult       createSemaphore                                                                 (VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore) const;
-virtual void           destroySemaphore                                                                (VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createEvent                                                                             (VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent) const;
-virtual void           destroyEvent                                                                    (VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       getEventStatus                                                                  (VkDevice device, VkEvent event) const;
-virtual VkResult       setEvent                                                                                (VkDevice device, VkEvent event) const;
-virtual VkResult       resetEvent                                                                              (VkDevice device, VkEvent event) const;
-virtual VkResult       createQueryPool                                                                 (VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool) const;
-virtual void           destroyQueryPool                                                                (VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       getQueryPoolResults                                                             (VkDevice device, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount, deUintptr dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags) const;
-virtual VkResult       createBuffer                                                                    (VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer) const;
-virtual void           destroyBuffer                                                                   (VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createBufferView                                                                (VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView) const;
-virtual void           destroyBufferView                                                               (VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createImage                                                                             (VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage) const;
-virtual void           destroyImage                                                                    (VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator) const;
-virtual void           getImageSubresourceLayout                                               (VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout) const;
-virtual VkResult       createImageView                                                                 (VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView) const;
-virtual void           destroyImageView                                                                (VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createShaderModule                                                              (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule) const;
-virtual void           destroyShaderModule                                                             (VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createPipelineCache                                                             (VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache) const;
-virtual void           destroyPipelineCache                                                    (VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       getPipelineCacheData                                                    (VkDevice device, VkPipelineCache pipelineCache, deUintptr* pDataSize, void* pData) const;
-virtual VkResult       mergePipelineCaches                                                             (VkDevice device, VkPipelineCache dstCache, deUint32 srcCacheCount, const VkPipelineCache* pSrcCaches) const;
-virtual VkResult       createGraphicsPipelines                                                 (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const;
-virtual VkResult       createComputePipelines                                                  (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const;
-virtual void           destroyPipeline                                                                 (VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createPipelineLayout                                                    (VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout) const;
-virtual void           destroyPipelineLayout                                                   (VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createSampler                                                                   (VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler) const;
-virtual void           destroySampler                                                                  (VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createDescriptorSetLayout                                               (VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout) const;
-virtual void           destroyDescriptorSetLayout                                              (VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createDescriptorPool                                                    (VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool) const;
-virtual void           destroyDescriptorPool                                                   (VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       resetDescriptorPool                                                             (VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags) const;
-virtual VkResult       allocateDescriptorSets                                                  (VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets) const;
-virtual VkResult       freeDescriptorSets                                                              (VkDevice device, VkDescriptorPool descriptorPool, deUint32 descriptorSetCount, const VkDescriptorSet* pDescriptorSets) const;
-virtual void           updateDescriptorSets                                                    (VkDevice device, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, deUint32 descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies) const;
-virtual VkResult       createFramebuffer                                                               (VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer) const;
-virtual void           destroyFramebuffer                                                              (VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createRenderPass                                                                (VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass) const;
-virtual void           destroyRenderPass                                                               (VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator) const;
-virtual void           getRenderAreaGranularity                                                (VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity) const;
-virtual VkResult       createCommandPool                                                               (VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool) const;
-virtual void           destroyCommandPool                                                              (VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       resetCommandPool                                                                (VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags) const;
-virtual VkResult       allocateCommandBuffers                                                  (VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers) const;
-virtual void           freeCommandBuffers                                                              (VkDevice device, VkCommandPool commandPool, deUint32 commandBufferCount, const VkCommandBuffer* pCommandBuffers) const;
-virtual VkResult       beginCommandBuffer                                                              (VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo) const;
-virtual VkResult       endCommandBuffer                                                                (VkCommandBuffer commandBuffer) const;
-virtual VkResult       resetCommandBuffer                                                              (VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags) const;
-virtual void           cmdBindPipeline                                                                 (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline) const;
-virtual void           cmdSetViewport                                                                  (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewport* pViewports) const;
-virtual void           cmdSetScissor                                                                   (VkCommandBuffer commandBuffer, deUint32 firstScissor, deUint32 scissorCount, const VkRect2D* pScissors) const;
-virtual void           cmdSetLineWidth                                                                 (VkCommandBuffer commandBuffer, float lineWidth) const;
-virtual void           cmdSetDepthBias                                                                 (VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor) const;
-virtual void           cmdSetBlendConstants                                                    (VkCommandBuffer commandBuffer, const float blendConstants[4]) const;
-virtual void           cmdSetDepthBounds                                                               (VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds) const;
-virtual void           cmdSetStencilCompareMask                                                (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 compareMask) const;
-virtual void           cmdSetStencilWriteMask                                                  (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 writeMask) const;
-virtual void           cmdSetStencilReference                                                  (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 reference) const;
-virtual void           cmdBindDescriptorSets                                                   (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 firstSet, deUint32 descriptorSetCount, const VkDescriptorSet* pDescriptorSets, deUint32 dynamicOffsetCount, const deUint32* pDynamicOffsets) const;
-virtual void           cmdBindIndexBuffer                                                              (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType) const;
-virtual void           cmdBindVertexBuffers                                                    (VkCommandBuffer commandBuffer, deUint32 firstBinding, deUint32 bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets) const;
-virtual void           cmdDraw                                                                                 (VkCommandBuffer commandBuffer, deUint32 vertexCount, deUint32 instanceCount, deUint32 firstVertex, deUint32 firstInstance) const;
-virtual void           cmdDrawIndexed                                                                  (VkCommandBuffer commandBuffer, deUint32 indexCount, deUint32 instanceCount, deUint32 firstIndex, deInt32 vertexOffset, deUint32 firstInstance) const;
-virtual void           cmdDrawIndirect                                                                 (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride) const;
-virtual void           cmdDrawIndexedIndirect                                                  (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride) const;
-virtual void           cmdDispatch                                                                             (VkCommandBuffer commandBuffer, deUint32 x, deUint32 y, deUint32 z) const;
-virtual void           cmdDispatchIndirect                                                             (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset) const;
-virtual void           cmdCopyBuffer                                                                   (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferCopy* pRegions) const;
-virtual void           cmdCopyImage                                                                    (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageCopy* pRegions) const;
-virtual void           cmdBlitImage                                                                    (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageBlit* pRegions, VkFilter filter) const;
-virtual void           cmdCopyBufferToImage                                                    (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkBufferImageCopy* pRegions) const;
-virtual void           cmdCopyImageToBuffer                                                    (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferImageCopy* pRegions) const;
-virtual void           cmdUpdateBuffer                                                                 (VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData) const;
-virtual void           cmdFillBuffer                                                                   (VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, deUint32 data) const;
-virtual void           cmdClearColorImage                                                              (VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, deUint32 rangeCount, const VkImageSubresourceRange* pRanges) const;
-virtual void           cmdClearDepthStencilImage                                               (VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, deUint32 rangeCount, const VkImageSubresourceRange* pRanges) const;
-virtual void           cmdClearAttachments                                                             (VkCommandBuffer commandBuffer, deUint32 attachmentCount, const VkClearAttachment* pAttachments, deUint32 rectCount, const VkClearRect* pRects) const;
-virtual void           cmdResolveImage                                                                 (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageResolve* pRegions) const;
-virtual void           cmdSetEvent                                                                             (VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const;
-virtual void           cmdResetEvent                                                                   (VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const;
-virtual void           cmdWaitEvents                                                                   (VkCommandBuffer commandBuffer, deUint32 eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, deUint32 memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, deUint32 bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, deUint32 imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const;
-virtual void           cmdPipelineBarrier                                                              (VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, deUint32 memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, deUint32 bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, deUint32 imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const;
-virtual void           cmdBeginQuery                                                                   (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 query, VkQueryControlFlags flags) const;
-virtual void           cmdEndQuery                                                                             (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 query) const;
-virtual void           cmdResetQueryPool                                                               (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount) const;
-virtual void           cmdWriteTimestamp                                                               (VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, deUint32 query) const;
-virtual void           cmdCopyQueryPoolResults                                                 (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags) const;
-virtual void           cmdPushConstants                                                                (VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, deUint32 offset, deUint32 size, const void* pValues) const;
-virtual void           cmdBeginRenderPass                                                              (VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents) const;
-virtual void           cmdNextSubpass                                                                  (VkCommandBuffer commandBuffer, VkSubpassContents contents) const;
-virtual void           cmdEndRenderPass                                                                (VkCommandBuffer commandBuffer) const;
-virtual void           cmdExecuteCommands                                                              (VkCommandBuffer commandBuffer, deUint32 commandBufferCount, const VkCommandBuffer* pCommandBuffers) const;
-virtual VkResult       createSwapchainKHR                                                              (VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain) const;
-virtual void           destroySwapchainKHR                                                             (VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       getSwapchainImagesKHR                                                   (VkDevice device, VkSwapchainKHR swapchain, deUint32* pSwapchainImageCount, VkImage* pSwapchainImages) const;
-virtual VkResult       acquireNextImageKHR                                                             (VkDevice device, VkSwapchainKHR swapchain, deUint64 timeout, VkSemaphore semaphore, VkFence fence, deUint32* pImageIndex) const;
-virtual VkResult       queuePresentKHR                                                                 (VkQueue queue, const VkPresentInfoKHR* pPresentInfo) const;
-virtual VkResult       createSharedSwapchainsKHR                                               (VkDevice device, deUint32 swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains) const;
-virtual void           trimCommandPoolKHR                                                              (VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags) const;
-virtual VkResult       getSwapchainStatusKHR                                                   (VkDevice device, VkSwapchainKHR swapchain) const;
-virtual VkResult       debugMarkerSetObjectTagEXT                                              (VkDevice device, VkDebugMarkerObjectTagInfoEXT* pTagInfo) const;
-virtual VkResult       debugMarkerSetObjectNameEXT                                             (VkDevice device, VkDebugMarkerObjectNameInfoEXT* pNameInfo) const;
-virtual void           cmdDebugMarkerBeginEXT                                                  (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const;
-virtual void           cmdDebugMarkerEndEXT                                                    (VkCommandBuffer commandBuffer) const;
-virtual void           cmdDebugMarkerInsertEXT                                                 (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const;
-virtual void           cmdDrawIndirectCountAMD                                                 (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride) const;
-virtual void           cmdDrawIndexedIndirectCountAMD                                  (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride) const;
-virtual VkResult       getMemoryWin32HandleNV                                                  (VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, pt::Win32Handle* pHandle) const;
-virtual void           cmdProcessCommandsNVX                                                   (VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo) const;
-virtual void           cmdReserveSpaceForCommandsNVX                                   (VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo) const;
-virtual VkResult       createIndirectCommandsLayoutNVX                                 (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout) const;
-virtual void           destroyIndirectCommandsLayoutNVX                                (VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       createObjectTableNVX                                                    (VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable) const;
-virtual void           destroyObjectTableNVX                                                   (VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator) const;
-virtual VkResult       registerObjectsNVX                                                              (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const deUint32* pObjectIndices) const;
-virtual VkResult       unregisterObjectsNVX                                                    (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const deUint32* pObjectIndices) const;
-virtual void           getPhysicalDeviceGeneratedCommandsPropertiesNVX (VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits) const;
-virtual void           cmdPushDescriptorSetKHR                                                 (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 set, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites) const;
-virtual VkResult       createDescriptorUpdateTemplateKHR                               (VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate) const;
-virtual void           destroyDescriptorUpdateTemplateKHR                              (VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator) const;
-virtual void           updateDescriptorSetWithTemplateKHR                              (VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData) const;
-virtual void           cmdPushDescriptorSetWithTemplateKHR                             (VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, deUint32 set, const void* pData) const;
-virtual VkResult       getRefreshCycleDurationGOOGLE                                   (VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) const;
-virtual VkResult       getPastPresentationTimingGOOGLE                                 (VkDevice device, VkSwapchainKHR swapchain, deUint32* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings) const;
+virtual void           destroyDevice                                           (VkDevice device, const VkAllocationCallbacks* pAllocator) const;
+virtual void           getDeviceQueue                                          (VkDevice device, deUint32 queueFamilyIndex, deUint32 queueIndex, VkQueue* pQueue) const;
+virtual VkResult       queueSubmit                                                     (VkQueue queue, deUint32 submitCount, const VkSubmitInfo* pSubmits, VkFence fence) const;
+virtual VkResult       queueWaitIdle                                           (VkQueue queue) const;
+virtual VkResult       deviceWaitIdle                                          (VkDevice device) const;
+virtual VkResult       allocateMemory                                          (VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory) const;
+virtual void           freeMemory                                                      (VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       mapMemory                                                       (VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData) const;
+virtual void           unmapMemory                                                     (VkDevice device, VkDeviceMemory memory) const;
+virtual VkResult       flushMappedMemoryRanges                         (VkDevice device, deUint32 memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const;
+virtual VkResult       invalidateMappedMemoryRanges            (VkDevice device, deUint32 memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const;
+virtual void           getDeviceMemoryCommitment                       (VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes) const;
+virtual VkResult       bindBufferMemory                                        (VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset) const;
+virtual VkResult       bindImageMemory                                         (VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset) const;
+virtual void           getBufferMemoryRequirements                     (VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements) const;
+virtual void           getImageMemoryRequirements                      (VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements) const;
+virtual void           getImageSparseMemoryRequirements        (VkDevice device, VkImage image, deUint32* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements) const;
+virtual VkResult       queueBindSparse                                         (VkQueue queue, deUint32 bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence) const;
+virtual VkResult       createFence                                                     (VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const;
+virtual void           destroyFence                                            (VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       resetFences                                                     (VkDevice device, deUint32 fenceCount, const VkFence* pFences) const;
+virtual VkResult       getFenceStatus                                          (VkDevice device, VkFence fence) const;
+virtual VkResult       waitForFences                                           (VkDevice device, deUint32 fenceCount, const VkFence* pFences, VkBool32 waitAll, deUint64 timeout) const;
+virtual VkResult       createSemaphore                                         (VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore) const;
+virtual void           destroySemaphore                                        (VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createEvent                                                     (VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent) const;
+virtual void           destroyEvent                                            (VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       getEventStatus                                          (VkDevice device, VkEvent event) const;
+virtual VkResult       setEvent                                                        (VkDevice device, VkEvent event) const;
+virtual VkResult       resetEvent                                                      (VkDevice device, VkEvent event) const;
+virtual VkResult       createQueryPool                                         (VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool) const;
+virtual void           destroyQueryPool                                        (VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       getQueryPoolResults                                     (VkDevice device, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount, deUintptr dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags) const;
+virtual VkResult       createBuffer                                            (VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer) const;
+virtual void           destroyBuffer                                           (VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createBufferView                                        (VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView) const;
+virtual void           destroyBufferView                                       (VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createImage                                                     (VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage) const;
+virtual void           destroyImage                                            (VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator) const;
+virtual void           getImageSubresourceLayout                       (VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout) const;
+virtual VkResult       createImageView                                         (VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView) const;
+virtual void           destroyImageView                                        (VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createShaderModule                                      (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule) const;
+virtual void           destroyShaderModule                                     (VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createPipelineCache                                     (VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache) const;
+virtual void           destroyPipelineCache                            (VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       getPipelineCacheData                            (VkDevice device, VkPipelineCache pipelineCache, deUintptr* pDataSize, void* pData) const;
+virtual VkResult       mergePipelineCaches                                     (VkDevice device, VkPipelineCache dstCache, deUint32 srcCacheCount, const VkPipelineCache* pSrcCaches) const;
+virtual VkResult       createGraphicsPipelines                         (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const;
+virtual VkResult       createComputePipelines                          (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const;
+virtual void           destroyPipeline                                         (VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createPipelineLayout                            (VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout) const;
+virtual void           destroyPipelineLayout                           (VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createSampler                                           (VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler) const;
+virtual void           destroySampler                                          (VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createDescriptorSetLayout                       (VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout) const;
+virtual void           destroyDescriptorSetLayout                      (VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createDescriptorPool                            (VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool) const;
+virtual void           destroyDescriptorPool                           (VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       resetDescriptorPool                                     (VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags) const;
+virtual VkResult       allocateDescriptorSets                          (VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets) const;
+virtual VkResult       freeDescriptorSets                                      (VkDevice device, VkDescriptorPool descriptorPool, deUint32 descriptorSetCount, const VkDescriptorSet* pDescriptorSets) const;
+virtual void           updateDescriptorSets                            (VkDevice device, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, deUint32 descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies) const;
+virtual VkResult       createFramebuffer                                       (VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer) const;
+virtual void           destroyFramebuffer                                      (VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       createRenderPass                                        (VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass) const;
+virtual void           destroyRenderPass                                       (VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator) const;
+virtual void           getRenderAreaGranularity                        (VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity) const;
+virtual VkResult       createCommandPool                                       (VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool) const;
+virtual void           destroyCommandPool                                      (VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       resetCommandPool                                        (VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags) const;
+virtual VkResult       allocateCommandBuffers                          (VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers) const;
+virtual void           freeCommandBuffers                                      (VkDevice device, VkCommandPool commandPool, deUint32 commandBufferCount, const VkCommandBuffer* pCommandBuffers) const;
+virtual VkResult       beginCommandBuffer                                      (VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo) const;
+virtual VkResult       endCommandBuffer                                        (VkCommandBuffer commandBuffer) const;
+virtual VkResult       resetCommandBuffer                                      (VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags) const;
+virtual void           cmdBindPipeline                                         (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline) const;
+virtual void           cmdSetViewport                                          (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewport* pViewports) const;
+virtual void           cmdSetScissor                                           (VkCommandBuffer commandBuffer, deUint32 firstScissor, deUint32 scissorCount, const VkRect2D* pScissors) const;
+virtual void           cmdSetLineWidth                                         (VkCommandBuffer commandBuffer, float lineWidth) const;
+virtual void           cmdSetDepthBias                                         (VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor) const;
+virtual void           cmdSetBlendConstants                            (VkCommandBuffer commandBuffer, const float blendConstants[4]) const;
+virtual void           cmdSetDepthBounds                                       (VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds) const;
+virtual void           cmdSetStencilCompareMask                        (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 compareMask) const;
+virtual void           cmdSetStencilWriteMask                          (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 writeMask) const;
+virtual void           cmdSetStencilReference                          (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 reference) const;
+virtual void           cmdBindDescriptorSets                           (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 firstSet, deUint32 descriptorSetCount, const VkDescriptorSet* pDescriptorSets, deUint32 dynamicOffsetCount, const deUint32* pDynamicOffsets) const;
+virtual void           cmdBindIndexBuffer                                      (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType) const;
+virtual void           cmdBindVertexBuffers                            (VkCommandBuffer commandBuffer, deUint32 firstBinding, deUint32 bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets) const;
+virtual void           cmdDraw                                                         (VkCommandBuffer commandBuffer, deUint32 vertexCount, deUint32 instanceCount, deUint32 firstVertex, deUint32 firstInstance) const;
+virtual void           cmdDrawIndexed                                          (VkCommandBuffer commandBuffer, deUint32 indexCount, deUint32 instanceCount, deUint32 firstIndex, deInt32 vertexOffset, deUint32 firstInstance) const;
+virtual void           cmdDrawIndirect                                         (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride) const;
+virtual void           cmdDrawIndexedIndirect                          (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride) const;
+virtual void           cmdDispatch                                                     (VkCommandBuffer commandBuffer, deUint32 groupCountX, deUint32 groupCountY, deUint32 groupCountZ) const;
+virtual void           cmdDispatchIndirect                                     (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset) const;
+virtual void           cmdCopyBuffer                                           (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferCopy* pRegions) const;
+virtual void           cmdCopyImage                                            (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageCopy* pRegions) const;
+virtual void           cmdBlitImage                                            (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageBlit* pRegions, VkFilter filter) const;
+virtual void           cmdCopyBufferToImage                            (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkBufferImageCopy* pRegions) const;
+virtual void           cmdCopyImageToBuffer                            (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferImageCopy* pRegions) const;
+virtual void           cmdUpdateBuffer                                         (VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData) const;
+virtual void           cmdFillBuffer                                           (VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, deUint32 data) const;
+virtual void           cmdClearColorImage                                      (VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, deUint32 rangeCount, const VkImageSubresourceRange* pRanges) const;
+virtual void           cmdClearDepthStencilImage                       (VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, deUint32 rangeCount, const VkImageSubresourceRange* pRanges) const;
+virtual void           cmdClearAttachments                                     (VkCommandBuffer commandBuffer, deUint32 attachmentCount, const VkClearAttachment* pAttachments, deUint32 rectCount, const VkClearRect* pRects) const;
+virtual void           cmdResolveImage                                         (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageResolve* pRegions) const;
+virtual void           cmdSetEvent                                                     (VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const;
+virtual void           cmdResetEvent                                           (VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const;
+virtual void           cmdWaitEvents                                           (VkCommandBuffer commandBuffer, deUint32 eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, deUint32 memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, deUint32 bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, deUint32 imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const;
+virtual void           cmdPipelineBarrier                                      (VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, deUint32 memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, deUint32 bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, deUint32 imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const;
+virtual void           cmdBeginQuery                                           (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 query, VkQueryControlFlags flags) const;
+virtual void           cmdEndQuery                                                     (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 query) const;
+virtual void           cmdResetQueryPool                                       (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount) const;
+virtual void           cmdWriteTimestamp                                       (VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, deUint32 query) const;
+virtual void           cmdCopyQueryPoolResults                         (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags) const;
+virtual void           cmdPushConstants                                        (VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, deUint32 offset, deUint32 size, const void* pValues) const;
+virtual void           cmdBeginRenderPass                                      (VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents) const;
+virtual void           cmdNextSubpass                                          (VkCommandBuffer commandBuffer, VkSubpassContents contents) const;
+virtual void           cmdEndRenderPass                                        (VkCommandBuffer commandBuffer) const;
+virtual void           cmdExecuteCommands                                      (VkCommandBuffer commandBuffer, deUint32 commandBufferCount, const VkCommandBuffer* pCommandBuffers) const;
+virtual VkResult       createSwapchainKHR                                      (VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain) const;
+virtual void           destroySwapchainKHR                                     (VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult       getSwapchainImagesKHR                           (VkDevice device, VkSwapchainKHR swapchain, deUint32* pSwapchainImageCount, VkImage* pSwapchainImages) const;
+virtual VkResult       acquireNextImageKHR                                     (VkDevice device, VkSwapchainKHR swapchain, deUint64 timeout, VkSemaphore semaphore, VkFence fence, deUint32* pImageIndex) const;
+virtual VkResult       queuePresentKHR                                         (VkQueue queue, const VkPresentInfoKHR* pPresentInfo) const;
+virtual VkResult       createSharedSwapchainsKHR                       (VkDevice device, deUint32 swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains) const;
+virtual void           trimCommandPoolKHR                                      (VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags) const;
+virtual void           cmdPushDescriptorSetKHR                         (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 set, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites) const;
+virtual VkResult       createDescriptorUpdateTemplateKHR       (VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate) const;
+virtual void           destroyDescriptorUpdateTemplateKHR      (VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator) const;
+virtual void           updateDescriptorSetWithTemplateKHR      (VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData) const;
+virtual void           cmdPushDescriptorSetWithTemplateKHR     (VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, deUint32 set, const void* pData) const;
+virtual VkResult       getSwapchainStatusKHR                           (VkDevice device, VkSwapchainKHR swapchain) const;
+virtual VkResult       getRefreshCycleDurationGOOGLE           (VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) const;
+virtual VkResult       getPastPresentationTimingGOOGLE         (VkDevice device, VkSwapchainKHR swapchain, deUint32* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings) const;
index 1651e83..d77268b 100644 (file)
@@ -49,4 +49,3 @@ virtual VkResult                      getPhysicalDeviceSurfaceFormats2KHR                                     (VkPhysicalDevice phy
 virtual VkResult                       createDebugReportCallbackEXT                                            (VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback) const;
 virtual void                           destroyDebugReportCallbackEXT                                           (VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator) const;
 virtual void                           debugReportMessageEXT                                                           (VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, deUint64 object, deUintptr location, deInt32 messageCode, const char* pLayerPrefix, const char* pMessage) const;
-virtual VkResult                       getPhysicalDeviceExternalImageFormatPropertiesNV        (VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties) const;
index 63c288e..16f88e2 100644 (file)
@@ -48,39 +48,42 @@ tcu::Format::Bitfield<32> shortDebugFlagsStr (VkDebugReportFlagsEXT flags)
 
 const char* getShortObjectTypeName (VkDebugReportObjectTypeEXT objectType)
 {
-       static const char* const s_names[] =
+       switch (objectType)
        {
-               "Unknown",
-               "Instance",
-               "PhysicalDevice",
-               "Device",
-               "Queue",
-               "Semaphore",
-               "CommandBuffer",
-               "Fence",
-               "DeviceMemory",
-               "Buffer",
-               "Image",
-               "Event",
-               "QueryPool",
-               "BufferView",
-               "ImageView",
-               "ShaderModule",
-               "PipelineCache",
-               "PipelineLayout",
-               "RenderPass",
-               "Pipeline",
-               "DescriptorSetLayout",
-               "Sampler",
-               "DescriptorPool",
-               "DescriptorSet",
-               "Framebuffer",
-               "CommandPool",
-               "SurfaceKHR",
-               "SwapchainKHR",
-               "DebugReportCallbackEXT",
-       };
-       return de::getSizedArrayElement<VK_DEBUG_REPORT_OBJECT_TYPE_EXT_LAST>(s_names, objectType);
+               case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT:                                                   return "Unknown";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT:                                                  return "Instance";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT:                                   return "PhysicalDevice";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT:                                                    return "Device";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT:                                                             return "Queue";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT:                                                 return "Semaphore";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT:                                    return "CommandBuffer";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT:                                                             return "Fence";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT:                                             return "DeviceMemory";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT:                                                    return "Buffer";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT:                                                             return "Image";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT:                                                             return "Event";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT:                                                return "QueryPool";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT:                                               return "BufferView";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT:                                                return "ImageView";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT:                                             return "ShaderModule";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT:                                    return "PipelineCache";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT:                                   return "PipelineLayout";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT:                                               return "RenderPass";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT:                                                  return "Pipeline";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT:                             return "DescriptorSetLayout";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT:                                                   return "Sampler";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT:                                   return "DescriptorPool";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT:                                    return "DescriptorSet";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT:                                               return "Framebuffer";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT:                                              return "CommandPool";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT:                                               return "SurfaceKHR";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT:                                             return "SwapchainKHR";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT:                                              return "DebugReportEXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT:                                               return "DisplayKHR";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT:                                  return "DisplayModeKHR";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT:    return "DescriptorUpdateTemplateKHR";
+               default:                                                                                                                                return DE_NULL;
+       }
 }
 
 tcu::Format::Enum<VkDebugReportObjectTypeEXT> shortObjectTypeStr (VkDebugReportObjectTypeEXT objectType)
index bc88896..3b7a702 100644 (file)
@@ -467,9 +467,9 @@ void DeviceDriver::cmdDrawIndexedIndirect (VkCommandBuffer commandBuffer, VkBuff
        m_vk.cmdDrawIndexedIndirect(commandBuffer, buffer, offset, drawCount, stride);
 }
 
-void DeviceDriver::cmdDispatch (VkCommandBuffer commandBuffer, deUint32 x, deUint32 y, deUint32 z) const
+void DeviceDriver::cmdDispatch (VkCommandBuffer commandBuffer, deUint32 groupCountX, deUint32 groupCountY, deUint32 groupCountZ) const
 {
-       m_vk.cmdDispatch(commandBuffer, x, y, z);
+       m_vk.cmdDispatch(commandBuffer, groupCountX, groupCountY, groupCountZ);
 }
 
 void DeviceDriver::cmdDispatchIndirect (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset) const
@@ -637,96 +637,6 @@ void DeviceDriver::trimCommandPoolKHR (VkDevice device, VkCommandPool commandPoo
        m_vk.trimCommandPoolKHR(device, commandPool, flags);
 }
 
-VkResult DeviceDriver::getSwapchainStatusKHR (VkDevice device, VkSwapchainKHR swapchain) const
-{
-       return m_vk.getSwapchainStatusKHR(device, swapchain);
-}
-
-VkResult DeviceDriver::debugMarkerSetObjectTagEXT (VkDevice device, VkDebugMarkerObjectTagInfoEXT* pTagInfo) const
-{
-       return m_vk.debugMarkerSetObjectTagEXT(device, pTagInfo);
-}
-
-VkResult DeviceDriver::debugMarkerSetObjectNameEXT (VkDevice device, VkDebugMarkerObjectNameInfoEXT* pNameInfo) const
-{
-       return m_vk.debugMarkerSetObjectNameEXT(device, pNameInfo);
-}
-
-void DeviceDriver::cmdDebugMarkerBeginEXT (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const
-{
-       m_vk.cmdDebugMarkerBeginEXT(commandBuffer, pMarkerInfo);
-}
-
-void DeviceDriver::cmdDebugMarkerEndEXT (VkCommandBuffer commandBuffer) const
-{
-       m_vk.cmdDebugMarkerEndEXT(commandBuffer);
-}
-
-void DeviceDriver::cmdDebugMarkerInsertEXT (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const
-{
-       m_vk.cmdDebugMarkerInsertEXT(commandBuffer, pMarkerInfo);
-}
-
-void DeviceDriver::cmdDrawIndirectCountAMD (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride) const
-{
-       m_vk.cmdDrawIndirectCountAMD(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-void DeviceDriver::cmdDrawIndexedIndirectCountAMD (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride) const
-{
-       m_vk.cmdDrawIndexedIndirectCountAMD(commandBuffer, buffer, offset, countBuffer, countBufferOffset, maxDrawCount, stride);
-}
-
-VkResult DeviceDriver::getMemoryWin32HandleNV (VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, pt::Win32Handle* pHandle) const
-{
-       return m_vk.getMemoryWin32HandleNV(device, memory, handleType, pHandle);
-}
-
-void DeviceDriver::cmdProcessCommandsNVX (VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo) const
-{
-       m_vk.cmdProcessCommandsNVX(commandBuffer, pProcessCommandsInfo);
-}
-
-void DeviceDriver::cmdReserveSpaceForCommandsNVX (VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo) const
-{
-       m_vk.cmdReserveSpaceForCommandsNVX(commandBuffer, pReserveSpaceInfo);
-}
-
-VkResult DeviceDriver::createIndirectCommandsLayoutNVX (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout) const
-{
-       return m_vk.createIndirectCommandsLayoutNVX(device, pCreateInfo, pAllocator, pIndirectCommandsLayout);
-}
-
-void DeviceDriver::destroyIndirectCommandsLayoutNVX (VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const
-{
-       m_vk.destroyIndirectCommandsLayoutNVX(device, indirectCommandsLayout, pAllocator);
-}
-
-VkResult DeviceDriver::createObjectTableNVX (VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable) const
-{
-       return m_vk.createObjectTableNVX(device, pCreateInfo, pAllocator, pObjectTable);
-}
-
-void DeviceDriver::destroyObjectTableNVX (VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator) const
-{
-       m_vk.destroyObjectTableNVX(device, objectTable, pAllocator);
-}
-
-VkResult DeviceDriver::registerObjectsNVX (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const deUint32* pObjectIndices) const
-{
-       return m_vk.registerObjectsNVX(device, objectTable, objectCount, ppObjectTableEntries, pObjectIndices);
-}
-
-VkResult DeviceDriver::unregisterObjectsNVX (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const deUint32* pObjectIndices) const
-{
-       return m_vk.unregisterObjectsNVX(device, objectTable, objectCount, pObjectEntryTypes, pObjectIndices);
-}
-
-void DeviceDriver::getPhysicalDeviceGeneratedCommandsPropertiesNVX (VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits) const
-{
-       m_vk.getPhysicalDeviceGeneratedCommandsPropertiesNVX(physicalDevice, pFeatures, pLimits);
-}
-
 void DeviceDriver::cmdPushDescriptorSetKHR (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 set, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites) const
 {
        m_vk.cmdPushDescriptorSetKHR(commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount, pDescriptorWrites);
@@ -752,6 +662,11 @@ void DeviceDriver::cmdPushDescriptorSetWithTemplateKHR (VkCommandBuffer commandB
        m_vk.cmdPushDescriptorSetWithTemplateKHR(commandBuffer, descriptorUpdateTemplate, layout, set, pData);
 }
 
+VkResult DeviceDriver::getSwapchainStatusKHR (VkDevice device, VkSwapchainKHR swapchain) const
+{
+       return m_vk.getSwapchainStatusKHR(device, swapchain);
+}
+
 VkResult DeviceDriver::getRefreshCycleDurationGOOGLE (VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) const
 {
        return m_vk.getRefreshCycleDurationGOOGLE(device, swapchain, pDisplayTimingProperties);
index b929b0f..02e1940 100644 (file)
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  */
-DestroyDeviceFunc                                                                      destroyDevice;
-GetDeviceQueueFunc                                                                     getDeviceQueue;
-QueueSubmitFunc                                                                                queueSubmit;
-QueueWaitIdleFunc                                                                      queueWaitIdle;
-DeviceWaitIdleFunc                                                                     deviceWaitIdle;
-AllocateMemoryFunc                                                                     allocateMemory;
-FreeMemoryFunc                                                                         freeMemory;
-MapMemoryFunc                                                                          mapMemory;
-UnmapMemoryFunc                                                                                unmapMemory;
-FlushMappedMemoryRangesFunc                                                    flushMappedMemoryRanges;
-InvalidateMappedMemoryRangesFunc                                       invalidateMappedMemoryRanges;
-GetDeviceMemoryCommitmentFunc                                          getDeviceMemoryCommitment;
-BindBufferMemoryFunc                                                           bindBufferMemory;
-BindImageMemoryFunc                                                                    bindImageMemory;
-GetBufferMemoryRequirementsFunc                                                getBufferMemoryRequirements;
-GetImageMemoryRequirementsFunc                                         getImageMemoryRequirements;
-GetImageSparseMemoryRequirementsFunc                           getImageSparseMemoryRequirements;
-QueueBindSparseFunc                                                                    queueBindSparse;
-CreateFenceFunc                                                                                createFence;
-DestroyFenceFunc                                                                       destroyFence;
-ResetFencesFunc                                                                                resetFences;
-GetFenceStatusFunc                                                                     getFenceStatus;
-WaitForFencesFunc                                                                      waitForFences;
-CreateSemaphoreFunc                                                                    createSemaphore;
-DestroySemaphoreFunc                                                           destroySemaphore;
-CreateEventFunc                                                                                createEvent;
-DestroyEventFunc                                                                       destroyEvent;
-GetEventStatusFunc                                                                     getEventStatus;
-SetEventFunc                                                                           setEvent;
-ResetEventFunc                                                                         resetEvent;
-CreateQueryPoolFunc                                                                    createQueryPool;
-DestroyQueryPoolFunc                                                           destroyQueryPool;
-GetQueryPoolResultsFunc                                                                getQueryPoolResults;
-CreateBufferFunc                                                                       createBuffer;
-DestroyBufferFunc                                                                      destroyBuffer;
-CreateBufferViewFunc                                                           createBufferView;
-DestroyBufferViewFunc                                                          destroyBufferView;
-CreateImageFunc                                                                                createImage;
-DestroyImageFunc                                                                       destroyImage;
-GetImageSubresourceLayoutFunc                                          getImageSubresourceLayout;
-CreateImageViewFunc                                                                    createImageView;
-DestroyImageViewFunc                                                           destroyImageView;
-CreateShaderModuleFunc                                                         createShaderModule;
-DestroyShaderModuleFunc                                                                destroyShaderModule;
-CreatePipelineCacheFunc                                                                createPipelineCache;
-DestroyPipelineCacheFunc                                                       destroyPipelineCache;
-GetPipelineCacheDataFunc                                                       getPipelineCacheData;
-MergePipelineCachesFunc                                                                mergePipelineCaches;
-CreateGraphicsPipelinesFunc                                                    createGraphicsPipelines;
-CreateComputePipelinesFunc                                                     createComputePipelines;
-DestroyPipelineFunc                                                                    destroyPipeline;
-CreatePipelineLayoutFunc                                                       createPipelineLayout;
-DestroyPipelineLayoutFunc                                                      destroyPipelineLayout;
-CreateSamplerFunc                                                                      createSampler;
-DestroySamplerFunc                                                                     destroySampler;
-CreateDescriptorSetLayoutFunc                                          createDescriptorSetLayout;
-DestroyDescriptorSetLayoutFunc                                         destroyDescriptorSetLayout;
-CreateDescriptorPoolFunc                                                       createDescriptorPool;
-DestroyDescriptorPoolFunc                                                      destroyDescriptorPool;
-ResetDescriptorPoolFunc                                                                resetDescriptorPool;
-AllocateDescriptorSetsFunc                                                     allocateDescriptorSets;
-FreeDescriptorSetsFunc                                                         freeDescriptorSets;
-UpdateDescriptorSetsFunc                                                       updateDescriptorSets;
-CreateFramebufferFunc                                                          createFramebuffer;
-DestroyFramebufferFunc                                                         destroyFramebuffer;
-CreateRenderPassFunc                                                           createRenderPass;
-DestroyRenderPassFunc                                                          destroyRenderPass;
-GetRenderAreaGranularityFunc                                           getRenderAreaGranularity;
-CreateCommandPoolFunc                                                          createCommandPool;
-DestroyCommandPoolFunc                                                         destroyCommandPool;
-ResetCommandPoolFunc                                                           resetCommandPool;
-AllocateCommandBuffersFunc                                                     allocateCommandBuffers;
-FreeCommandBuffersFunc                                                         freeCommandBuffers;
-BeginCommandBufferFunc                                                         beginCommandBuffer;
-EndCommandBufferFunc                                                           endCommandBuffer;
-ResetCommandBufferFunc                                                         resetCommandBuffer;
-CmdBindPipelineFunc                                                                    cmdBindPipeline;
-CmdSetViewportFunc                                                                     cmdSetViewport;
-CmdSetScissorFunc                                                                      cmdSetScissor;
-CmdSetLineWidthFunc                                                                    cmdSetLineWidth;
-CmdSetDepthBiasFunc                                                                    cmdSetDepthBias;
-CmdSetBlendConstantsFunc                                                       cmdSetBlendConstants;
-CmdSetDepthBoundsFunc                                                          cmdSetDepthBounds;
-CmdSetStencilCompareMaskFunc                                           cmdSetStencilCompareMask;
-CmdSetStencilWriteMaskFunc                                                     cmdSetStencilWriteMask;
-CmdSetStencilReferenceFunc                                                     cmdSetStencilReference;
-CmdBindDescriptorSetsFunc                                                      cmdBindDescriptorSets;
-CmdBindIndexBufferFunc                                                         cmdBindIndexBuffer;
-CmdBindVertexBuffersFunc                                                       cmdBindVertexBuffers;
-CmdDrawFunc                                                                                    cmdDraw;
-CmdDrawIndexedFunc                                                                     cmdDrawIndexed;
-CmdDrawIndirectFunc                                                                    cmdDrawIndirect;
-CmdDrawIndexedIndirectFunc                                                     cmdDrawIndexedIndirect;
-CmdDispatchFunc                                                                                cmdDispatch;
-CmdDispatchIndirectFunc                                                                cmdDispatchIndirect;
-CmdCopyBufferFunc                                                                      cmdCopyBuffer;
-CmdCopyImageFunc                                                                       cmdCopyImage;
-CmdBlitImageFunc                                                                       cmdBlitImage;
-CmdCopyBufferToImageFunc                                                       cmdCopyBufferToImage;
-CmdCopyImageToBufferFunc                                                       cmdCopyImageToBuffer;
-CmdUpdateBufferFunc                                                                    cmdUpdateBuffer;
-CmdFillBufferFunc                                                                      cmdFillBuffer;
-CmdClearColorImageFunc                                                         cmdClearColorImage;
-CmdClearDepthStencilImageFunc                                          cmdClearDepthStencilImage;
-CmdClearAttachmentsFunc                                                                cmdClearAttachments;
-CmdResolveImageFunc                                                                    cmdResolveImage;
-CmdSetEventFunc                                                                                cmdSetEvent;
-CmdResetEventFunc                                                                      cmdResetEvent;
-CmdWaitEventsFunc                                                                      cmdWaitEvents;
-CmdPipelineBarrierFunc                                                         cmdPipelineBarrier;
-CmdBeginQueryFunc                                                                      cmdBeginQuery;
-CmdEndQueryFunc                                                                                cmdEndQuery;
-CmdResetQueryPoolFunc                                                          cmdResetQueryPool;
-CmdWriteTimestampFunc                                                          cmdWriteTimestamp;
-CmdCopyQueryPoolResultsFunc                                                    cmdCopyQueryPoolResults;
-CmdPushConstantsFunc                                                           cmdPushConstants;
-CmdBeginRenderPassFunc                                                         cmdBeginRenderPass;
-CmdNextSubpassFunc                                                                     cmdNextSubpass;
-CmdEndRenderPassFunc                                                           cmdEndRenderPass;
-CmdExecuteCommandsFunc                                                         cmdExecuteCommands;
-CreateSwapchainKHRFunc                                                         createSwapchainKHR;
-DestroySwapchainKHRFunc                                                                destroySwapchainKHR;
-GetSwapchainImagesKHRFunc                                                      getSwapchainImagesKHR;
-AcquireNextImageKHRFunc                                                                acquireNextImageKHR;
-QueuePresentKHRFunc                                                                    queuePresentKHR;
-CreateSharedSwapchainsKHRFunc                                          createSharedSwapchainsKHR;
-TrimCommandPoolKHRFunc                                                         trimCommandPoolKHR;
-GetSwapchainStatusKHRFunc                                                      getSwapchainStatusKHR;
-DebugMarkerSetObjectTagEXTFunc                                         debugMarkerSetObjectTagEXT;
-DebugMarkerSetObjectNameEXTFunc                                                debugMarkerSetObjectNameEXT;
-CmdDebugMarkerBeginEXTFunc                                                     cmdDebugMarkerBeginEXT;
-CmdDebugMarkerEndEXTFunc                                                       cmdDebugMarkerEndEXT;
-CmdDebugMarkerInsertEXTFunc                                                    cmdDebugMarkerInsertEXT;
-CmdDrawIndirectCountAMDFunc                                                    cmdDrawIndirectCountAMD;
-CmdDrawIndexedIndirectCountAMDFunc                                     cmdDrawIndexedIndirectCountAMD;
-GetMemoryWin32HandleNVFunc                                                     getMemoryWin32HandleNV;
-CmdProcessCommandsNVXFunc                                                      cmdProcessCommandsNVX;
-CmdReserveSpaceForCommandsNVXFunc                                      cmdReserveSpaceForCommandsNVX;
-CreateIndirectCommandsLayoutNVXFunc                                    createIndirectCommandsLayoutNVX;
-DestroyIndirectCommandsLayoutNVXFunc                           destroyIndirectCommandsLayoutNVX;
-CreateObjectTableNVXFunc                                                       createObjectTableNVX;
-DestroyObjectTableNVXFunc                                                      destroyObjectTableNVX;
-RegisterObjectsNVXFunc                                                         registerObjectsNVX;
-UnregisterObjectsNVXFunc                                                       unregisterObjectsNVX;
-GetPhysicalDeviceGeneratedCommandsPropertiesNVXFunc    getPhysicalDeviceGeneratedCommandsPropertiesNVX;
-CmdPushDescriptorSetKHRFunc                                                    cmdPushDescriptorSetKHR;
-CreateDescriptorUpdateTemplateKHRFunc                          createDescriptorUpdateTemplateKHR;
-DestroyDescriptorUpdateTemplateKHRFunc                         destroyDescriptorUpdateTemplateKHR;
-UpdateDescriptorSetWithTemplateKHRFunc                         updateDescriptorSetWithTemplateKHR;
-CmdPushDescriptorSetWithTemplateKHRFunc                                cmdPushDescriptorSetWithTemplateKHR;
-GetRefreshCycleDurationGOOGLEFunc                                      getRefreshCycleDurationGOOGLE;
-GetPastPresentationTimingGOOGLEFunc                                    getPastPresentationTimingGOOGLE;
+DestroyDeviceFunc                                              destroyDevice;
+GetDeviceQueueFunc                                             getDeviceQueue;
+QueueSubmitFunc                                                        queueSubmit;
+QueueWaitIdleFunc                                              queueWaitIdle;
+DeviceWaitIdleFunc                                             deviceWaitIdle;
+AllocateMemoryFunc                                             allocateMemory;
+FreeMemoryFunc                                                 freeMemory;
+MapMemoryFunc                                                  mapMemory;
+UnmapMemoryFunc                                                        unmapMemory;
+FlushMappedMemoryRangesFunc                            flushMappedMemoryRanges;
+InvalidateMappedMemoryRangesFunc               invalidateMappedMemoryRanges;
+GetDeviceMemoryCommitmentFunc                  getDeviceMemoryCommitment;
+BindBufferMemoryFunc                                   bindBufferMemory;
+BindImageMemoryFunc                                            bindImageMemory;
+GetBufferMemoryRequirementsFunc                        getBufferMemoryRequirements;
+GetImageMemoryRequirementsFunc                 getImageMemoryRequirements;
+GetImageSparseMemoryRequirementsFunc   getImageSparseMemoryRequirements;
+QueueBindSparseFunc                                            queueBindSparse;
+CreateFenceFunc                                                        createFence;
+DestroyFenceFunc                                               destroyFence;
+ResetFencesFunc                                                        resetFences;
+GetFenceStatusFunc                                             getFenceStatus;
+WaitForFencesFunc                                              waitForFences;
+CreateSemaphoreFunc                                            createSemaphore;
+DestroySemaphoreFunc                                   destroySemaphore;
+CreateEventFunc                                                        createEvent;
+DestroyEventFunc                                               destroyEvent;
+GetEventStatusFunc                                             getEventStatus;
+SetEventFunc                                                   setEvent;
+ResetEventFunc                                                 resetEvent;
+CreateQueryPoolFunc                                            createQueryPool;
+DestroyQueryPoolFunc                                   destroyQueryPool;
+GetQueryPoolResultsFunc                                        getQueryPoolResults;
+CreateBufferFunc                                               createBuffer;
+DestroyBufferFunc                                              destroyBuffer;
+CreateBufferViewFunc                                   createBufferView;
+DestroyBufferViewFunc                                  destroyBufferView;
+CreateImageFunc                                                        createImage;
+DestroyImageFunc                                               destroyImage;
+GetImageSubresourceLayoutFunc                  getImageSubresourceLayout;
+CreateImageViewFunc                                            createImageView;
+DestroyImageViewFunc                                   destroyImageView;
+CreateShaderModuleFunc                                 createShaderModule;
+DestroyShaderModuleFunc                                        destroyShaderModule;
+CreatePipelineCacheFunc                                        createPipelineCache;
+DestroyPipelineCacheFunc                               destroyPipelineCache;
+GetPipelineCacheDataFunc                               getPipelineCacheData;
+MergePipelineCachesFunc                                        mergePipelineCaches;
+CreateGraphicsPipelinesFunc                            createGraphicsPipelines;
+CreateComputePipelinesFunc                             createComputePipelines;
+DestroyPipelineFunc                                            destroyPipeline;
+CreatePipelineLayoutFunc                               createPipelineLayout;
+DestroyPipelineLayoutFunc                              destroyPipelineLayout;
+CreateSamplerFunc                                              createSampler;
+DestroySamplerFunc                                             destroySampler;
+CreateDescriptorSetLayoutFunc                  createDescriptorSetLayout;
+DestroyDescriptorSetLayoutFunc                 destroyDescriptorSetLayout;
+CreateDescriptorPoolFunc                               createDescriptorPool;
+DestroyDescriptorPoolFunc                              destroyDescriptorPool;
+ResetDescriptorPoolFunc                                        resetDescriptorPool;
+AllocateDescriptorSetsFunc                             allocateDescriptorSets;
+FreeDescriptorSetsFunc                                 freeDescriptorSets;
+UpdateDescriptorSetsFunc                               updateDescriptorSets;
+CreateFramebufferFunc                                  createFramebuffer;
+DestroyFramebufferFunc                                 destroyFramebuffer;
+CreateRenderPassFunc                                   createRenderPass;
+DestroyRenderPassFunc                                  destroyRenderPass;
+GetRenderAreaGranularityFunc                   getRenderAreaGranularity;
+CreateCommandPoolFunc                                  createCommandPool;
+DestroyCommandPoolFunc                                 destroyCommandPool;
+ResetCommandPoolFunc                                   resetCommandPool;
+AllocateCommandBuffersFunc                             allocateCommandBuffers;
+FreeCommandBuffersFunc                                 freeCommandBuffers;
+BeginCommandBufferFunc                                 beginCommandBuffer;
+EndCommandBufferFunc                                   endCommandBuffer;
+ResetCommandBufferFunc                                 resetCommandBuffer;
+CmdBindPipelineFunc                                            cmdBindPipeline;
+CmdSetViewportFunc                                             cmdSetViewport;
+CmdSetScissorFunc                                              cmdSetScissor;
+CmdSetLineWidthFunc                                            cmdSetLineWidth;
+CmdSetDepthBiasFunc                                            cmdSetDepthBias;
+CmdSetBlendConstantsFunc                               cmdSetBlendConstants;
+CmdSetDepthBoundsFunc                                  cmdSetDepthBounds;
+CmdSetStencilCompareMaskFunc                   cmdSetStencilCompareMask;
+CmdSetStencilWriteMaskFunc                             cmdSetStencilWriteMask;
+CmdSetStencilReferenceFunc                             cmdSetStencilReference;
+CmdBindDescriptorSetsFunc                              cmdBindDescriptorSets;
+CmdBindIndexBufferFunc                                 cmdBindIndexBuffer;
+CmdBindVertexBuffersFunc                               cmdBindVertexBuffers;
+CmdDrawFunc                                                            cmdDraw;
+CmdDrawIndexedFunc                                             cmdDrawIndexed;
+CmdDrawIndirectFunc                                            cmdDrawIndirect;
+CmdDrawIndexedIndirectFunc                             cmdDrawIndexedIndirect;
+CmdDispatchFunc                                                        cmdDispatch;
+CmdDispatchIndirectFunc                                        cmdDispatchIndirect;
+CmdCopyBufferFunc                                              cmdCopyBuffer;
+CmdCopyImageFunc                                               cmdCopyImage;
+CmdBlitImageFunc                                               cmdBlitImage;
+CmdCopyBufferToImageFunc                               cmdCopyBufferToImage;
+CmdCopyImageToBufferFunc                               cmdCopyImageToBuffer;
+CmdUpdateBufferFunc                                            cmdUpdateBuffer;
+CmdFillBufferFunc                                              cmdFillBuffer;
+CmdClearColorImageFunc                                 cmdClearColorImage;
+CmdClearDepthStencilImageFunc                  cmdClearDepthStencilImage;
+CmdClearAttachmentsFunc                                        cmdClearAttachments;
+CmdResolveImageFunc                                            cmdResolveImage;
+CmdSetEventFunc                                                        cmdSetEvent;
+CmdResetEventFunc                                              cmdResetEvent;
+CmdWaitEventsFunc                                              cmdWaitEvents;
+CmdPipelineBarrierFunc                                 cmdPipelineBarrier;
+CmdBeginQueryFunc                                              cmdBeginQuery;
+CmdEndQueryFunc                                                        cmdEndQuery;
+CmdResetQueryPoolFunc                                  cmdResetQueryPool;
+CmdWriteTimestampFunc                                  cmdWriteTimestamp;
+CmdCopyQueryPoolResultsFunc                            cmdCopyQueryPoolResults;
+CmdPushConstantsFunc                                   cmdPushConstants;
+CmdBeginRenderPassFunc                                 cmdBeginRenderPass;
+CmdNextSubpassFunc                                             cmdNextSubpass;
+CmdEndRenderPassFunc                                   cmdEndRenderPass;
+CmdExecuteCommandsFunc                                 cmdExecuteCommands;
+CreateSwapchainKHRFunc                                 createSwapchainKHR;
+DestroySwapchainKHRFunc                                        destroySwapchainKHR;
+GetSwapchainImagesKHRFunc                              getSwapchainImagesKHR;
+AcquireNextImageKHRFunc                                        acquireNextImageKHR;
+QueuePresentKHRFunc                                            queuePresentKHR;
+CreateSharedSwapchainsKHRFunc                  createSharedSwapchainsKHR;
+TrimCommandPoolKHRFunc                                 trimCommandPoolKHR;
+CmdPushDescriptorSetKHRFunc                            cmdPushDescriptorSetKHR;
+CreateDescriptorUpdateTemplateKHRFunc  createDescriptorUpdateTemplateKHR;
+DestroyDescriptorUpdateTemplateKHRFunc destroyDescriptorUpdateTemplateKHR;
+UpdateDescriptorSetWithTemplateKHRFunc updateDescriptorSetWithTemplateKHR;
+CmdPushDescriptorSetWithTemplateKHRFunc        cmdPushDescriptorSetWithTemplateKHR;
+GetSwapchainStatusKHRFunc                              getSwapchainStatusKHR;
+GetRefreshCycleDurationGOOGLEFunc              getRefreshCycleDurationGOOGLE;
+GetPastPresentationTimingGOOGLEFunc            getPastPresentationTimingGOOGLE;
index ffc439a..fcffc01 100644 (file)
@@ -111,7 +111,7 @@ typedef VKAPI_ATTR void                                     (VKAPI_CALL* CmdDrawFunc)                                                                                       (VkCommandBuffer
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDrawIndexedFunc)                                                                        (VkCommandBuffer commandBuffer, deUint32 indexCount, deUint32 instanceCount, deUint32 firstIndex, deInt32 vertexOffset, deUint32 firstInstance);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDrawIndirectFunc)                                                                       (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDrawIndexedIndirectFunc)                                                        (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDispatchFunc)                                                                           (VkCommandBuffer commandBuffer, deUint32 x, deUint32 y, deUint32 z);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDispatchFunc)                                                                           (VkCommandBuffer commandBuffer, deUint32 groupCountX, deUint32 groupCountY, deUint32 groupCountZ);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDispatchIndirectFunc)                                                           (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdCopyBufferFunc)                                                                         (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferCopy* pRegions);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdCopyImageFunc)                                                                          (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageCopy* pRegions);
@@ -175,34 +175,16 @@ typedef VKAPI_ATTR void                                   (VKAPI_CALL* GetPhysicalDeviceQueueFamilyProperties2
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetPhysicalDeviceMemoryProperties2KHRFunc)                         (VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2KHR* pMemoryProperties);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetPhysicalDeviceSparseImageFormatProperties2KHRFunc)      (VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2KHR* pFormatInfo, deUint32* pPropertyCount, VkSparseImageFormatProperties2KHR* pProperties);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* TrimCommandPoolKHRFunc)                                                            (VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetPhysicalDeviceSurfaceCapabilities2KHRFunc)                      (VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetPhysicalDeviceSurfaceFormats2KHRFunc)                           (VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, deUint32* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetSwapchainStatusKHRFunc)                                                         (VkDevice device, VkSwapchainKHR swapchain);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateDebugReportCallbackEXTFunc)                                          (VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyDebugReportCallbackEXTFunc)                                         (VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* DebugReportMessageEXTFunc)                                                         (VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, deUint64 object, deUintptr location, deInt32 messageCode, const char* pLayerPrefix, const char* pMessage);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* DebugMarkerSetObjectTagEXTFunc)                                            (VkDevice device, VkDebugMarkerObjectTagInfoEXT* pTagInfo);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* DebugMarkerSetObjectNameEXTFunc)                                           (VkDevice device, VkDebugMarkerObjectNameInfoEXT* pNameInfo);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDebugMarkerBeginEXTFunc)                                                        (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDebugMarkerEndEXTFunc)                                                          (VkCommandBuffer commandBuffer);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDebugMarkerInsertEXTFunc)                                                       (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDrawIndirectCountAMDFunc)                                                       (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdDrawIndexedIndirectCountAMDFunc)                                        (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetPhysicalDeviceExternalImageFormatPropertiesNVFunc)      (VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetMemoryWin32HandleNVFunc)                                                        (VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, pt::Win32Handle* pHandle);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdProcessCommandsNVXFunc)                                                         (VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdReserveSpaceForCommandsNVXFunc)                                         (VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateIndirectCommandsLayoutNVXFunc)                                       (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyIndirectCommandsLayoutNVXFunc)                                      (VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateObjectTableNVXFunc)                                                          (VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyObjectTableNVXFunc)                                                         (VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* RegisterObjectsNVXFunc)                                                            (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const deUint32* pObjectIndices);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* UnregisterObjectsNVXFunc)                                                          (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const deUint32* pObjectIndices);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetPhysicalDeviceGeneratedCommandsPropertiesNVXFunc)       (VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdPushDescriptorSetKHRFunc)                                                       (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 set, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateDescriptorUpdateTemplateKHRFunc)                                     (VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyDescriptorUpdateTemplateKHRFunc)                            (VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* UpdateDescriptorSetWithTemplateKHRFunc)                            (VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdPushDescriptorSetWithTemplateKHRFunc)                           (VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, deUint32 set, const void* pData);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetSwapchainStatusKHRFunc)                                                         (VkDevice device, VkSwapchainKHR swapchain);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetPhysicalDeviceSurfaceCapabilities2KHRFunc)                      (VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetPhysicalDeviceSurfaceFormats2KHRFunc)                           (VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, deUint32* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateDebugReportCallbackEXTFunc)                                          (VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyDebugReportCallbackEXTFunc)                                         (VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* DebugReportMessageEXTFunc)                                                         (VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, deUint64 object, deUintptr location, deInt32 messageCode, const char* pLayerPrefix, const char* pMessage);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetRefreshCycleDurationGOOGLEFunc)                                         (VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetPastPresentationTimingGOOGLEFunc)                                       (VkDevice device, VkSwapchainKHR swapchain, deUint32* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings);
index 09e8b1f..55d0f3b 100644 (file)
@@ -32,10 +32,8 @@ enum HandleType
        HANDLE_TYPE_SWAPCHAIN_KHR,
        HANDLE_TYPE_DISPLAY_KHR,
        HANDLE_TYPE_DISPLAY_MODE_KHR,
-       HANDLE_TYPE_DEBUG_REPORT_CALLBACK_EXT,
-       HANDLE_TYPE_OBJECT_TABLE_NVX,
-       HANDLE_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX,
        HANDLE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR,
+       HANDLE_TYPE_DEBUG_REPORT_CALLBACK_EXT,
        HANDLE_TYPE_LAST
 };
 
index 2d21450..6baaaa7 100644 (file)
@@ -141,14 +141,6 @@ bool isCompressedFormat (VkFormat format)
                case VK_FORMAT_ASTC_12x10_SRGB_BLOCK:
                case VK_FORMAT_ASTC_12x12_UNORM_BLOCK:
                case VK_FORMAT_ASTC_12x12_SRGB_BLOCK:
-               case VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG:
-               case VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG:
-               case VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG:
-               case VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG:
-               case VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG:
-               case VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG:
-               case VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG:
-               case VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG:
                        return true;
 
                default:
index 25309f1..285fcfa 100644 (file)
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  */
-m_vk.destroyDevice                                                                             = (DestroyDeviceFunc)                                                                   GET_PROC_ADDR("vkDestroyDevice");
-m_vk.getDeviceQueue                                                                            = (GetDeviceQueueFunc)                                                                  GET_PROC_ADDR("vkGetDeviceQueue");
-m_vk.queueSubmit                                                                               = (QueueSubmitFunc)                                                                             GET_PROC_ADDR("vkQueueSubmit");
-m_vk.queueWaitIdle                                                                             = (QueueWaitIdleFunc)                                                                   GET_PROC_ADDR("vkQueueWaitIdle");
-m_vk.deviceWaitIdle                                                                            = (DeviceWaitIdleFunc)                                                                  GET_PROC_ADDR("vkDeviceWaitIdle");
-m_vk.allocateMemory                                                                            = (AllocateMemoryFunc)                                                                  GET_PROC_ADDR("vkAllocateMemory");
-m_vk.freeMemory                                                                                        = (FreeMemoryFunc)                                                                              GET_PROC_ADDR("vkFreeMemory");
-m_vk.mapMemory                                                                                 = (MapMemoryFunc)                                                                               GET_PROC_ADDR("vkMapMemory");
-m_vk.unmapMemory                                                                               = (UnmapMemoryFunc)                                                                             GET_PROC_ADDR("vkUnmapMemory");
-m_vk.flushMappedMemoryRanges                                                   = (FlushMappedMemoryRangesFunc)                                                 GET_PROC_ADDR("vkFlushMappedMemoryRanges");
-m_vk.invalidateMappedMemoryRanges                                              = (InvalidateMappedMemoryRangesFunc)                                    GET_PROC_ADDR("vkInvalidateMappedMemoryRanges");
-m_vk.getDeviceMemoryCommitment                                                 = (GetDeviceMemoryCommitmentFunc)                                               GET_PROC_ADDR("vkGetDeviceMemoryCommitment");
-m_vk.bindBufferMemory                                                                  = (BindBufferMemoryFunc)                                                                GET_PROC_ADDR("vkBindBufferMemory");
-m_vk.bindImageMemory                                                                   = (BindImageMemoryFunc)                                                                 GET_PROC_ADDR("vkBindImageMemory");
-m_vk.getBufferMemoryRequirements                                               = (GetBufferMemoryRequirementsFunc)                                             GET_PROC_ADDR("vkGetBufferMemoryRequirements");
-m_vk.getImageMemoryRequirements                                                        = (GetImageMemoryRequirementsFunc)                                              GET_PROC_ADDR("vkGetImageMemoryRequirements");
-m_vk.getImageSparseMemoryRequirements                                  = (GetImageSparseMemoryRequirementsFunc)                                GET_PROC_ADDR("vkGetImageSparseMemoryRequirements");
-m_vk.queueBindSparse                                                                   = (QueueBindSparseFunc)                                                                 GET_PROC_ADDR("vkQueueBindSparse");
-m_vk.createFence                                                                               = (CreateFenceFunc)                                                                             GET_PROC_ADDR("vkCreateFence");
-m_vk.destroyFence                                                                              = (DestroyFenceFunc)                                                                    GET_PROC_ADDR("vkDestroyFence");
-m_vk.resetFences                                                                               = (ResetFencesFunc)                                                                             GET_PROC_ADDR("vkResetFences");
-m_vk.getFenceStatus                                                                            = (GetFenceStatusFunc)                                                                  GET_PROC_ADDR("vkGetFenceStatus");
-m_vk.waitForFences                                                                             = (WaitForFencesFunc)                                                                   GET_PROC_ADDR("vkWaitForFences");
-m_vk.createSemaphore                                                                   = (CreateSemaphoreFunc)                                                                 GET_PROC_ADDR("vkCreateSemaphore");
-m_vk.destroySemaphore                                                                  = (DestroySemaphoreFunc)                                                                GET_PROC_ADDR("vkDestroySemaphore");
-m_vk.createEvent                                                                               = (CreateEventFunc)                                                                             GET_PROC_ADDR("vkCreateEvent");
-m_vk.destroyEvent                                                                              = (DestroyEventFunc)                                                                    GET_PROC_ADDR("vkDestroyEvent");
-m_vk.getEventStatus                                                                            = (GetEventStatusFunc)                                                                  GET_PROC_ADDR("vkGetEventStatus");
-m_vk.setEvent                                                                                  = (SetEventFunc)                                                                                GET_PROC_ADDR("vkSetEvent");
-m_vk.resetEvent                                                                                        = (ResetEventFunc)                                                                              GET_PROC_ADDR("vkResetEvent");
-m_vk.createQueryPool                                                                   = (CreateQueryPoolFunc)                                                                 GET_PROC_ADDR("vkCreateQueryPool");
-m_vk.destroyQueryPool                                                                  = (DestroyQueryPoolFunc)                                                                GET_PROC_ADDR("vkDestroyQueryPool");
-m_vk.getQueryPoolResults                                                               = (GetQueryPoolResultsFunc)                                                             GET_PROC_ADDR("vkGetQueryPoolResults");
-m_vk.createBuffer                                                                              = (CreateBufferFunc)                                                                    GET_PROC_ADDR("vkCreateBuffer");
-m_vk.destroyBuffer                                                                             = (DestroyBufferFunc)                                                                   GET_PROC_ADDR("vkDestroyBuffer");
-m_vk.createBufferView                                                                  = (CreateBufferViewFunc)                                                                GET_PROC_ADDR("vkCreateBufferView");
-m_vk.destroyBufferView                                                                 = (DestroyBufferViewFunc)                                                               GET_PROC_ADDR("vkDestroyBufferView");
-m_vk.createImage                                                                               = (CreateImageFunc)                                                                             GET_PROC_ADDR("vkCreateImage");
-m_vk.destroyImage                                                                              = (DestroyImageFunc)                                                                    GET_PROC_ADDR("vkDestroyImage");
-m_vk.getImageSubresourceLayout                                                 = (GetImageSubresourceLayoutFunc)                                               GET_PROC_ADDR("vkGetImageSubresourceLayout");
-m_vk.createImageView                                                                   = (CreateImageViewFunc)                                                                 GET_PROC_ADDR("vkCreateImageView");
-m_vk.destroyImageView                                                                  = (DestroyImageViewFunc)                                                                GET_PROC_ADDR("vkDestroyImageView");
-m_vk.createShaderModule                                                                        = (CreateShaderModuleFunc)                                                              GET_PROC_ADDR("vkCreateShaderModule");
-m_vk.destroyShaderModule                                                               = (DestroyShaderModuleFunc)                                                             GET_PROC_ADDR("vkDestroyShaderModule");
-m_vk.createPipelineCache                                                               = (CreatePipelineCacheFunc)                                                             GET_PROC_ADDR("vkCreatePipelineCache");
-m_vk.destroyPipelineCache                                                              = (DestroyPipelineCacheFunc)                                                    GET_PROC_ADDR("vkDestroyPipelineCache");
-m_vk.getPipelineCacheData                                                              = (GetPipelineCacheDataFunc)                                                    GET_PROC_ADDR("vkGetPipelineCacheData");
-m_vk.mergePipelineCaches                                                               = (MergePipelineCachesFunc)                                                             GET_PROC_ADDR("vkMergePipelineCaches");
-m_vk.createGraphicsPipelines                                                   = (CreateGraphicsPipelinesFunc)                                                 GET_PROC_ADDR("vkCreateGraphicsPipelines");
-m_vk.createComputePipelines                                                            = (CreateComputePipelinesFunc)                                                  GET_PROC_ADDR("vkCreateComputePipelines");
-m_vk.destroyPipeline                                                                   = (DestroyPipelineFunc)                                                                 GET_PROC_ADDR("vkDestroyPipeline");
-m_vk.createPipelineLayout                                                              = (CreatePipelineLayoutFunc)                                                    GET_PROC_ADDR("vkCreatePipelineLayout");
-m_vk.destroyPipelineLayout                                                             = (DestroyPipelineLayoutFunc)                                                   GET_PROC_ADDR("vkDestroyPipelineLayout");
-m_vk.createSampler                                                                             = (CreateSamplerFunc)                                                                   GET_PROC_ADDR("vkCreateSampler");
-m_vk.destroySampler                                                                            = (DestroySamplerFunc)                                                                  GET_PROC_ADDR("vkDestroySampler");
-m_vk.createDescriptorSetLayout                                                 = (CreateDescriptorSetLayoutFunc)                                               GET_PROC_ADDR("vkCreateDescriptorSetLayout");
-m_vk.destroyDescriptorSetLayout                                                        = (DestroyDescriptorSetLayoutFunc)                                              GET_PROC_ADDR("vkDestroyDescriptorSetLayout");
-m_vk.createDescriptorPool                                                              = (CreateDescriptorPoolFunc)                                                    GET_PROC_ADDR("vkCreateDescriptorPool");
-m_vk.destroyDescriptorPool                                                             = (DestroyDescriptorPoolFunc)                                                   GET_PROC_ADDR("vkDestroyDescriptorPool");
-m_vk.resetDescriptorPool                                                               = (ResetDescriptorPoolFunc)                                                             GET_PROC_ADDR("vkResetDescriptorPool");
-m_vk.allocateDescriptorSets                                                            = (AllocateDescriptorSetsFunc)                                                  GET_PROC_ADDR("vkAllocateDescriptorSets");
-m_vk.freeDescriptorSets                                                                        = (FreeDescriptorSetsFunc)                                                              GET_PROC_ADDR("vkFreeDescriptorSets");
-m_vk.updateDescriptorSets                                                              = (UpdateDescriptorSetsFunc)                                                    GET_PROC_ADDR("vkUpdateDescriptorSets");
-m_vk.createFramebuffer                                                                 = (CreateFramebufferFunc)                                                               GET_PROC_ADDR("vkCreateFramebuffer");
-m_vk.destroyFramebuffer                                                                        = (DestroyFramebufferFunc)                                                              GET_PROC_ADDR("vkDestroyFramebuffer");
-m_vk.createRenderPass                                                                  = (CreateRenderPassFunc)                                                                GET_PROC_ADDR("vkCreateRenderPass");
-m_vk.destroyRenderPass                                                                 = (DestroyRenderPassFunc)                                                               GET_PROC_ADDR("vkDestroyRenderPass");
-m_vk.getRenderAreaGranularity                                                  = (GetRenderAreaGranularityFunc)                                                GET_PROC_ADDR("vkGetRenderAreaGranularity");
-m_vk.createCommandPool                                                                 = (CreateCommandPoolFunc)                                                               GET_PROC_ADDR("vkCreateCommandPool");
-m_vk.destroyCommandPool                                                                        = (DestroyCommandPoolFunc)                                                              GET_PROC_ADDR("vkDestroyCommandPool");
-m_vk.resetCommandPool                                                                  = (ResetCommandPoolFunc)                                                                GET_PROC_ADDR("vkResetCommandPool");
-m_vk.allocateCommandBuffers                                                            = (AllocateCommandBuffersFunc)                                                  GET_PROC_ADDR("vkAllocateCommandBuffers");
-m_vk.freeCommandBuffers                                                                        = (FreeCommandBuffersFunc)                                                              GET_PROC_ADDR("vkFreeCommandBuffers");
-m_vk.beginCommandBuffer                                                                        = (BeginCommandBufferFunc)                                                              GET_PROC_ADDR("vkBeginCommandBuffer");
-m_vk.endCommandBuffer                                                                  = (EndCommandBufferFunc)                                                                GET_PROC_ADDR("vkEndCommandBuffer");
-m_vk.resetCommandBuffer                                                                        = (ResetCommandBufferFunc)                                                              GET_PROC_ADDR("vkResetCommandBuffer");
-m_vk.cmdBindPipeline                                                                   = (CmdBindPipelineFunc)                                                                 GET_PROC_ADDR("vkCmdBindPipeline");
-m_vk.cmdSetViewport                                                                            = (CmdSetViewportFunc)                                                                  GET_PROC_ADDR("vkCmdSetViewport");
-m_vk.cmdSetScissor                                                                             = (CmdSetScissorFunc)                                                                   GET_PROC_ADDR("vkCmdSetScissor");
-m_vk.cmdSetLineWidth                                                                   = (CmdSetLineWidthFunc)                                                                 GET_PROC_ADDR("vkCmdSetLineWidth");
-m_vk.cmdSetDepthBias                                                                   = (CmdSetDepthBiasFunc)                                                                 GET_PROC_ADDR("vkCmdSetDepthBias");
-m_vk.cmdSetBlendConstants                                                              = (CmdSetBlendConstantsFunc)                                                    GET_PROC_ADDR("vkCmdSetBlendConstants");
-m_vk.cmdSetDepthBounds                                                                 = (CmdSetDepthBoundsFunc)                                                               GET_PROC_ADDR("vkCmdSetDepthBounds");
-m_vk.cmdSetStencilCompareMask                                                  = (CmdSetStencilCompareMaskFunc)                                                GET_PROC_ADDR("vkCmdSetStencilCompareMask");
-m_vk.cmdSetStencilWriteMask                                                            = (CmdSetStencilWriteMaskFunc)                                                  GET_PROC_ADDR("vkCmdSetStencilWriteMask");
-m_vk.cmdSetStencilReference                                                            = (CmdSetStencilReferenceFunc)                                                  GET_PROC_ADDR("vkCmdSetStencilReference");
-m_vk.cmdBindDescriptorSets                                                             = (CmdBindDescriptorSetsFunc)                                                   GET_PROC_ADDR("vkCmdBindDescriptorSets");
-m_vk.cmdBindIndexBuffer                                                                        = (CmdBindIndexBufferFunc)                                                              GET_PROC_ADDR("vkCmdBindIndexBuffer");
-m_vk.cmdBindVertexBuffers                                                              = (CmdBindVertexBuffersFunc)                                                    GET_PROC_ADDR("vkCmdBindVertexBuffers");
-m_vk.cmdDraw                                                                                   = (CmdDrawFunc)                                                                                 GET_PROC_ADDR("vkCmdDraw");
-m_vk.cmdDrawIndexed                                                                            = (CmdDrawIndexedFunc)                                                                  GET_PROC_ADDR("vkCmdDrawIndexed");
-m_vk.cmdDrawIndirect                                                                   = (CmdDrawIndirectFunc)                                                                 GET_PROC_ADDR("vkCmdDrawIndirect");
-m_vk.cmdDrawIndexedIndirect                                                            = (CmdDrawIndexedIndirectFunc)                                                  GET_PROC_ADDR("vkCmdDrawIndexedIndirect");
-m_vk.cmdDispatch                                                                               = (CmdDispatchFunc)                                                                             GET_PROC_ADDR("vkCmdDispatch");
-m_vk.cmdDispatchIndirect                                                               = (CmdDispatchIndirectFunc)                                                             GET_PROC_ADDR("vkCmdDispatchIndirect");
-m_vk.cmdCopyBuffer                                                                             = (CmdCopyBufferFunc)                                                                   GET_PROC_ADDR("vkCmdCopyBuffer");
-m_vk.cmdCopyImage                                                                              = (CmdCopyImageFunc)                                                                    GET_PROC_ADDR("vkCmdCopyImage");
-m_vk.cmdBlitImage                                                                              = (CmdBlitImageFunc)                                                                    GET_PROC_ADDR("vkCmdBlitImage");
-m_vk.cmdCopyBufferToImage                                                              = (CmdCopyBufferToImageFunc)                                                    GET_PROC_ADDR("vkCmdCopyBufferToImage");
-m_vk.cmdCopyImageToBuffer                                                              = (CmdCopyImageToBufferFunc)                                                    GET_PROC_ADDR("vkCmdCopyImageToBuffer");
-m_vk.cmdUpdateBuffer                                                                   = (CmdUpdateBufferFunc)                                                                 GET_PROC_ADDR("vkCmdUpdateBuffer");
-m_vk.cmdFillBuffer                                                                             = (CmdFillBufferFunc)                                                                   GET_PROC_ADDR("vkCmdFillBuffer");
-m_vk.cmdClearColorImage                                                                        = (CmdClearColorImageFunc)                                                              GET_PROC_ADDR("vkCmdClearColorImage");
-m_vk.cmdClearDepthStencilImage                                                 = (CmdClearDepthStencilImageFunc)                                               GET_PROC_ADDR("vkCmdClearDepthStencilImage");
-m_vk.cmdClearAttachments                                                               = (CmdClearAttachmentsFunc)                                                             GET_PROC_ADDR("vkCmdClearAttachments");
-m_vk.cmdResolveImage                                                                   = (CmdResolveImageFunc)                                                                 GET_PROC_ADDR("vkCmdResolveImage");
-m_vk.cmdSetEvent                                                                               = (CmdSetEventFunc)                                                                             GET_PROC_ADDR("vkCmdSetEvent");
-m_vk.cmdResetEvent                                                                             = (CmdResetEventFunc)                                                                   GET_PROC_ADDR("vkCmdResetEvent");
-m_vk.cmdWaitEvents                                                                             = (CmdWaitEventsFunc)                                                                   GET_PROC_ADDR("vkCmdWaitEvents");
-m_vk.cmdPipelineBarrier                                                                        = (CmdPipelineBarrierFunc)                                                              GET_PROC_ADDR("vkCmdPipelineBarrier");
-m_vk.cmdBeginQuery                                                                             = (CmdBeginQueryFunc)                                                                   GET_PROC_ADDR("vkCmdBeginQuery");
-m_vk.cmdEndQuery                                                                               = (CmdEndQueryFunc)                                                                             GET_PROC_ADDR("vkCmdEndQuery");
-m_vk.cmdResetQueryPool                                                                 = (CmdResetQueryPoolFunc)                                                               GET_PROC_ADDR("vkCmdResetQueryPool");
-m_vk.cmdWriteTimestamp                                                                 = (CmdWriteTimestampFunc)                                                               GET_PROC_ADDR("vkCmdWriteTimestamp");
-m_vk.cmdCopyQueryPoolResults                                                   = (CmdCopyQueryPoolResultsFunc)                                                 GET_PROC_ADDR("vkCmdCopyQueryPoolResults");
-m_vk.cmdPushConstants                                                                  = (CmdPushConstantsFunc)                                                                GET_PROC_ADDR("vkCmdPushConstants");
-m_vk.cmdBeginRenderPass                                                                        = (CmdBeginRenderPassFunc)                                                              GET_PROC_ADDR("vkCmdBeginRenderPass");
-m_vk.cmdNextSubpass                                                                            = (CmdNextSubpassFunc)                                                                  GET_PROC_ADDR("vkCmdNextSubpass");
-m_vk.cmdEndRenderPass                                                                  = (CmdEndRenderPassFunc)                                                                GET_PROC_ADDR("vkCmdEndRenderPass");
-m_vk.cmdExecuteCommands                                                                        = (CmdExecuteCommandsFunc)                                                              GET_PROC_ADDR("vkCmdExecuteCommands");
-m_vk.createSwapchainKHR                                                                        = (CreateSwapchainKHRFunc)                                                              GET_PROC_ADDR("vkCreateSwapchainKHR");
-m_vk.destroySwapchainKHR                                                               = (DestroySwapchainKHRFunc)                                                             GET_PROC_ADDR("vkDestroySwapchainKHR");
-m_vk.getSwapchainImagesKHR                                                             = (GetSwapchainImagesKHRFunc)                                                   GET_PROC_ADDR("vkGetSwapchainImagesKHR");
-m_vk.acquireNextImageKHR                                                               = (AcquireNextImageKHRFunc)                                                             GET_PROC_ADDR("vkAcquireNextImageKHR");
-m_vk.queuePresentKHR                                                                   = (QueuePresentKHRFunc)                                                                 GET_PROC_ADDR("vkQueuePresentKHR");
-m_vk.createSharedSwapchainsKHR                                                 = (CreateSharedSwapchainsKHRFunc)                                               GET_PROC_ADDR("vkCreateSharedSwapchainsKHR");
-m_vk.trimCommandPoolKHR                                                                        = (TrimCommandPoolKHRFunc)                                                              GET_PROC_ADDR("vkTrimCommandPoolKHR");
-m_vk.getSwapchainStatusKHR                                                             = (GetSwapchainStatusKHRFunc)                                                   GET_PROC_ADDR("vkGetSwapchainStatusKHR");
-m_vk.debugMarkerSetObjectTagEXT                                                        = (DebugMarkerSetObjectTagEXTFunc)                                              GET_PROC_ADDR("vkDebugMarkerSetObjectTagEXT");
-m_vk.debugMarkerSetObjectNameEXT                                               = (DebugMarkerSetObjectNameEXTFunc)                                             GET_PROC_ADDR("vkDebugMarkerSetObjectNameEXT");
-m_vk.cmdDebugMarkerBeginEXT                                                            = (CmdDebugMarkerBeginEXTFunc)                                                  GET_PROC_ADDR("vkCmdDebugMarkerBeginEXT");
-m_vk.cmdDebugMarkerEndEXT                                                              = (CmdDebugMarkerEndEXTFunc)                                                    GET_PROC_ADDR("vkCmdDebugMarkerEndEXT");
-m_vk.cmdDebugMarkerInsertEXT                                                   = (CmdDebugMarkerInsertEXTFunc)                                                 GET_PROC_ADDR("vkCmdDebugMarkerInsertEXT");
-m_vk.cmdDrawIndirectCountAMD                                                   = (CmdDrawIndirectCountAMDFunc)                                                 GET_PROC_ADDR("vkCmdDrawIndirectCountAMD");
-m_vk.cmdDrawIndexedIndirectCountAMD                                            = (CmdDrawIndexedIndirectCountAMDFunc)                                  GET_PROC_ADDR("vkCmdDrawIndexedIndirectCountAMD");
-m_vk.getMemoryWin32HandleNV                                                            = (GetMemoryWin32HandleNVFunc)                                                  GET_PROC_ADDR("vkGetMemoryWin32HandleNV");
-m_vk.cmdProcessCommandsNVX                                                             = (CmdProcessCommandsNVXFunc)                                                   GET_PROC_ADDR("vkCmdProcessCommandsNVX");
-m_vk.cmdReserveSpaceForCommandsNVX                                             = (CmdReserveSpaceForCommandsNVXFunc)                                   GET_PROC_ADDR("vkCmdReserveSpaceForCommandsNVX");
-m_vk.createIndirectCommandsLayoutNVX                                   = (CreateIndirectCommandsLayoutNVXFunc)                                 GET_PROC_ADDR("vkCreateIndirectCommandsLayoutNVX");
-m_vk.destroyIndirectCommandsLayoutNVX                                  = (DestroyIndirectCommandsLayoutNVXFunc)                                GET_PROC_ADDR("vkDestroyIndirectCommandsLayoutNVX");
-m_vk.createObjectTableNVX                                                              = (CreateObjectTableNVXFunc)                                                    GET_PROC_ADDR("vkCreateObjectTableNVX");
-m_vk.destroyObjectTableNVX                                                             = (DestroyObjectTableNVXFunc)                                                   GET_PROC_ADDR("vkDestroyObjectTableNVX");
-m_vk.registerObjectsNVX                                                                        = (RegisterObjectsNVXFunc)                                                              GET_PROC_ADDR("vkRegisterObjectsNVX");
-m_vk.unregisterObjectsNVX                                                              = (UnregisterObjectsNVXFunc)                                                    GET_PROC_ADDR("vkUnregisterObjectsNVX");
-m_vk.getPhysicalDeviceGeneratedCommandsPropertiesNVX   = (GetPhysicalDeviceGeneratedCommandsPropertiesNVXFunc) GET_PROC_ADDR("vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX");
-m_vk.cmdPushDescriptorSetKHR                                                   = (CmdPushDescriptorSetKHRFunc)                                                 GET_PROC_ADDR("vkCmdPushDescriptorSetKHR");
-m_vk.createDescriptorUpdateTemplateKHR                                 = (CreateDescriptorUpdateTemplateKHRFunc)                               GET_PROC_ADDR("vkCreateDescriptorUpdateTemplateKHR");
-m_vk.destroyDescriptorUpdateTemplateKHR                                        = (DestroyDescriptorUpdateTemplateKHRFunc)                              GET_PROC_ADDR("vkDestroyDescriptorUpdateTemplateKHR");
-m_vk.updateDescriptorSetWithTemplateKHR                                        = (UpdateDescriptorSetWithTemplateKHRFunc)                              GET_PROC_ADDR("vkUpdateDescriptorSetWithTemplateKHR");
-m_vk.cmdPushDescriptorSetWithTemplateKHR                               = (CmdPushDescriptorSetWithTemplateKHRFunc)                             GET_PROC_ADDR("vkCmdPushDescriptorSetWithTemplateKHR");
-m_vk.getRefreshCycleDurationGOOGLE                                             = (GetRefreshCycleDurationGOOGLEFunc)                                   GET_PROC_ADDR("vkGetRefreshCycleDurationGOOGLE");
-m_vk.getPastPresentationTimingGOOGLE                                   = (GetPastPresentationTimingGOOGLEFunc)                                 GET_PROC_ADDR("vkGetPastPresentationTimingGOOGLE");
+m_vk.destroyDevice                                                     = (DestroyDeviceFunc)                                           GET_PROC_ADDR("vkDestroyDevice");
+m_vk.getDeviceQueue                                                    = (GetDeviceQueueFunc)                                          GET_PROC_ADDR("vkGetDeviceQueue");
+m_vk.queueSubmit                                                       = (QueueSubmitFunc)                                                     GET_PROC_ADDR("vkQueueSubmit");
+m_vk.queueWaitIdle                                                     = (QueueWaitIdleFunc)                                           GET_PROC_ADDR("vkQueueWaitIdle");
+m_vk.deviceWaitIdle                                                    = (DeviceWaitIdleFunc)                                          GET_PROC_ADDR("vkDeviceWaitIdle");
+m_vk.allocateMemory                                                    = (AllocateMemoryFunc)                                          GET_PROC_ADDR("vkAllocateMemory");
+m_vk.freeMemory                                                                = (FreeMemoryFunc)                                                      GET_PROC_ADDR("vkFreeMemory");
+m_vk.mapMemory                                                         = (MapMemoryFunc)                                                       GET_PROC_ADDR("vkMapMemory");
+m_vk.unmapMemory                                                       = (UnmapMemoryFunc)                                                     GET_PROC_ADDR("vkUnmapMemory");
+m_vk.flushMappedMemoryRanges                           = (FlushMappedMemoryRangesFunc)                         GET_PROC_ADDR("vkFlushMappedMemoryRanges");
+m_vk.invalidateMappedMemoryRanges                      = (InvalidateMappedMemoryRangesFunc)            GET_PROC_ADDR("vkInvalidateMappedMemoryRanges");
+m_vk.getDeviceMemoryCommitment                         = (GetDeviceMemoryCommitmentFunc)                       GET_PROC_ADDR("vkGetDeviceMemoryCommitment");
+m_vk.bindBufferMemory                                          = (BindBufferMemoryFunc)                                        GET_PROC_ADDR("vkBindBufferMemory");
+m_vk.bindImageMemory                                           = (BindImageMemoryFunc)                                         GET_PROC_ADDR("vkBindImageMemory");
+m_vk.getBufferMemoryRequirements                       = (GetBufferMemoryRequirementsFunc)                     GET_PROC_ADDR("vkGetBufferMemoryRequirements");
+m_vk.getImageMemoryRequirements                                = (GetImageMemoryRequirementsFunc)                      GET_PROC_ADDR("vkGetImageMemoryRequirements");
+m_vk.getImageSparseMemoryRequirements          = (GetImageSparseMemoryRequirementsFunc)        GET_PROC_ADDR("vkGetImageSparseMemoryRequirements");
+m_vk.queueBindSparse                                           = (QueueBindSparseFunc)                                         GET_PROC_ADDR("vkQueueBindSparse");
+m_vk.createFence                                                       = (CreateFenceFunc)                                                     GET_PROC_ADDR("vkCreateFence");
+m_vk.destroyFence                                                      = (DestroyFenceFunc)                                            GET_PROC_ADDR("vkDestroyFence");
+m_vk.resetFences                                                       = (ResetFencesFunc)                                                     GET_PROC_ADDR("vkResetFences");
+m_vk.getFenceStatus                                                    = (GetFenceStatusFunc)                                          GET_PROC_ADDR("vkGetFenceStatus");
+m_vk.waitForFences                                                     = (WaitForFencesFunc)                                           GET_PROC_ADDR("vkWaitForFences");
+m_vk.createSemaphore                                           = (CreateSemaphoreFunc)                                         GET_PROC_ADDR("vkCreateSemaphore");
+m_vk.destroySemaphore                                          = (DestroySemaphoreFunc)                                        GET_PROC_ADDR("vkDestroySemaphore");
+m_vk.createEvent                                                       = (CreateEventFunc)                                                     GET_PROC_ADDR("vkCreateEvent");
+m_vk.destroyEvent                                                      = (DestroyEventFunc)                                            GET_PROC_ADDR("vkDestroyEvent");
+m_vk.getEventStatus                                                    = (GetEventStatusFunc)                                          GET_PROC_ADDR("vkGetEventStatus");
+m_vk.setEvent                                                          = (SetEventFunc)                                                        GET_PROC_ADDR("vkSetEvent");
+m_vk.resetEvent                                                                = (ResetEventFunc)                                                      GET_PROC_ADDR("vkResetEvent");
+m_vk.createQueryPool                                           = (CreateQueryPoolFunc)                                         GET_PROC_ADDR("vkCreateQueryPool");
+m_vk.destroyQueryPool                                          = (DestroyQueryPoolFunc)                                        GET_PROC_ADDR("vkDestroyQueryPool");
+m_vk.getQueryPoolResults                                       = (GetQueryPoolResultsFunc)                                     GET_PROC_ADDR("vkGetQueryPoolResults");
+m_vk.createBuffer                                                      = (CreateBufferFunc)                                            GET_PROC_ADDR("vkCreateBuffer");
+m_vk.destroyBuffer                                                     = (DestroyBufferFunc)                                           GET_PROC_ADDR("vkDestroyBuffer");
+m_vk.createBufferView                                          = (CreateBufferViewFunc)                                        GET_PROC_ADDR("vkCreateBufferView");
+m_vk.destroyBufferView                                         = (DestroyBufferViewFunc)                                       GET_PROC_ADDR("vkDestroyBufferView");
+m_vk.createImage                                                       = (CreateImageFunc)                                                     GET_PROC_ADDR("vkCreateImage");
+m_vk.destroyImage                                                      = (DestroyImageFunc)                                            GET_PROC_ADDR("vkDestroyImage");
+m_vk.getImageSubresourceLayout                         = (GetImageSubresourceLayoutFunc)                       GET_PROC_ADDR("vkGetImageSubresourceLayout");
+m_vk.createImageView                                           = (CreateImageViewFunc)                                         GET_PROC_ADDR("vkCreateImageView");
+m_vk.destroyImageView                                          = (DestroyImageViewFunc)                                        GET_PROC_ADDR("vkDestroyImageView");
+m_vk.createShaderModule                                                = (CreateShaderModuleFunc)                                      GET_PROC_ADDR("vkCreateShaderModule");
+m_vk.destroyShaderModule                                       = (DestroyShaderModuleFunc)                                     GET_PROC_ADDR("vkDestroyShaderModule");
+m_vk.createPipelineCache                                       = (CreatePipelineCacheFunc)                                     GET_PROC_ADDR("vkCreatePipelineCache");
+m_vk.destroyPipelineCache                                      = (DestroyPipelineCacheFunc)                            GET_PROC_ADDR("vkDestroyPipelineCache");
+m_vk.getPipelineCacheData                                      = (GetPipelineCacheDataFunc)                            GET_PROC_ADDR("vkGetPipelineCacheData");
+m_vk.mergePipelineCaches                                       = (MergePipelineCachesFunc)                                     GET_PROC_ADDR("vkMergePipelineCaches");
+m_vk.createGraphicsPipelines                           = (CreateGraphicsPipelinesFunc)                         GET_PROC_ADDR("vkCreateGraphicsPipelines");
+m_vk.createComputePipelines                                    = (CreateComputePipelinesFunc)                          GET_PROC_ADDR("vkCreateComputePipelines");
+m_vk.destroyPipeline                                           = (DestroyPipelineFunc)                                         GET_PROC_ADDR("vkDestroyPipeline");
+m_vk.createPipelineLayout                                      = (CreatePipelineLayoutFunc)                            GET_PROC_ADDR("vkCreatePipelineLayout");
+m_vk.destroyPipelineLayout                                     = (DestroyPipelineLayoutFunc)                           GET_PROC_ADDR("vkDestroyPipelineLayout");
+m_vk.createSampler                                                     = (CreateSamplerFunc)                                           GET_PROC_ADDR("vkCreateSampler");
+m_vk.destroySampler                                                    = (DestroySamplerFunc)                                          GET_PROC_ADDR("vkDestroySampler");
+m_vk.createDescriptorSetLayout                         = (CreateDescriptorSetLayoutFunc)                       GET_PROC_ADDR("vkCreateDescriptorSetLayout");
+m_vk.destroyDescriptorSetLayout                                = (DestroyDescriptorSetLayoutFunc)                      GET_PROC_ADDR("vkDestroyDescriptorSetLayout");
+m_vk.createDescriptorPool                                      = (CreateDescriptorPoolFunc)                            GET_PROC_ADDR("vkCreateDescriptorPool");
+m_vk.destroyDescriptorPool                                     = (DestroyDescriptorPoolFunc)                           GET_PROC_ADDR("vkDestroyDescriptorPool");
+m_vk.resetDescriptorPool                                       = (ResetDescriptorPoolFunc)                                     GET_PROC_ADDR("vkResetDescriptorPool");
+m_vk.allocateDescriptorSets                                    = (AllocateDescriptorSetsFunc)                          GET_PROC_ADDR("vkAllocateDescriptorSets");
+m_vk.freeDescriptorSets                                                = (FreeDescriptorSetsFunc)                                      GET_PROC_ADDR("vkFreeDescriptorSets");
+m_vk.updateDescriptorSets                                      = (UpdateDescriptorSetsFunc)                            GET_PROC_ADDR("vkUpdateDescriptorSets");
+m_vk.createFramebuffer                                         = (CreateFramebufferFunc)                                       GET_PROC_ADDR("vkCreateFramebuffer");
+m_vk.destroyFramebuffer                                                = (DestroyFramebufferFunc)                                      GET_PROC_ADDR("vkDestroyFramebuffer");
+m_vk.createRenderPass                                          = (CreateRenderPassFunc)                                        GET_PROC_ADDR("vkCreateRenderPass");
+m_vk.destroyRenderPass                                         = (DestroyRenderPassFunc)                                       GET_PROC_ADDR("vkDestroyRenderPass");
+m_vk.getRenderAreaGranularity                          = (GetRenderAreaGranularityFunc)                        GET_PROC_ADDR("vkGetRenderAreaGranularity");
+m_vk.createCommandPool                                         = (CreateCommandPoolFunc)                                       GET_PROC_ADDR("vkCreateCommandPool");
+m_vk.destroyCommandPool                                                = (DestroyCommandPoolFunc)                                      GET_PROC_ADDR("vkDestroyCommandPool");
+m_vk.resetCommandPool                                          = (ResetCommandPoolFunc)                                        GET_PROC_ADDR("vkResetCommandPool");
+m_vk.allocateCommandBuffers                                    = (AllocateCommandBuffersFunc)                          GET_PROC_ADDR("vkAllocateCommandBuffers");
+m_vk.freeCommandBuffers                                                = (FreeCommandBuffersFunc)                                      GET_PROC_ADDR("vkFreeCommandBuffers");
+m_vk.beginCommandBuffer                                                = (BeginCommandBufferFunc)                                      GET_PROC_ADDR("vkBeginCommandBuffer");
+m_vk.endCommandBuffer                                          = (EndCommandBufferFunc)                                        GET_PROC_ADDR("vkEndCommandBuffer");
+m_vk.resetCommandBuffer                                                = (ResetCommandBufferFunc)                                      GET_PROC_ADDR("vkResetCommandBuffer");
+m_vk.cmdBindPipeline                                           = (CmdBindPipelineFunc)                                         GET_PROC_ADDR("vkCmdBindPipeline");
+m_vk.cmdSetViewport                                                    = (CmdSetViewportFunc)                                          GET_PROC_ADDR("vkCmdSetViewport");
+m_vk.cmdSetScissor                                                     = (CmdSetScissorFunc)                                           GET_PROC_ADDR("vkCmdSetScissor");
+m_vk.cmdSetLineWidth                                           = (CmdSetLineWidthFunc)                                         GET_PROC_ADDR("vkCmdSetLineWidth");
+m_vk.cmdSetDepthBias                                           = (CmdSetDepthBiasFunc)                                         GET_PROC_ADDR("vkCmdSetDepthBias");
+m_vk.cmdSetBlendConstants                                      = (CmdSetBlendConstantsFunc)                            GET_PROC_ADDR("vkCmdSetBlendConstants");
+m_vk.cmdSetDepthBounds                                         = (CmdSetDepthBoundsFunc)                                       GET_PROC_ADDR("vkCmdSetDepthBounds");
+m_vk.cmdSetStencilCompareMask                          = (CmdSetStencilCompareMaskFunc)                        GET_PROC_ADDR("vkCmdSetStencilCompareMask");
+m_vk.cmdSetStencilWriteMask                                    = (CmdSetStencilWriteMaskFunc)                          GET_PROC_ADDR("vkCmdSetStencilWriteMask");
+m_vk.cmdSetStencilReference                                    = (CmdSetStencilReferenceFunc)                          GET_PROC_ADDR("vkCmdSetStencilReference");
+m_vk.cmdBindDescriptorSets                                     = (CmdBindDescriptorSetsFunc)                           GET_PROC_ADDR("vkCmdBindDescriptorSets");
+m_vk.cmdBindIndexBuffer                                                = (CmdBindIndexBufferFunc)                                      GET_PROC_ADDR("vkCmdBindIndexBuffer");
+m_vk.cmdBindVertexBuffers                                      = (CmdBindVertexBuffersFunc)                            GET_PROC_ADDR("vkCmdBindVertexBuffers");
+m_vk.cmdDraw                                                           = (CmdDrawFunc)                                                         GET_PROC_ADDR("vkCmdDraw");
+m_vk.cmdDrawIndexed                                                    = (CmdDrawIndexedFunc)                                          GET_PROC_ADDR("vkCmdDrawIndexed");
+m_vk.cmdDrawIndirect                                           = (CmdDrawIndirectFunc)                                         GET_PROC_ADDR("vkCmdDrawIndirect");
+m_vk.cmdDrawIndexedIndirect                                    = (CmdDrawIndexedIndirectFunc)                          GET_PROC_ADDR("vkCmdDrawIndexedIndirect");
+m_vk.cmdDispatch                                                       = (CmdDispatchFunc)                                                     GET_PROC_ADDR("vkCmdDispatch");
+m_vk.cmdDispatchIndirect                                       = (CmdDispatchIndirectFunc)                                     GET_PROC_ADDR("vkCmdDispatchIndirect");
+m_vk.cmdCopyBuffer                                                     = (CmdCopyBufferFunc)                                           GET_PROC_ADDR("vkCmdCopyBuffer");
+m_vk.cmdCopyImage                                                      = (CmdCopyImageFunc)                                            GET_PROC_ADDR("vkCmdCopyImage");
+m_vk.cmdBlitImage                                                      = (CmdBlitImageFunc)                                            GET_PROC_ADDR("vkCmdBlitImage");
+m_vk.cmdCopyBufferToImage                                      = (CmdCopyBufferToImageFunc)                            GET_PROC_ADDR("vkCmdCopyBufferToImage");
+m_vk.cmdCopyImageToBuffer                                      = (CmdCopyImageToBufferFunc)                            GET_PROC_ADDR("vkCmdCopyImageToBuffer");
+m_vk.cmdUpdateBuffer                                           = (CmdUpdateBufferFunc)                                         GET_PROC_ADDR("vkCmdUpdateBuffer");
+m_vk.cmdFillBuffer                                                     = (CmdFillBufferFunc)                                           GET_PROC_ADDR("vkCmdFillBuffer");
+m_vk.cmdClearColorImage                                                = (CmdClearColorImageFunc)                                      GET_PROC_ADDR("vkCmdClearColorImage");
+m_vk.cmdClearDepthStencilImage                         = (CmdClearDepthStencilImageFunc)                       GET_PROC_ADDR("vkCmdClearDepthStencilImage");
+m_vk.cmdClearAttachments                                       = (CmdClearAttachmentsFunc)                                     GET_PROC_ADDR("vkCmdClearAttachments");
+m_vk.cmdResolveImage                                           = (CmdResolveImageFunc)                                         GET_PROC_ADDR("vkCmdResolveImage");
+m_vk.cmdSetEvent                                                       = (CmdSetEventFunc)                                                     GET_PROC_ADDR("vkCmdSetEvent");
+m_vk.cmdResetEvent                                                     = (CmdResetEventFunc)                                           GET_PROC_ADDR("vkCmdResetEvent");
+m_vk.cmdWaitEvents                                                     = (CmdWaitEventsFunc)                                           GET_PROC_ADDR("vkCmdWaitEvents");
+m_vk.cmdPipelineBarrier                                                = (CmdPipelineBarrierFunc)                                      GET_PROC_ADDR("vkCmdPipelineBarrier");
+m_vk.cmdBeginQuery                                                     = (CmdBeginQueryFunc)                                           GET_PROC_ADDR("vkCmdBeginQuery");
+m_vk.cmdEndQuery                                                       = (CmdEndQueryFunc)                                                     GET_PROC_ADDR("vkCmdEndQuery");
+m_vk.cmdResetQueryPool                                         = (CmdResetQueryPoolFunc)                                       GET_PROC_ADDR("vkCmdResetQueryPool");
+m_vk.cmdWriteTimestamp                                         = (CmdWriteTimestampFunc)                                       GET_PROC_ADDR("vkCmdWriteTimestamp");
+m_vk.cmdCopyQueryPoolResults                           = (CmdCopyQueryPoolResultsFunc)                         GET_PROC_ADDR("vkCmdCopyQueryPoolResults");
+m_vk.cmdPushConstants                                          = (CmdPushConstantsFunc)                                        GET_PROC_ADDR("vkCmdPushConstants");
+m_vk.cmdBeginRenderPass                                                = (CmdBeginRenderPassFunc)                                      GET_PROC_ADDR("vkCmdBeginRenderPass");
+m_vk.cmdNextSubpass                                                    = (CmdNextSubpassFunc)                                          GET_PROC_ADDR("vkCmdNextSubpass");
+m_vk.cmdEndRenderPass                                          = (CmdEndRenderPassFunc)                                        GET_PROC_ADDR("vkCmdEndRenderPass");
+m_vk.cmdExecuteCommands                                                = (CmdExecuteCommandsFunc)                                      GET_PROC_ADDR("vkCmdExecuteCommands");
+m_vk.createSwapchainKHR                                                = (CreateSwapchainKHRFunc)                                      GET_PROC_ADDR("vkCreateSwapchainKHR");
+m_vk.destroySwapchainKHR                                       = (DestroySwapchainKHRFunc)                                     GET_PROC_ADDR("vkDestroySwapchainKHR");
+m_vk.getSwapchainImagesKHR                                     = (GetSwapchainImagesKHRFunc)                           GET_PROC_ADDR("vkGetSwapchainImagesKHR");
+m_vk.acquireNextImageKHR                                       = (AcquireNextImageKHRFunc)                                     GET_PROC_ADDR("vkAcquireNextImageKHR");
+m_vk.queuePresentKHR                                           = (QueuePresentKHRFunc)                                         GET_PROC_ADDR("vkQueuePresentKHR");
+m_vk.createSharedSwapchainsKHR                         = (CreateSharedSwapchainsKHRFunc)                       GET_PROC_ADDR("vkCreateSharedSwapchainsKHR");
+m_vk.trimCommandPoolKHR                                                = (TrimCommandPoolKHRFunc)                                      GET_PROC_ADDR("vkTrimCommandPoolKHR");
+m_vk.cmdPushDescriptorSetKHR                           = (CmdPushDescriptorSetKHRFunc)                         GET_PROC_ADDR("vkCmdPushDescriptorSetKHR");
+m_vk.createDescriptorUpdateTemplateKHR         = (CreateDescriptorUpdateTemplateKHRFunc)       GET_PROC_ADDR("vkCreateDescriptorUpdateTemplateKHR");
+m_vk.destroyDescriptorUpdateTemplateKHR                = (DestroyDescriptorUpdateTemplateKHRFunc)      GET_PROC_ADDR("vkDestroyDescriptorUpdateTemplateKHR");
+m_vk.updateDescriptorSetWithTemplateKHR                = (UpdateDescriptorSetWithTemplateKHRFunc)      GET_PROC_ADDR("vkUpdateDescriptorSetWithTemplateKHR");
+m_vk.cmdPushDescriptorSetWithTemplateKHR       = (CmdPushDescriptorSetWithTemplateKHRFunc)     GET_PROC_ADDR("vkCmdPushDescriptorSetWithTemplateKHR");
+m_vk.getSwapchainStatusKHR                                     = (GetSwapchainStatusKHRFunc)                           GET_PROC_ADDR("vkGetSwapchainStatusKHR");
+m_vk.getRefreshCycleDurationGOOGLE                     = (GetRefreshCycleDurationGOOGLEFunc)           GET_PROC_ADDR("vkGetRefreshCycleDurationGOOGLE");
+m_vk.getPastPresentationTimingGOOGLE           = (GetPastPresentationTimingGOOGLEFunc)         GET_PROC_ADDR("vkGetPastPresentationTimingGOOGLE");
index a7c8d26..ce557c1 100644 (file)
@@ -49,4 +49,3 @@ m_vk.getPhysicalDeviceSurfaceFormats2KHR                              = (GetPhysicalDeviceSurfaceFormats2K
 m_vk.createDebugReportCallbackEXT                                              = (CreateDebugReportCallbackEXTFunc)                                            GET_PROC_ADDR("vkCreateDebugReportCallbackEXT");
 m_vk.destroyDebugReportCallbackEXT                                             = (DestroyDebugReportCallbackEXTFunc)                                           GET_PROC_ADDR("vkDestroyDebugReportCallbackEXT");
 m_vk.debugReportMessageEXT                                                             = (DebugReportMessageEXTFunc)                                                           GET_PROC_ADDR("vkDebugReportMessageEXT");
-m_vk.getPhysicalDeviceExternalImageFormatPropertiesNV  = (GetPhysicalDeviceExternalImageFormatPropertiesNVFunc)        GET_PROC_ADDR("vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
index 1922903..79ac3d4 100644 (file)
@@ -241,8 +241,3 @@ void InstanceDriver::debugReportMessageEXT (VkInstance instance, VkDebugReportFl
 {
        m_vk.debugReportMessageEXT(instance, flags, objectType, object, location, messageCode, pLayerPrefix, pMessage);
 }
-
-VkResult InstanceDriver::getPhysicalDeviceExternalImageFormatPropertiesNV (VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties) const
-{
-       return m_vk.getPhysicalDeviceExternalImageFormatPropertiesNV(physicalDevice, format, type, tiling, usage, flags, externalHandleType, pExternalImageFormatProperties);
-}
index fb44c96..1907ca8 100644 (file)
@@ -49,4 +49,3 @@ GetPhysicalDeviceSurfaceFormats2KHRFunc                                       getPhysicalDeviceSurfaceFormats2KHR;
 CreateDebugReportCallbackEXTFunc                                               createDebugReportCallbackEXT;
 DestroyDebugReportCallbackEXTFunc                                              destroyDebugReportCallbackEXT;
 DebugReportMessageEXTFunc                                                              debugReportMessageEXT;
-GetPhysicalDeviceExternalImageFormatPropertiesNVFunc   getPhysicalDeviceExternalImageFormatPropertiesNV;
index 28efc04..eae9a3f 100644 (file)
@@ -233,18 +233,6 @@ public:
                                                                                ~SwapchainKHR   (void) {}
 };
 
-class IndirectCommandsLayoutNVX
-{
-public:
-       IndirectCommandsLayoutNVX (VkDevice, const VkIndirectCommandsLayoutCreateInfoNVX*) {}
-};
-
-class ObjectTableNVX
-{
-public:
-       ObjectTableNVX (VkDevice, const VkObjectTableCreateInfoNVX*) {}
-};
-
 void* allocateHeap (const VkMemoryAllocateInfo* pAllocInfo)
 {
        // \todo [2015-12-03 pyry] Alignment requirements?
index 063bac2..bd776fa 100644 (file)
@@ -169,28 +169,16 @@ VKAPI_ATTR VkResult VKAPI_CALL createWin32SurfaceKHR (VkInstance instance, const
        VK_NULL_RETURN((*pSurface = allocateNonDispHandle<SurfaceKHR, VkSurfaceKHR>(instance, pCreateInfo, pAllocator)));
 }
 
-VKAPI_ATTR VkResult VKAPI_CALL createDebugReportCallbackEXT (VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback)
-{
-       DE_UNREF(pAllocator);
-       VK_NULL_RETURN((*pCallback = allocateNonDispHandle<DebugReportCallbackEXT, VkDebugReportCallbackEXT>(instance, pCreateInfo, pAllocator)));
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL createIndirectCommandsLayoutNVX (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout)
-{
-       DE_UNREF(pAllocator);
-       VK_NULL_RETURN((*pIndirectCommandsLayout = allocateNonDispHandle<IndirectCommandsLayoutNVX, VkIndirectCommandsLayoutNVX>(device, pCreateInfo, pAllocator)));
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL createObjectTableNVX (VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable)
+VKAPI_ATTR VkResult VKAPI_CALL createDescriptorUpdateTemplateKHR (VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate)
 {
        DE_UNREF(pAllocator);
-       VK_NULL_RETURN((*pObjectTable = allocateNonDispHandle<ObjectTableNVX, VkObjectTableNVX>(device, pCreateInfo, pAllocator)));
+       VK_NULL_RETURN((*pDescriptorUpdateTemplate = allocateNonDispHandle<DescriptorUpdateTemplateKHR, VkDescriptorUpdateTemplateKHR>(device, pCreateInfo, pAllocator)));
 }
 
-VKAPI_ATTR VkResult VKAPI_CALL createDescriptorUpdateTemplateKHR (VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate)
+VKAPI_ATTR VkResult VKAPI_CALL createDebugReportCallbackEXT (VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback)
 {
        DE_UNREF(pAllocator);
-       VK_NULL_RETURN((*pDescriptorUpdateTemplate = allocateNonDispHandle<DescriptorUpdateTemplateKHR, VkDescriptorUpdateTemplateKHR>(device, pCreateInfo, pAllocator)));
+       VK_NULL_RETURN((*pCallback = allocateNonDispHandle<DebugReportCallbackEXT, VkDebugReportCallbackEXT>(instance, pCreateInfo, pAllocator)));
 }
 
 VKAPI_ATTR void VKAPI_CALL destroyInstance (VkInstance instance, const VkAllocationCallbacks* pAllocator)
@@ -329,28 +317,16 @@ VKAPI_ATTR void VKAPI_CALL destroySwapchainKHR (VkDevice device, VkSwapchainKHR
        freeNonDispHandle<SwapchainKHR, VkSwapchainKHR>(swapchain, pAllocator);
 }
 
-VKAPI_ATTR void VKAPI_CALL destroyDebugReportCallbackEXT (VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator)
-{
-       DE_UNREF(instance);
-       freeNonDispHandle<DebugReportCallbackEXT, VkDebugReportCallbackEXT>(callback, pAllocator);
-}
-
-VKAPI_ATTR void VKAPI_CALL destroyIndirectCommandsLayoutNVX (VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator)
-{
-       DE_UNREF(device);
-       freeNonDispHandle<IndirectCommandsLayoutNVX, VkIndirectCommandsLayoutNVX>(indirectCommandsLayout, pAllocator);
-}
-
-VKAPI_ATTR void VKAPI_CALL destroyObjectTableNVX (VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator)
+VKAPI_ATTR void VKAPI_CALL destroyDescriptorUpdateTemplateKHR (VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator)
 {
        DE_UNREF(device);
-       freeNonDispHandle<ObjectTableNVX, VkObjectTableNVX>(objectTable, pAllocator);
+       freeNonDispHandle<DescriptorUpdateTemplateKHR, VkDescriptorUpdateTemplateKHR>(descriptorUpdateTemplate, pAllocator);
 }
 
-VKAPI_ATTR void VKAPI_CALL destroyDescriptorUpdateTemplateKHR (VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator)
+VKAPI_ATTR void VKAPI_CALL destroyDebugReportCallbackEXT (VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator)
 {
-       DE_UNREF(device);
-       freeNonDispHandle<DescriptorUpdateTemplateKHR, VkDescriptorUpdateTemplateKHR>(descriptorUpdateTemplate, pAllocator);
+       DE_UNREF(instance);
+       freeNonDispHandle<DebugReportCallbackEXT, VkDebugReportCallbackEXT>(callback, pAllocator);
 }
 
 VKAPI_ATTR VkResult VKAPI_CALL enumerateInstanceExtensionProperties (const char* pLayerName, deUint32* pPropertyCount, VkExtensionProperties* pProperties)
@@ -748,12 +724,12 @@ VKAPI_ATTR void VKAPI_CALL cmdDrawIndexedIndirect (VkCommandBuffer commandBuffer
        DE_UNREF(stride);
 }
 
-VKAPI_ATTR void VKAPI_CALL cmdDispatch (VkCommandBuffer commandBuffer, deUint32 x, deUint32 y, deUint32 z)
+VKAPI_ATTR void VKAPI_CALL cmdDispatch (VkCommandBuffer commandBuffer, deUint32 groupCountX, deUint32 groupCountY, deUint32 groupCountZ)
 {
        DE_UNREF(commandBuffer);
-       DE_UNREF(x);
-       DE_UNREF(y);
-       DE_UNREF(z);
+       DE_UNREF(groupCountX);
+       DE_UNREF(groupCountY);
+       DE_UNREF(groupCountZ);
 }
 
 VKAPI_ATTR void VKAPI_CALL cmdDispatchIndirect (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset)
@@ -1195,6 +1171,40 @@ VKAPI_ATTR void VKAPI_CALL trimCommandPoolKHR (VkDevice device, VkCommandPool co
        DE_UNREF(flags);
 }
 
+VKAPI_ATTR void VKAPI_CALL cmdPushDescriptorSetKHR (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 set, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pipelineBindPoint);
+       DE_UNREF(layout);
+       DE_UNREF(set);
+       DE_UNREF(descriptorWriteCount);
+       DE_UNREF(pDescriptorWrites);
+}
+
+VKAPI_ATTR void VKAPI_CALL updateDescriptorSetWithTemplateKHR (VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData)
+{
+       DE_UNREF(device);
+       DE_UNREF(descriptorSet);
+       DE_UNREF(descriptorUpdateTemplate);
+       DE_UNREF(pData);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdPushDescriptorSetWithTemplateKHR (VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, deUint32 set, const void* pData)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(descriptorUpdateTemplate);
+       DE_UNREF(layout);
+       DE_UNREF(set);
+       DE_UNREF(pData);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL getSwapchainStatusKHR (VkDevice device, VkSwapchainKHR swapchain)
+{
+       DE_UNREF(device);
+       DE_UNREF(swapchain);
+       return VK_SUCCESS;
+}
+
 VKAPI_ATTR VkResult VKAPI_CALL getPhysicalDeviceSurfaceCapabilities2KHR (VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities)
 {
        DE_UNREF(physicalDevice);
@@ -1212,13 +1222,6 @@ VKAPI_ATTR VkResult VKAPI_CALL getPhysicalDeviceSurfaceFormats2KHR (VkPhysicalDe
        return VK_SUCCESS;
 }
 
-VKAPI_ATTR VkResult VKAPI_CALL getSwapchainStatusKHR (VkDevice device, VkSwapchainKHR swapchain)
-{
-       DE_UNREF(device);
-       DE_UNREF(swapchain);
-       return VK_SUCCESS;
-}
-
 VKAPI_ATTR void VKAPI_CALL debugReportMessageEXT (VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, deUint64 object, deUintptr location, deInt32 messageCode, const char* pLayerPrefix, const char* pMessage)
 {
        DE_UNREF(instance);
@@ -1231,147 +1234,6 @@ VKAPI_ATTR void VKAPI_CALL debugReportMessageEXT (VkInstance instance, VkDebugRe
        DE_UNREF(pMessage);
 }
 
-VKAPI_ATTR VkResult VKAPI_CALL debugMarkerSetObjectTagEXT (VkDevice device, VkDebugMarkerObjectTagInfoEXT* pTagInfo)
-{
-       DE_UNREF(device);
-       DE_UNREF(pTagInfo);
-       return VK_SUCCESS;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL debugMarkerSetObjectNameEXT (VkDevice device, VkDebugMarkerObjectNameInfoEXT* pNameInfo)
-{
-       DE_UNREF(device);
-       DE_UNREF(pNameInfo);
-       return VK_SUCCESS;
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdDebugMarkerBeginEXT (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo)
-{
-       DE_UNREF(commandBuffer);
-       DE_UNREF(pMarkerInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdDebugMarkerEndEXT (VkCommandBuffer commandBuffer)
-{
-       DE_UNREF(commandBuffer);
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdDebugMarkerInsertEXT (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo)
-{
-       DE_UNREF(commandBuffer);
-       DE_UNREF(pMarkerInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdDrawIndirectCountAMD (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride)
-{
-       DE_UNREF(commandBuffer);
-       DE_UNREF(buffer);
-       DE_UNREF(offset);
-       DE_UNREF(countBuffer);
-       DE_UNREF(countBufferOffset);
-       DE_UNREF(maxDrawCount);
-       DE_UNREF(stride);
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdDrawIndexedIndirectCountAMD (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride)
-{
-       DE_UNREF(commandBuffer);
-       DE_UNREF(buffer);
-       DE_UNREF(offset);
-       DE_UNREF(countBuffer);
-       DE_UNREF(countBufferOffset);
-       DE_UNREF(maxDrawCount);
-       DE_UNREF(stride);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL getPhysicalDeviceExternalImageFormatPropertiesNV (VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties)
-{
-       DE_UNREF(physicalDevice);
-       DE_UNREF(format);
-       DE_UNREF(type);
-       DE_UNREF(tiling);
-       DE_UNREF(usage);
-       DE_UNREF(flags);
-       DE_UNREF(externalHandleType);
-       DE_UNREF(pExternalImageFormatProperties);
-       return VK_SUCCESS;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL getMemoryWin32HandleNV (VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, pt::Win32Handle* pHandle)
-{
-       DE_UNREF(device);
-       DE_UNREF(memory);
-       DE_UNREF(handleType);
-       DE_UNREF(pHandle);
-       return VK_SUCCESS;
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdProcessCommandsNVX (VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo)
-{
-       DE_UNREF(commandBuffer);
-       DE_UNREF(pProcessCommandsInfo);
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdReserveSpaceForCommandsNVX (VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo)
-{
-       DE_UNREF(commandBuffer);
-       DE_UNREF(pReserveSpaceInfo);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL registerObjectsNVX (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const deUint32* pObjectIndices)
-{
-       DE_UNREF(device);
-       DE_UNREF(objectTable);
-       DE_UNREF(objectCount);
-       DE_UNREF(ppObjectTableEntries);
-       DE_UNREF(pObjectIndices);
-       return VK_SUCCESS;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL unregisterObjectsNVX (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const deUint32* pObjectIndices)
-{
-       DE_UNREF(device);
-       DE_UNREF(objectTable);
-       DE_UNREF(objectCount);
-       DE_UNREF(pObjectEntryTypes);
-       DE_UNREF(pObjectIndices);
-       return VK_SUCCESS;
-}
-
-VKAPI_ATTR void VKAPI_CALL getPhysicalDeviceGeneratedCommandsPropertiesNVX (VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits)
-{
-       DE_UNREF(physicalDevice);
-       DE_UNREF(pFeatures);
-       DE_UNREF(pLimits);
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdPushDescriptorSetKHR (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 set, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites)
-{
-       DE_UNREF(commandBuffer);
-       DE_UNREF(pipelineBindPoint);
-       DE_UNREF(layout);
-       DE_UNREF(set);
-       DE_UNREF(descriptorWriteCount);
-       DE_UNREF(pDescriptorWrites);
-}
-
-VKAPI_ATTR void VKAPI_CALL updateDescriptorSetWithTemplateKHR (VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData)
-{
-       DE_UNREF(device);
-       DE_UNREF(descriptorSet);
-       DE_UNREF(descriptorUpdateTemplate);
-       DE_UNREF(pData);
-}
-
-VKAPI_ATTR void VKAPI_CALL cmdPushDescriptorSetWithTemplateKHR (VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, deUint32 set, const void* pData)
-{
-       DE_UNREF(commandBuffer);
-       DE_UNREF(descriptorUpdateTemplate);
-       DE_UNREF(layout);
-       DE_UNREF(set);
-       DE_UNREF(pData);
-}
-
 VKAPI_ATTR VkResult VKAPI_CALL getRefreshCycleDurationGOOGLE (VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties)
 {
        DE_UNREF(device);
@@ -1447,162 +1309,144 @@ static const tcu::StaticFunctionLibrary::Entry s_instanceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkCreateDebugReportCallbackEXT,                                              createDebugReportCallbackEXT),
        VK_NULL_FUNC_ENTRY(vkDestroyDebugReportCallbackEXT,                                             destroyDebugReportCallbackEXT),
        VK_NULL_FUNC_ENTRY(vkDebugReportMessageEXT,                                                             debugReportMessageEXT),
-       VK_NULL_FUNC_ENTRY(vkGetPhysicalDeviceExternalImageFormatPropertiesNV,  getPhysicalDeviceExternalImageFormatPropertiesNV),
 };
 
 static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
 {
-       VK_NULL_FUNC_ENTRY(vkDestroyDevice,                                                                             destroyDevice),
-       VK_NULL_FUNC_ENTRY(vkGetDeviceQueue,                                                                    getDeviceQueue),
-       VK_NULL_FUNC_ENTRY(vkQueueSubmit,                                                                               queueSubmit),
-       VK_NULL_FUNC_ENTRY(vkQueueWaitIdle,                                                                             queueWaitIdle),
-       VK_NULL_FUNC_ENTRY(vkDeviceWaitIdle,                                                                    deviceWaitIdle),
-       VK_NULL_FUNC_ENTRY(vkAllocateMemory,                                                                    allocateMemory),
-       VK_NULL_FUNC_ENTRY(vkFreeMemory,                                                                                freeMemory),
-       VK_NULL_FUNC_ENTRY(vkMapMemory,                                                                                 mapMemory),
-       VK_NULL_FUNC_ENTRY(vkUnmapMemory,                                                                               unmapMemory),
-       VK_NULL_FUNC_ENTRY(vkFlushMappedMemoryRanges,                                                   flushMappedMemoryRanges),
-       VK_NULL_FUNC_ENTRY(vkInvalidateMappedMemoryRanges,                                              invalidateMappedMemoryRanges),
-       VK_NULL_FUNC_ENTRY(vkGetDeviceMemoryCommitment,                                                 getDeviceMemoryCommitment),
-       VK_NULL_FUNC_ENTRY(vkBindBufferMemory,                                                                  bindBufferMemory),
-       VK_NULL_FUNC_ENTRY(vkBindImageMemory,                                                                   bindImageMemory),
-       VK_NULL_FUNC_ENTRY(vkGetBufferMemoryRequirements,                                               getBufferMemoryRequirements),
-       VK_NULL_FUNC_ENTRY(vkGetImageMemoryRequirements,                                                getImageMemoryRequirements),
-       VK_NULL_FUNC_ENTRY(vkGetImageSparseMemoryRequirements,                                  getImageSparseMemoryRequirements),
-       VK_NULL_FUNC_ENTRY(vkQueueBindSparse,                                                                   queueBindSparse),
-       VK_NULL_FUNC_ENTRY(vkCreateFence,                                                                               createFence),
-       VK_NULL_FUNC_ENTRY(vkDestroyFence,                                                                              destroyFence),
-       VK_NULL_FUNC_ENTRY(vkResetFences,                                                                               resetFences),
-       VK_NULL_FUNC_ENTRY(vkGetFenceStatus,                                                                    getFenceStatus),
-       VK_NULL_FUNC_ENTRY(vkWaitForFences,                                                                             waitForFences),
-       VK_NULL_FUNC_ENTRY(vkCreateSemaphore,                                                                   createSemaphore),
-       VK_NULL_FUNC_ENTRY(vkDestroySemaphore,                                                                  destroySemaphore),
-       VK_NULL_FUNC_ENTRY(vkCreateEvent,                                                                               createEvent),
-       VK_NULL_FUNC_ENTRY(vkDestroyEvent,                                                                              destroyEvent),
-       VK_NULL_FUNC_ENTRY(vkGetEventStatus,                                                                    getEventStatus),
-       VK_NULL_FUNC_ENTRY(vkSetEvent,                                                                                  setEvent),
-       VK_NULL_FUNC_ENTRY(vkResetEvent,                                                                                resetEvent),
-       VK_NULL_FUNC_ENTRY(vkCreateQueryPool,                                                                   createQueryPool),
-       VK_NULL_FUNC_ENTRY(vkDestroyQueryPool,                                                                  destroyQueryPool),
-       VK_NULL_FUNC_ENTRY(vkGetQueryPoolResults,                                                               getQueryPoolResults),
-       VK_NULL_FUNC_ENTRY(vkCreateBuffer,                                                                              createBuffer),
-       VK_NULL_FUNC_ENTRY(vkDestroyBuffer,                                                                             destroyBuffer),
-       VK_NULL_FUNC_ENTRY(vkCreateBufferView,                                                                  createBufferView),
-       VK_NULL_FUNC_ENTRY(vkDestroyBufferView,                                                                 destroyBufferView),
-       VK_NULL_FUNC_ENTRY(vkCreateImage,                                                                               createImage),
-       VK_NULL_FUNC_ENTRY(vkDestroyImage,                                                                              destroyImage),
-       VK_NULL_FUNC_ENTRY(vkGetImageSubresourceLayout,                                                 getImageSubresourceLayout),
-       VK_NULL_FUNC_ENTRY(vkCreateImageView,                                                                   createImageView),
-       VK_NULL_FUNC_ENTRY(vkDestroyImageView,                                                                  destroyImageView),
-       VK_NULL_FUNC_ENTRY(vkCreateShaderModule,                                                                createShaderModule),
-       VK_NULL_FUNC_ENTRY(vkDestroyShaderModule,                                                               destroyShaderModule),
-       VK_NULL_FUNC_ENTRY(vkCreatePipelineCache,                                                               createPipelineCache),
-       VK_NULL_FUNC_ENTRY(vkDestroyPipelineCache,                                                              destroyPipelineCache),
-       VK_NULL_FUNC_ENTRY(vkGetPipelineCacheData,                                                              getPipelineCacheData),
-       VK_NULL_FUNC_ENTRY(vkMergePipelineCaches,                                                               mergePipelineCaches),
-       VK_NULL_FUNC_ENTRY(vkCreateGraphicsPipelines,                                                   createGraphicsPipelines),
-       VK_NULL_FUNC_ENTRY(vkCreateComputePipelines,                                                    createComputePipelines),
-       VK_NULL_FUNC_ENTRY(vkDestroyPipeline,                                                                   destroyPipeline),
-       VK_NULL_FUNC_ENTRY(vkCreatePipelineLayout,                                                              createPipelineLayout),
-       VK_NULL_FUNC_ENTRY(vkDestroyPipelineLayout,                                                             destroyPipelineLayout),
-       VK_NULL_FUNC_ENTRY(vkCreateSampler,                                                                             createSampler),
-       VK_NULL_FUNC_ENTRY(vkDestroySampler,                                                                    destroySampler),
-       VK_NULL_FUNC_ENTRY(vkCreateDescriptorSetLayout,                                                 createDescriptorSetLayout),
-       VK_NULL_FUNC_ENTRY(vkDestroyDescriptorSetLayout,                                                destroyDescriptorSetLayout),
-       VK_NULL_FUNC_ENTRY(vkCreateDescriptorPool,                                                              createDescriptorPool),
-       VK_NULL_FUNC_ENTRY(vkDestroyDescriptorPool,                                                             destroyDescriptorPool),
-       VK_NULL_FUNC_ENTRY(vkResetDescriptorPool,                                                               resetDescriptorPool),
-       VK_NULL_FUNC_ENTRY(vkAllocateDescriptorSets,                                                    allocateDescriptorSets),
-       VK_NULL_FUNC_ENTRY(vkFreeDescriptorSets,                                                                freeDescriptorSets),
-       VK_NULL_FUNC_ENTRY(vkUpdateDescriptorSets,                                                              updateDescriptorSets),
-       VK_NULL_FUNC_ENTRY(vkCreateFramebuffer,                                                                 createFramebuffer),
-       VK_NULL_FUNC_ENTRY(vkDestroyFramebuffer,                                                                destroyFramebuffer),
-       VK_NULL_FUNC_ENTRY(vkCreateRenderPass,                                                                  createRenderPass),
-       VK_NULL_FUNC_ENTRY(vkDestroyRenderPass,                                                                 destroyRenderPass),
-       VK_NULL_FUNC_ENTRY(vkGetRenderAreaGranularity,                                                  getRenderAreaGranularity),
-       VK_NULL_FUNC_ENTRY(vkCreateCommandPool,                                                                 createCommandPool),
-       VK_NULL_FUNC_ENTRY(vkDestroyCommandPool,                                                                destroyCommandPool),
-       VK_NULL_FUNC_ENTRY(vkResetCommandPool,                                                                  resetCommandPool),
-       VK_NULL_FUNC_ENTRY(vkAllocateCommandBuffers,                                                    allocateCommandBuffers),
-       VK_NULL_FUNC_ENTRY(vkFreeCommandBuffers,                                                                freeCommandBuffers),
-       VK_NULL_FUNC_ENTRY(vkBeginCommandBuffer,                                                                beginCommandBuffer),
-       VK_NULL_FUNC_ENTRY(vkEndCommandBuffer,                                                                  endCommandBuffer),
-       VK_NULL_FUNC_ENTRY(vkResetCommandBuffer,                                                                resetCommandBuffer),
-       VK_NULL_FUNC_ENTRY(vkCmdBindPipeline,                                                                   cmdBindPipeline),
-       VK_NULL_FUNC_ENTRY(vkCmdSetViewport,                                                                    cmdSetViewport),
-       VK_NULL_FUNC_ENTRY(vkCmdSetScissor,                                                                             cmdSetScissor),
-       VK_NULL_FUNC_ENTRY(vkCmdSetLineWidth,                                                                   cmdSetLineWidth),
-       VK_NULL_FUNC_ENTRY(vkCmdSetDepthBias,                                                                   cmdSetDepthBias),
-       VK_NULL_FUNC_ENTRY(vkCmdSetBlendConstants,                                                              cmdSetBlendConstants),
-       VK_NULL_FUNC_ENTRY(vkCmdSetDepthBounds,                                                                 cmdSetDepthBounds),
-       VK_NULL_FUNC_ENTRY(vkCmdSetStencilCompareMask,                                                  cmdSetStencilCompareMask),
-       VK_NULL_FUNC_ENTRY(vkCmdSetStencilWriteMask,                                                    cmdSetStencilWriteMask),
-       VK_NULL_FUNC_ENTRY(vkCmdSetStencilReference,                                                    cmdSetStencilReference),
-       VK_NULL_FUNC_ENTRY(vkCmdBindDescriptorSets,                                                             cmdBindDescriptorSets),
-       VK_NULL_FUNC_ENTRY(vkCmdBindIndexBuffer,                                                                cmdBindIndexBuffer),
-       VK_NULL_FUNC_ENTRY(vkCmdBindVertexBuffers,                                                              cmdBindVertexBuffers),
-       VK_NULL_FUNC_ENTRY(vkCmdDraw,                                                                                   cmdDraw),
-       VK_NULL_FUNC_ENTRY(vkCmdDrawIndexed,                                                                    cmdDrawIndexed),
-       VK_NULL_FUNC_ENTRY(vkCmdDrawIndirect,                                                                   cmdDrawIndirect),
-       VK_NULL_FUNC_ENTRY(vkCmdDrawIndexedIndirect,                                                    cmdDrawIndexedIndirect),
-       VK_NULL_FUNC_ENTRY(vkCmdDispatch,                                                                               cmdDispatch),
-       VK_NULL_FUNC_ENTRY(vkCmdDispatchIndirect,                                                               cmdDispatchIndirect),
-       VK_NULL_FUNC_ENTRY(vkCmdCopyBuffer,                                                                             cmdCopyBuffer),
-       VK_NULL_FUNC_ENTRY(vkCmdCopyImage,                                                                              cmdCopyImage),
-       VK_NULL_FUNC_ENTRY(vkCmdBlitImage,                                                                              cmdBlitImage),
-       VK_NULL_FUNC_ENTRY(vkCmdCopyBufferToImage,                                                              cmdCopyBufferToImage),
-       VK_NULL_FUNC_ENTRY(vkCmdCopyImageToBuffer,                                                              cmdCopyImageToBuffer),
-       VK_NULL_FUNC_ENTRY(vkCmdUpdateBuffer,                                                                   cmdUpdateBuffer),
-       VK_NULL_FUNC_ENTRY(vkCmdFillBuffer,                                                                             cmdFillBuffer),
-       VK_NULL_FUNC_ENTRY(vkCmdClearColorImage,                                                                cmdClearColorImage),
-       VK_NULL_FUNC_ENTRY(vkCmdClearDepthStencilImage,                                                 cmdClearDepthStencilImage),
-       VK_NULL_FUNC_ENTRY(vkCmdClearAttachments,                                                               cmdClearAttachments),
-       VK_NULL_FUNC_ENTRY(vkCmdResolveImage,                                                                   cmdResolveImage),
-       VK_NULL_FUNC_ENTRY(vkCmdSetEvent,                                                                               cmdSetEvent),
-       VK_NULL_FUNC_ENTRY(vkCmdResetEvent,                                                                             cmdResetEvent),
-       VK_NULL_FUNC_ENTRY(vkCmdWaitEvents,                                                                             cmdWaitEvents),
-       VK_NULL_FUNC_ENTRY(vkCmdPipelineBarrier,                                                                cmdPipelineBarrier),
-       VK_NULL_FUNC_ENTRY(vkCmdBeginQuery,                                                                             cmdBeginQuery),
-       VK_NULL_FUNC_ENTRY(vkCmdEndQuery,                                                                               cmdEndQuery),
-       VK_NULL_FUNC_ENTRY(vkCmdResetQueryPool,                                                                 cmdResetQueryPool),
-       VK_NULL_FUNC_ENTRY(vkCmdWriteTimestamp,                                                                 cmdWriteTimestamp),
-       VK_NULL_FUNC_ENTRY(vkCmdCopyQueryPoolResults,                                                   cmdCopyQueryPoolResults),
-       VK_NULL_FUNC_ENTRY(vkCmdPushConstants,                                                                  cmdPushConstants),
-       VK_NULL_FUNC_ENTRY(vkCmdBeginRenderPass,                                                                cmdBeginRenderPass),
-       VK_NULL_FUNC_ENTRY(vkCmdNextSubpass,                                                                    cmdNextSubpass),
-       VK_NULL_FUNC_ENTRY(vkCmdEndRenderPass,                                                                  cmdEndRenderPass),
-       VK_NULL_FUNC_ENTRY(vkCmdExecuteCommands,                                                                cmdExecuteCommands),
-       VK_NULL_FUNC_ENTRY(vkCreateSwapchainKHR,                                                                createSwapchainKHR),
-       VK_NULL_FUNC_ENTRY(vkDestroySwapchainKHR,                                                               destroySwapchainKHR),
-       VK_NULL_FUNC_ENTRY(vkGetSwapchainImagesKHR,                                                             getSwapchainImagesKHR),
-       VK_NULL_FUNC_ENTRY(vkAcquireNextImageKHR,                                                               acquireNextImageKHR),
-       VK_NULL_FUNC_ENTRY(vkQueuePresentKHR,                                                                   queuePresentKHR),
-       VK_NULL_FUNC_ENTRY(vkCreateSharedSwapchainsKHR,                                                 createSharedSwapchainsKHR),
-       VK_NULL_FUNC_ENTRY(vkTrimCommandPoolKHR,                                                                trimCommandPoolKHR),
-       VK_NULL_FUNC_ENTRY(vkGetSwapchainStatusKHR,                                                             getSwapchainStatusKHR),
-       VK_NULL_FUNC_ENTRY(vkDebugMarkerSetObjectTagEXT,                                                debugMarkerSetObjectTagEXT),
-       VK_NULL_FUNC_ENTRY(vkDebugMarkerSetObjectNameEXT,                                               debugMarkerSetObjectNameEXT),
-       VK_NULL_FUNC_ENTRY(vkCmdDebugMarkerBeginEXT,                                                    cmdDebugMarkerBeginEXT),
-       VK_NULL_FUNC_ENTRY(vkCmdDebugMarkerEndEXT,                                                              cmdDebugMarkerEndEXT),
-       VK_NULL_FUNC_ENTRY(vkCmdDebugMarkerInsertEXT,                                                   cmdDebugMarkerInsertEXT),
-       VK_NULL_FUNC_ENTRY(vkCmdDrawIndirectCountAMD,                                                   cmdDrawIndirectCountAMD),
-       VK_NULL_FUNC_ENTRY(vkCmdDrawIndexedIndirectCountAMD,                                    cmdDrawIndexedIndirectCountAMD),
-       VK_NULL_FUNC_ENTRY(vkGetMemoryWin32HandleNV,                                                    getMemoryWin32HandleNV),
-       VK_NULL_FUNC_ENTRY(vkCmdProcessCommandsNVX,                                                             cmdProcessCommandsNVX),
-       VK_NULL_FUNC_ENTRY(vkCmdReserveSpaceForCommandsNVX,                                             cmdReserveSpaceForCommandsNVX),
-       VK_NULL_FUNC_ENTRY(vkCreateIndirectCommandsLayoutNVX,                                   createIndirectCommandsLayoutNVX),
-       VK_NULL_FUNC_ENTRY(vkDestroyIndirectCommandsLayoutNVX,                                  destroyIndirectCommandsLayoutNVX),
-       VK_NULL_FUNC_ENTRY(vkCreateObjectTableNVX,                                                              createObjectTableNVX),
-       VK_NULL_FUNC_ENTRY(vkDestroyObjectTableNVX,                                                             destroyObjectTableNVX),
-       VK_NULL_FUNC_ENTRY(vkRegisterObjectsNVX,                                                                registerObjectsNVX),
-       VK_NULL_FUNC_ENTRY(vkUnregisterObjectsNVX,                                                              unregisterObjectsNVX),
-       VK_NULL_FUNC_ENTRY(vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX,   getPhysicalDeviceGeneratedCommandsPropertiesNVX),
-       VK_NULL_FUNC_ENTRY(vkCmdPushDescriptorSetKHR,                                                   cmdPushDescriptorSetKHR),
-       VK_NULL_FUNC_ENTRY(vkCreateDescriptorUpdateTemplateKHR,                                 createDescriptorUpdateTemplateKHR),
-       VK_NULL_FUNC_ENTRY(vkDestroyDescriptorUpdateTemplateKHR,                                destroyDescriptorUpdateTemplateKHR),
-       VK_NULL_FUNC_ENTRY(vkUpdateDescriptorSetWithTemplateKHR,                                updateDescriptorSetWithTemplateKHR),
-       VK_NULL_FUNC_ENTRY(vkCmdPushDescriptorSetWithTemplateKHR,                               cmdPushDescriptorSetWithTemplateKHR),
-       VK_NULL_FUNC_ENTRY(vkGetRefreshCycleDurationGOOGLE,                                             getRefreshCycleDurationGOOGLE),
-       VK_NULL_FUNC_ENTRY(vkGetPastPresentationTimingGOOGLE,                                   getPastPresentationTimingGOOGLE),
+       VK_NULL_FUNC_ENTRY(vkDestroyDevice,                                                     destroyDevice),
+       VK_NULL_FUNC_ENTRY(vkGetDeviceQueue,                                            getDeviceQueue),
+       VK_NULL_FUNC_ENTRY(vkQueueSubmit,                                                       queueSubmit),
+       VK_NULL_FUNC_ENTRY(vkQueueWaitIdle,                                                     queueWaitIdle),
+       VK_NULL_FUNC_ENTRY(vkDeviceWaitIdle,                                            deviceWaitIdle),
+       VK_NULL_FUNC_ENTRY(vkAllocateMemory,                                            allocateMemory),
+       VK_NULL_FUNC_ENTRY(vkFreeMemory,                                                        freeMemory),
+       VK_NULL_FUNC_ENTRY(vkMapMemory,                                                         mapMemory),
+       VK_NULL_FUNC_ENTRY(vkUnmapMemory,                                                       unmapMemory),
+       VK_NULL_FUNC_ENTRY(vkFlushMappedMemoryRanges,                           flushMappedMemoryRanges),
+       VK_NULL_FUNC_ENTRY(vkInvalidateMappedMemoryRanges,                      invalidateMappedMemoryRanges),
+       VK_NULL_FUNC_ENTRY(vkGetDeviceMemoryCommitment,                         getDeviceMemoryCommitment),
+       VK_NULL_FUNC_ENTRY(vkBindBufferMemory,                                          bindBufferMemory),
+       VK_NULL_FUNC_ENTRY(vkBindImageMemory,                                           bindImageMemory),
+       VK_NULL_FUNC_ENTRY(vkGetBufferMemoryRequirements,                       getBufferMemoryRequirements),
+       VK_NULL_FUNC_ENTRY(vkGetImageMemoryRequirements,                        getImageMemoryRequirements),
+       VK_NULL_FUNC_ENTRY(vkGetImageSparseMemoryRequirements,          getImageSparseMemoryRequirements),
+       VK_NULL_FUNC_ENTRY(vkQueueBindSparse,                                           queueBindSparse),
+       VK_NULL_FUNC_ENTRY(vkCreateFence,                                                       createFence),
+       VK_NULL_FUNC_ENTRY(vkDestroyFence,                                                      destroyFence),
+       VK_NULL_FUNC_ENTRY(vkResetFences,                                                       resetFences),
+       VK_NULL_FUNC_ENTRY(vkGetFenceStatus,                                            getFenceStatus),
+       VK_NULL_FUNC_ENTRY(vkWaitForFences,                                                     waitForFences),
+       VK_NULL_FUNC_ENTRY(vkCreateSemaphore,                                           createSemaphore),
+       VK_NULL_FUNC_ENTRY(vkDestroySemaphore,                                          destroySemaphore),
+       VK_NULL_FUNC_ENTRY(vkCreateEvent,                                                       createEvent),
+       VK_NULL_FUNC_ENTRY(vkDestroyEvent,                                                      destroyEvent),
+       VK_NULL_FUNC_ENTRY(vkGetEventStatus,                                            getEventStatus),
+       VK_NULL_FUNC_ENTRY(vkSetEvent,                                                          setEvent),
+       VK_NULL_FUNC_ENTRY(vkResetEvent,                                                        resetEvent),
+       VK_NULL_FUNC_ENTRY(vkCreateQueryPool,                                           createQueryPool),
+       VK_NULL_FUNC_ENTRY(vkDestroyQueryPool,                                          destroyQueryPool),
+       VK_NULL_FUNC_ENTRY(vkGetQueryPoolResults,                                       getQueryPoolResults),
+       VK_NULL_FUNC_ENTRY(vkCreateBuffer,                                                      createBuffer),
+       VK_NULL_FUNC_ENTRY(vkDestroyBuffer,                                                     destroyBuffer),
+       VK_NULL_FUNC_ENTRY(vkCreateBufferView,                                          createBufferView),
+       VK_NULL_FUNC_ENTRY(vkDestroyBufferView,                                         destroyBufferView),
+       VK_NULL_FUNC_ENTRY(vkCreateImage,                                                       createImage),
+       VK_NULL_FUNC_ENTRY(vkDestroyImage,                                                      destroyImage),
+       VK_NULL_FUNC_ENTRY(vkGetImageSubresourceLayout,                         getImageSubresourceLayout),
+       VK_NULL_FUNC_ENTRY(vkCreateImageView,                                           createImageView),
+       VK_NULL_FUNC_ENTRY(vkDestroyImageView,                                          destroyImageView),
+       VK_NULL_FUNC_ENTRY(vkCreateShaderModule,                                        createShaderModule),
+       VK_NULL_FUNC_ENTRY(vkDestroyShaderModule,                                       destroyShaderModule),
+       VK_NULL_FUNC_ENTRY(vkCreatePipelineCache,                                       createPipelineCache),
+       VK_NULL_FUNC_ENTRY(vkDestroyPipelineCache,                                      destroyPipelineCache),
+       VK_NULL_FUNC_ENTRY(vkGetPipelineCacheData,                                      getPipelineCacheData),
+       VK_NULL_FUNC_ENTRY(vkMergePipelineCaches,                                       mergePipelineCaches),
+       VK_NULL_FUNC_ENTRY(vkCreateGraphicsPipelines,                           createGraphicsPipelines),
+       VK_NULL_FUNC_ENTRY(vkCreateComputePipelines,                            createComputePipelines),
+       VK_NULL_FUNC_ENTRY(vkDestroyPipeline,                                           destroyPipeline),
+       VK_NULL_FUNC_ENTRY(vkCreatePipelineLayout,                                      createPipelineLayout),
+       VK_NULL_FUNC_ENTRY(vkDestroyPipelineLayout,                                     destroyPipelineLayout),
+       VK_NULL_FUNC_ENTRY(vkCreateSampler,                                                     createSampler),
+       VK_NULL_FUNC_ENTRY(vkDestroySampler,                                            destroySampler),
+       VK_NULL_FUNC_ENTRY(vkCreateDescriptorSetLayout,                         createDescriptorSetLayout),
+       VK_NULL_FUNC_ENTRY(vkDestroyDescriptorSetLayout,                        destroyDescriptorSetLayout),
+       VK_NULL_FUNC_ENTRY(vkCreateDescriptorPool,                                      createDescriptorPool),
+       VK_NULL_FUNC_ENTRY(vkDestroyDescriptorPool,                                     destroyDescriptorPool),
+       VK_NULL_FUNC_ENTRY(vkResetDescriptorPool,                                       resetDescriptorPool),
+       VK_NULL_FUNC_ENTRY(vkAllocateDescriptorSets,                            allocateDescriptorSets),
+       VK_NULL_FUNC_ENTRY(vkFreeDescriptorSets,                                        freeDescriptorSets),
+       VK_NULL_FUNC_ENTRY(vkUpdateDescriptorSets,                                      updateDescriptorSets),
+       VK_NULL_FUNC_ENTRY(vkCreateFramebuffer,                                         createFramebuffer),
+       VK_NULL_FUNC_ENTRY(vkDestroyFramebuffer,                                        destroyFramebuffer),
+       VK_NULL_FUNC_ENTRY(vkCreateRenderPass,                                          createRenderPass),
+       VK_NULL_FUNC_ENTRY(vkDestroyRenderPass,                                         destroyRenderPass),
+       VK_NULL_FUNC_ENTRY(vkGetRenderAreaGranularity,                          getRenderAreaGranularity),
+       VK_NULL_FUNC_ENTRY(vkCreateCommandPool,                                         createCommandPool),
+       VK_NULL_FUNC_ENTRY(vkDestroyCommandPool,                                        destroyCommandPool),
+       VK_NULL_FUNC_ENTRY(vkResetCommandPool,                                          resetCommandPool),
+       VK_NULL_FUNC_ENTRY(vkAllocateCommandBuffers,                            allocateCommandBuffers),
+       VK_NULL_FUNC_ENTRY(vkFreeCommandBuffers,                                        freeCommandBuffers),
+       VK_NULL_FUNC_ENTRY(vkBeginCommandBuffer,                                        beginCommandBuffer),
+       VK_NULL_FUNC_ENTRY(vkEndCommandBuffer,                                          endCommandBuffer),
+       VK_NULL_FUNC_ENTRY(vkResetCommandBuffer,                                        resetCommandBuffer),
+       VK_NULL_FUNC_ENTRY(vkCmdBindPipeline,                                           cmdBindPipeline),
+       VK_NULL_FUNC_ENTRY(vkCmdSetViewport,                                            cmdSetViewport),
+       VK_NULL_FUNC_ENTRY(vkCmdSetScissor,                                                     cmdSetScissor),
+       VK_NULL_FUNC_ENTRY(vkCmdSetLineWidth,                                           cmdSetLineWidth),
+       VK_NULL_FUNC_ENTRY(vkCmdSetDepthBias,                                           cmdSetDepthBias),
+       VK_NULL_FUNC_ENTRY(vkCmdSetBlendConstants,                                      cmdSetBlendConstants),
+       VK_NULL_FUNC_ENTRY(vkCmdSetDepthBounds,                                         cmdSetDepthBounds),
+       VK_NULL_FUNC_ENTRY(vkCmdSetStencilCompareMask,                          cmdSetStencilCompareMask),
+       VK_NULL_FUNC_ENTRY(vkCmdSetStencilWriteMask,                            cmdSetStencilWriteMask),
+       VK_NULL_FUNC_ENTRY(vkCmdSetStencilReference,                            cmdSetStencilReference),
+       VK_NULL_FUNC_ENTRY(vkCmdBindDescriptorSets,                                     cmdBindDescriptorSets),
+       VK_NULL_FUNC_ENTRY(vkCmdBindIndexBuffer,                                        cmdBindIndexBuffer),
+       VK_NULL_FUNC_ENTRY(vkCmdBindVertexBuffers,                                      cmdBindVertexBuffers),
+       VK_NULL_FUNC_ENTRY(vkCmdDraw,                                                           cmdDraw),
+       VK_NULL_FUNC_ENTRY(vkCmdDrawIndexed,                                            cmdDrawIndexed),
+       VK_NULL_FUNC_ENTRY(vkCmdDrawIndirect,                                           cmdDrawIndirect),
+       VK_NULL_FUNC_ENTRY(vkCmdDrawIndexedIndirect,                            cmdDrawIndexedIndirect),
+       VK_NULL_FUNC_ENTRY(vkCmdDispatch,                                                       cmdDispatch),
+       VK_NULL_FUNC_ENTRY(vkCmdDispatchIndirect,                                       cmdDispatchIndirect),
+       VK_NULL_FUNC_ENTRY(vkCmdCopyBuffer,                                                     cmdCopyBuffer),
+       VK_NULL_FUNC_ENTRY(vkCmdCopyImage,                                                      cmdCopyImage),
+       VK_NULL_FUNC_ENTRY(vkCmdBlitImage,                                                      cmdBlitImage),
+       VK_NULL_FUNC_ENTRY(vkCmdCopyBufferToImage,                                      cmdCopyBufferToImage),
+       VK_NULL_FUNC_ENTRY(vkCmdCopyImageToBuffer,                                      cmdCopyImageToBuffer),
+       VK_NULL_FUNC_ENTRY(vkCmdUpdateBuffer,                                           cmdUpdateBuffer),
+       VK_NULL_FUNC_ENTRY(vkCmdFillBuffer,                                                     cmdFillBuffer),
+       VK_NULL_FUNC_ENTRY(vkCmdClearColorImage,                                        cmdClearColorImage),
+       VK_NULL_FUNC_ENTRY(vkCmdClearDepthStencilImage,                         cmdClearDepthStencilImage),
+       VK_NULL_FUNC_ENTRY(vkCmdClearAttachments,                                       cmdClearAttachments),
+       VK_NULL_FUNC_ENTRY(vkCmdResolveImage,                                           cmdResolveImage),
+       VK_NULL_FUNC_ENTRY(vkCmdSetEvent,                                                       cmdSetEvent),
+       VK_NULL_FUNC_ENTRY(vkCmdResetEvent,                                                     cmdResetEvent),
+       VK_NULL_FUNC_ENTRY(vkCmdWaitEvents,                                                     cmdWaitEvents),
+       VK_NULL_FUNC_ENTRY(vkCmdPipelineBarrier,                                        cmdPipelineBarrier),
+       VK_NULL_FUNC_ENTRY(vkCmdBeginQuery,                                                     cmdBeginQuery),
+       VK_NULL_FUNC_ENTRY(vkCmdEndQuery,                                                       cmdEndQuery),
+       VK_NULL_FUNC_ENTRY(vkCmdResetQueryPool,                                         cmdResetQueryPool),
+       VK_NULL_FUNC_ENTRY(vkCmdWriteTimestamp,                                         cmdWriteTimestamp),
+       VK_NULL_FUNC_ENTRY(vkCmdCopyQueryPoolResults,                           cmdCopyQueryPoolResults),
+       VK_NULL_FUNC_ENTRY(vkCmdPushConstants,                                          cmdPushConstants),
+       VK_NULL_FUNC_ENTRY(vkCmdBeginRenderPass,                                        cmdBeginRenderPass),
+       VK_NULL_FUNC_ENTRY(vkCmdNextSubpass,                                            cmdNextSubpass),
+       VK_NULL_FUNC_ENTRY(vkCmdEndRenderPass,                                          cmdEndRenderPass),
+       VK_NULL_FUNC_ENTRY(vkCmdExecuteCommands,                                        cmdExecuteCommands),
+       VK_NULL_FUNC_ENTRY(vkCreateSwapchainKHR,                                        createSwapchainKHR),
+       VK_NULL_FUNC_ENTRY(vkDestroySwapchainKHR,                                       destroySwapchainKHR),
+       VK_NULL_FUNC_ENTRY(vkGetSwapchainImagesKHR,                                     getSwapchainImagesKHR),
+       VK_NULL_FUNC_ENTRY(vkAcquireNextImageKHR,                                       acquireNextImageKHR),
+       VK_NULL_FUNC_ENTRY(vkQueuePresentKHR,                                           queuePresentKHR),
+       VK_NULL_FUNC_ENTRY(vkCreateSharedSwapchainsKHR,                         createSharedSwapchainsKHR),
+       VK_NULL_FUNC_ENTRY(vkTrimCommandPoolKHR,                                        trimCommandPoolKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdPushDescriptorSetKHR,                           cmdPushDescriptorSetKHR),
+       VK_NULL_FUNC_ENTRY(vkCreateDescriptorUpdateTemplateKHR,         createDescriptorUpdateTemplateKHR),
+       VK_NULL_FUNC_ENTRY(vkDestroyDescriptorUpdateTemplateKHR,        destroyDescriptorUpdateTemplateKHR),
+       VK_NULL_FUNC_ENTRY(vkUpdateDescriptorSetWithTemplateKHR,        updateDescriptorSetWithTemplateKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdPushDescriptorSetWithTemplateKHR,       cmdPushDescriptorSetWithTemplateKHR),
+       VK_NULL_FUNC_ENTRY(vkGetSwapchainStatusKHR,                                     getSwapchainStatusKHR),
+       VK_NULL_FUNC_ENTRY(vkGetRefreshCycleDurationGOOGLE,                     getRefreshCycleDurationGOOGLE),
+       VK_NULL_FUNC_ENTRY(vkGetPastPresentationTimingGOOGLE,           getPastPresentationTimingGOOGLE),
 };
 
index e0cf6d7..c483092 100644 (file)
@@ -30,7 +30,5 @@ Move<VkSurfaceKHR>                                    createWaylandSurfaceKHR                         (const InstanceInterface& vk,
 Move<VkSurfaceKHR>                                     createMirSurfaceKHR                                     (const InstanceInterface& vk, VkInstance instance, const VkMirSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkSurfaceKHR>                                     createAndroidSurfaceKHR                         (const InstanceInterface& vk, VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkSurfaceKHR>                                     createWin32SurfaceKHR                           (const InstanceInterface& vk, VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
-Move<VkDebugReportCallbackEXT>         createDebugReportCallbackEXT            (const InstanceInterface& vk, VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
-Move<VkIndirectCommandsLayoutNVX>      createIndirectCommandsLayoutNVX         (const DeviceInterface& vk, VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
-Move<VkObjectTableNVX>                         createObjectTableNVX                            (const DeviceInterface& vk, VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkDescriptorUpdateTemplateKHR>    createDescriptorUpdateTemplateKHR       (const DeviceInterface& vk, VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
+Move<VkDebugReportCallbackEXT>         createDebugReportCallbackEXT            (const InstanceInterface& vk, VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
index 93ab404..7211382 100644 (file)
@@ -125,18 +125,6 @@ void Deleter<VkSwapchainKHR>::operator() (VkSwapchainKHR obj) const
 }
 
 template<>
-void Deleter<VkIndirectCommandsLayoutNVX>::operator() (VkIndirectCommandsLayoutNVX obj) const
-{
-       m_deviceIface->destroyIndirectCommandsLayoutNVX(m_device, obj, m_allocator);
-}
-
-template<>
-void Deleter<VkObjectTableNVX>::operator() (VkObjectTableNVX obj) const
-{
-       m_deviceIface->destroyObjectTableNVX(m_device, obj, m_allocator);
-}
-
-template<>
 void Deleter<VkDescriptorUpdateTemplateKHR>::operator() (VkDescriptorUpdateTemplateKHR obj) const
 {
        m_deviceIface->destroyDescriptorUpdateTemplateKHR(m_device, obj, m_allocator);
@@ -347,27 +335,6 @@ Move<VkSurfaceKHR> createWin32SurfaceKHR (const InstanceInterface& vk, VkInstanc
        return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
 }
 
-Move<VkDebugReportCallbackEXT> createDebugReportCallbackEXT (const InstanceInterface& vk, VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
-{
-       VkDebugReportCallbackEXT object = 0;
-       VK_CHECK(vk.createDebugReportCallbackEXT(instance, pCreateInfo, pAllocator, &object));
-       return Move<VkDebugReportCallbackEXT>(check<VkDebugReportCallbackEXT>(object), Deleter<VkDebugReportCallbackEXT>(vk, instance, pAllocator));
-}
-
-Move<VkIndirectCommandsLayoutNVX> createIndirectCommandsLayoutNVX (const DeviceInterface& vk, VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator)
-{
-       VkIndirectCommandsLayoutNVX object = 0;
-       VK_CHECK(vk.createIndirectCommandsLayoutNVX(device, pCreateInfo, pAllocator, &object));
-       return Move<VkIndirectCommandsLayoutNVX>(check<VkIndirectCommandsLayoutNVX>(object), Deleter<VkIndirectCommandsLayoutNVX>(vk, device, pAllocator));
-}
-
-Move<VkObjectTableNVX> createObjectTableNVX (const DeviceInterface& vk, VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator)
-{
-       VkObjectTableNVX object = 0;
-       VK_CHECK(vk.createObjectTableNVX(device, pCreateInfo, pAllocator, &object));
-       return Move<VkObjectTableNVX>(check<VkObjectTableNVX>(object), Deleter<VkObjectTableNVX>(vk, device, pAllocator));
-}
-
 Move<VkDescriptorUpdateTemplateKHR> createDescriptorUpdateTemplateKHR (const DeviceInterface& vk, VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
 {
        VkDescriptorUpdateTemplateKHR object = 0;
@@ -375,3 +342,10 @@ Move<VkDescriptorUpdateTemplateKHR> createDescriptorUpdateTemplateKHR (const Dev
        return Move<VkDescriptorUpdateTemplateKHR>(check<VkDescriptorUpdateTemplateKHR>(object), Deleter<VkDescriptorUpdateTemplateKHR>(vk, device, pAllocator));
 }
 
+Move<VkDebugReportCallbackEXT> createDebugReportCallbackEXT (const InstanceInterface& vk, VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
+{
+       VkDebugReportCallbackEXT object = 0;
+       VK_CHECK(vk.createDebugReportCallbackEXT(instance, pCreateInfo, pAllocator, &object));
+       return Move<VkDebugReportCallbackEXT>(check<VkDebugReportCallbackEXT>(object), Deleter<VkDebugReportCallbackEXT>(vk, instance, pAllocator));
+}
+
index ff6545a..cb8ccda 100644 (file)
@@ -36,15 +36,12 @@ const char* getPipelineBindPointName                                (VkPipelineBindPoint value);
 const char*    getCommandBufferLevelName                               (VkCommandBufferLevel value);
 const char*    getIndexTypeName                                                (VkIndexType value);
 const char*    getSubpassContentsName                                  (VkSubpassContents value);
+const char*    getObjectTypeName                                               (VkObjectType value);
 const char*    getColorSpaceKHRName                                    (VkColorSpaceKHR value);
 const char*    getPresentModeKHRName                                   (VkPresentModeKHR value);
+const char*    getDescriptorUpdateTemplateTypeKHRName  (VkDescriptorUpdateTemplateTypeKHR value);
 const char*    getDebugReportObjectTypeEXTName                 (VkDebugReportObjectTypeEXT value);
 const char*    getDebugReportErrorEXTName                              (VkDebugReportErrorEXT value);
-const char*    getRasterizationOrderAMDName                    (VkRasterizationOrderAMD value);
-const char*    getValidationCheckEXTName                               (VkValidationCheckEXT value);
-const char*    getIndirectCommandsTokenTypeNVXName             (VkIndirectCommandsTokenTypeNVX value);
-const char*    getObjectEntryTypeNVXName                               (VkObjectEntryTypeNVX value);
-const char*    getDescriptorUpdateTemplateTypeKHRName  (VkDescriptorUpdateTemplateTypeKHR value);
 
 inline tcu::Format::Enum<VkPipelineCacheHeaderVersion>         getPipelineCacheHeaderVersionStr                (VkPipelineCacheHeaderVersion value)            { return tcu::Format::Enum<VkPipelineCacheHeaderVersion>(getPipelineCacheHeaderVersionName, value);                             }
 inline tcu::Format::Enum<VkResult>                                                     getResultStr                                                    (VkResult value)                                                        { return tcu::Format::Enum<VkResult>(getResultName, value);                                                                                                             }
@@ -81,15 +78,12 @@ inline tcu::Format::Enum<VkPipelineBindPoint>                               getPipelineBindPointStr                                 (Vk
 inline tcu::Format::Enum<VkCommandBufferLevel>                         getCommandBufferLevelStr                                (VkCommandBufferLevel value)                            { return tcu::Format::Enum<VkCommandBufferLevel>(getCommandBufferLevelName, value);                                                             }
 inline tcu::Format::Enum<VkIndexType>                                          getIndexTypeStr                                                 (VkIndexType value)                                                     { return tcu::Format::Enum<VkIndexType>(getIndexTypeName, value);                                                                                               }
 inline tcu::Format::Enum<VkSubpassContents>                                    getSubpassContentsStr                                   (VkSubpassContents value)                                       { return tcu::Format::Enum<VkSubpassContents>(getSubpassContentsName, value);                                                                   }
+inline tcu::Format::Enum<VkObjectType>                                         getObjectTypeStr                                                (VkObjectType value)                                            { return tcu::Format::Enum<VkObjectType>(getObjectTypeName, value);                                                                                             }
 inline tcu::Format::Enum<VkColorSpaceKHR>                                      getColorSpaceKHRStr                                             (VkColorSpaceKHR value)                                         { return tcu::Format::Enum<VkColorSpaceKHR>(getColorSpaceKHRName, value);                                                                               }
 inline tcu::Format::Enum<VkPresentModeKHR>                                     getPresentModeKHRStr                                    (VkPresentModeKHR value)                                        { return tcu::Format::Enum<VkPresentModeKHR>(getPresentModeKHRName, value);                                                                             }
+inline tcu::Format::Enum<VkDescriptorUpdateTemplateTypeKHR>    getDescriptorUpdateTemplateTypeKHRStr   (VkDescriptorUpdateTemplateTypeKHR value)       { return tcu::Format::Enum<VkDescriptorUpdateTemplateTypeKHR>(getDescriptorUpdateTemplateTypeKHRName, value);   }
 inline tcu::Format::Enum<VkDebugReportObjectTypeEXT>           getDebugReportObjectTypeEXTStr                  (VkDebugReportObjectTypeEXT value)                      { return tcu::Format::Enum<VkDebugReportObjectTypeEXT>(getDebugReportObjectTypeEXTName, value);                                 }
 inline tcu::Format::Enum<VkDebugReportErrorEXT>                                getDebugReportErrorEXTStr                               (VkDebugReportErrorEXT value)                           { return tcu::Format::Enum<VkDebugReportErrorEXT>(getDebugReportErrorEXTName, value);                                                   }
-inline tcu::Format::Enum<VkRasterizationOrderAMD>                      getRasterizationOrderAMDStr                             (VkRasterizationOrderAMD value)                         { return tcu::Format::Enum<VkRasterizationOrderAMD>(getRasterizationOrderAMDName, value);                                               }
-inline tcu::Format::Enum<VkValidationCheckEXT>                         getValidationCheckEXTStr                                (VkValidationCheckEXT value)                            { return tcu::Format::Enum<VkValidationCheckEXT>(getValidationCheckEXTName, value);                                                             }
-inline tcu::Format::Enum<VkIndirectCommandsTokenTypeNVX>       getIndirectCommandsTokenTypeNVXStr              (VkIndirectCommandsTokenTypeNVX value)          { return tcu::Format::Enum<VkIndirectCommandsTokenTypeNVX>(getIndirectCommandsTokenTypeNVXName, value);                 }
-inline tcu::Format::Enum<VkObjectEntryTypeNVX>                         getObjectEntryTypeNVXStr                                (VkObjectEntryTypeNVX value)                            { return tcu::Format::Enum<VkObjectEntryTypeNVX>(getObjectEntryTypeNVXName, value);                                                             }
-inline tcu::Format::Enum<VkDescriptorUpdateTemplateTypeKHR>    getDescriptorUpdateTemplateTypeKHRStr   (VkDescriptorUpdateTemplateTypeKHR value)       { return tcu::Format::Enum<VkDescriptorUpdateTemplateTypeKHR>(getDescriptorUpdateTemplateTypeKHRName, value);   }
 
 inline std::ostream&   operator<<      (std::ostream& s, VkPipelineCacheHeaderVersion value)           { return s << getPipelineCacheHeaderVersionStr(value);          }
 inline std::ostream&   operator<<      (std::ostream& s, VkResult value)                                                       { return s << getResultStr(value);                                                      }
@@ -126,15 +120,12 @@ inline std::ostream&      operator<<      (std::ostream& s, VkPipelineBindPoint value)
 inline std::ostream&   operator<<      (std::ostream& s, VkCommandBufferLevel value)                           { return s << getCommandBufferLevelStr(value);                          }
 inline std::ostream&   operator<<      (std::ostream& s, VkIndexType value)                                            { return s << getIndexTypeStr(value);                                           }
 inline std::ostream&   operator<<      (std::ostream& s, VkSubpassContents value)                                      { return s << getSubpassContentsStr(value);                                     }
+inline std::ostream&   operator<<      (std::ostream& s, VkObjectType value)                                           { return s << getObjectTypeStr(value);                                          }
 inline std::ostream&   operator<<      (std::ostream& s, VkColorSpaceKHR value)                                        { return s << getColorSpaceKHRStr(value);                                       }
 inline std::ostream&   operator<<      (std::ostream& s, VkPresentModeKHR value)                                       { return s << getPresentModeKHRStr(value);                                      }
+inline std::ostream&   operator<<      (std::ostream& s, VkDescriptorUpdateTemplateTypeKHR value)      { return s << getDescriptorUpdateTemplateTypeKHRStr(value);     }
 inline std::ostream&   operator<<      (std::ostream& s, VkDebugReportObjectTypeEXT value)                     { return s << getDebugReportObjectTypeEXTStr(value);            }
 inline std::ostream&   operator<<      (std::ostream& s, VkDebugReportErrorEXT value)                          { return s << getDebugReportErrorEXTStr(value);                         }
-inline std::ostream&   operator<<      (std::ostream& s, VkRasterizationOrderAMD value)                        { return s << getRasterizationOrderAMDStr(value);                       }
-inline std::ostream&   operator<<      (std::ostream& s, VkValidationCheckEXT value)                           { return s << getValidationCheckEXTStr(value);                          }
-inline std::ostream&   operator<<      (std::ostream& s, VkIndirectCommandsTokenTypeNVX value)         { return s << getIndirectCommandsTokenTypeNVXStr(value);        }
-inline std::ostream&   operator<<      (std::ostream& s, VkObjectEntryTypeNVX value)                           { return s << getObjectEntryTypeNVXStr(value);                          }
-inline std::ostream&   operator<<      (std::ostream& s, VkDescriptorUpdateTemplateTypeKHR value)      { return s << getDescriptorUpdateTemplateTypeKHRStr(value);     }
 
 tcu::Format::Bitfield<32>      getFormatFeatureFlagsStr                                                (VkFormatFeatureFlags value);
 tcu::Format::Bitfield<32>      getImageUsageFlagsStr                                                   (VkImageUsageFlags value);
@@ -159,6 +150,7 @@ tcu::Format::Bitfield<32>   getColorComponentFlagsStr                                               (VkColorComponentFlags
 tcu::Format::Bitfield<32>      getDescriptorSetLayoutCreateFlagsStr                    (VkDescriptorSetLayoutCreateFlags value);
 tcu::Format::Bitfield<32>      getDescriptorPoolCreateFlagsStr                                 (VkDescriptorPoolCreateFlags value);
 tcu::Format::Bitfield<32>      getAttachmentDescriptionFlagsStr                                (VkAttachmentDescriptionFlags value);
+tcu::Format::Bitfield<32>      getSubpassDescriptionFlagsStr                                   (VkSubpassDescriptionFlags value);
 tcu::Format::Bitfield<32>      getAccessFlagsStr                                                               (VkAccessFlags value);
 tcu::Format::Bitfield<32>      getDependencyFlagsStr                                                   (VkDependencyFlags value);
 tcu::Format::Bitfield<32>      getCommandPoolCreateFlagsStr                                    (VkCommandPoolCreateFlags value);
@@ -169,12 +161,9 @@ tcu::Format::Bitfield<32>  getCommandBufferResetFlagsStr                                   (VkCommandBufferRese
 tcu::Format::Bitfield<32>      getStencilFaceFlagsStr                                                  (VkStencilFaceFlags value);
 tcu::Format::Bitfield<32>      getSurfaceTransformFlagsKHRStr                                  (VkSurfaceTransformFlagsKHR value);
 tcu::Format::Bitfield<32>      getCompositeAlphaFlagsKHRStr                                    (VkCompositeAlphaFlagsKHR value);
+tcu::Format::Bitfield<32>      getSwapchainCreateFlagsKHRStr                                   (VkSwapchainCreateFlagsKHR value);
 tcu::Format::Bitfield<32>      getDisplayPlaneAlphaFlagsKHRStr                                 (VkDisplayPlaneAlphaFlagsKHR value);
 tcu::Format::Bitfield<32>      getDebugReportFlagsEXTStr                                               (VkDebugReportFlagsEXT value);
-tcu::Format::Bitfield<32>      getExternalMemoryHandleTypeFlagsNVStr                   (VkExternalMemoryHandleTypeFlagsNV value);
-tcu::Format::Bitfield<32>      getExternalMemoryFeatureFlagsNVStr                              (VkExternalMemoryFeatureFlagsNV value);
-tcu::Format::Bitfield<32>      getIndirectCommandsLayoutUsageFlagsNVXStr               (VkIndirectCommandsLayoutUsageFlagsNVX value);
-tcu::Format::Bitfield<32>      getObjectEntryUsageFlagsNVXStr                                  (VkObjectEntryUsageFlagsNVX value);
 tcu::Format::Bitfield<32>      getInstanceCreateFlagsStr                                               (VkInstanceCreateFlags value);
 tcu::Format::Bitfield<32>      getDeviceCreateFlagsStr                                                 (VkDeviceCreateFlags value);
 tcu::Format::Bitfield<32>      getDeviceQueueCreateFlagsStr                                    (VkDeviceQueueCreateFlags value);
@@ -201,8 +190,6 @@ tcu::Format::Bitfield<32>   getSamplerCreateFlagsStr                                                (VkSamplerCreateFlags va
 tcu::Format::Bitfield<32>      getDescriptorPoolResetFlagsStr                                  (VkDescriptorPoolResetFlags value);
 tcu::Format::Bitfield<32>      getFramebufferCreateFlagsStr                                    (VkFramebufferCreateFlags value);
 tcu::Format::Bitfield<32>      getRenderPassCreateFlagsStr                                             (VkRenderPassCreateFlags value);
-tcu::Format::Bitfield<32>      getSubpassDescriptionFlagsStr                                   (VkSubpassDescriptionFlags value);
-tcu::Format::Bitfield<32>      getSwapchainCreateFlagsKHRStr                                   (VkSwapchainCreateFlagsKHR value);
 tcu::Format::Bitfield<32>      getDisplayModeCreateFlagsKHRStr                                 (VkDisplayModeCreateFlagsKHR value);
 tcu::Format::Bitfield<32>      getDisplaySurfaceCreateFlagsKHRStr                              (VkDisplaySurfaceCreateFlagsKHR value);
 tcu::Format::Bitfield<32>      getXlibSurfaceCreateFlagsKHRStr                                 (VkXlibSurfaceCreateFlagsKHR value);
@@ -348,45 +335,17 @@ std::ostream&     operator<<      (std::ostream& s, const VkQueueFamilyProperties2KHR& va
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceMemoryProperties2KHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkSparseImageFormatProperties2KHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceSparseImageFormatInfo2KHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDevicePushDescriptorPropertiesKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkRectLayerKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPresentRegionKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPresentRegionsKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkDescriptorUpdateTemplateEntryKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkDescriptorUpdateTemplateCreateInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkSharedPresentSurfaceCapabilitiesKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceSurfaceInfo2KHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkSurfaceCapabilities2KHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkSurfaceFormat2KHR& value);
-std::ostream&  operator<<      (std::ostream& s, const VkSharedPresentSurfaceCapabilitiesKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value);
-std::ostream&  operator<<      (std::ostream& s, const VkPipelineRasterizationStateRasterizationOrderAMD& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDebugMarkerObjectNameInfoEXT& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDebugMarkerObjectTagInfoEXT& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDebugMarkerMarkerInfoEXT& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDedicatedAllocationImageCreateInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDedicatedAllocationBufferCreateInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDedicatedAllocationMemoryAllocateInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkExternalImageFormatPropertiesNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkExternalMemoryImageCreateInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkExportMemoryAllocateInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkImportMemoryWin32HandleInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkExportMemoryWin32HandleInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkWin32KeyedMutexAcquireReleaseInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkValidationFlagsEXT& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDeviceGeneratedCommandsFeaturesNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDeviceGeneratedCommandsLimitsNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkIndirectCommandsTokenNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkIndirectCommandsLayoutTokenNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkIndirectCommandsLayoutCreateInfoNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkCmdProcessCommandsInfoNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkCmdReserveSpaceForCommandsInfoNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkObjectTableCreateInfoNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkObjectTableEntryNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkObjectTablePipelineEntryNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkObjectTableDescriptorSetEntryNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkObjectTableVertexBufferEntryNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkObjectTableIndexBufferEntryNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkObjectTablePushConstantEntryNVX& value);
-std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDevicePushDescriptorPropertiesKHR& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDescriptorUpdateTemplateEntryKHR& value);
-std::ostream&  operator<<      (std::ostream& s, const VkDescriptorUpdateTemplateCreateInfoKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkRefreshCycleDurationGOOGLE& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPastPresentationTimingGOOGLE& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPresentTimeGOOGLE& value);
index 36e8648..e919afc 100644 (file)
@@ -30,10 +30,8 @@ template<> const char*       getTypeName<VkSurfaceKHR>                                       (void) { return "VkSurfaceK
 template<> const char* getTypeName<VkSwapchainKHR>                                     (void) { return "VkSwapchainKHR";                                       }
 template<> const char* getTypeName<VkDisplayKHR>                                       (void) { return "VkDisplayKHR";                                         }
 template<> const char* getTypeName<VkDisplayModeKHR>                           (void) { return "VkDisplayModeKHR";                                     }
-template<> const char* getTypeName<VkDebugReportCallbackEXT>           (void) { return "VkDebugReportCallbackEXT";                     }
-template<> const char* getTypeName<VkObjectTableNVX>                           (void) { return "VkObjectTableNVX";                                     }
-template<> const char* getTypeName<VkIndirectCommandsLayoutNVX>        (void) { return "VkIndirectCommandsLayoutNVX";          }
 template<> const char* getTypeName<VkDescriptorUpdateTemplateKHR>      (void) { return "VkDescriptorUpdateTemplateKHR";        }
+template<> const char* getTypeName<VkDebugReportCallbackEXT>           (void) { return "VkDebugReportCallbackEXT";                     }
 
 namespace pt
 {
@@ -101,104 +99,85 @@ const char* getStructureTypeName (VkStructureType value)
 {
        switch (value)
        {
-               case VK_STRUCTURE_TYPE_APPLICATION_INFO:                                                                                return "VK_STRUCTURE_TYPE_APPLICATION_INFO";
-               case VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO:                                                                    return "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO:                                                                return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO:                                                                              return "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_SUBMIT_INFO:                                                                                             return "VK_STRUCTURE_TYPE_SUBMIT_INFO";
-               case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO:                                                                    return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO";
-               case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE:                                                                             return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE";
-               case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO:                                                                                return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO";
-               case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO:                                                                               return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO:                                                                   return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO:                                                                               return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO:                                                                  return "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO:                                                                              return "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO:                                                                 return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO:                                                                               return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO:                                                                  return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO:                                                               return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO:                                                              return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO:                                               return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO:                                 return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO:                               return "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO:                                 return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO:                                             return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO:                                return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO:                                  return "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO:                                return "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO:                                  return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO:                                              return "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO:                                                   return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO:                                                    return "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO:                                                             return "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO:                                                                             return "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO:                                               return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO:                                                             return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO:                                                    return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO";
-               case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET:                                                                    return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET";
-               case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET:                                                                             return "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET";
-               case VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO:                                                                 return "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO:                                                                 return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO:                                                                return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO:                                                    return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO";
-               case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO:                                                 return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO";
-               case VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO:                                                               return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO";
-               case VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO:                                                                  return "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO";
-               case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER:                                                                   return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER";
-               case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER:                                                                    return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER";
-               case VK_STRUCTURE_TYPE_MEMORY_BARRIER:                                                                                  return "VK_STRUCTURE_TYPE_MEMORY_BARRIER";
-               case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO:                                                             return "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO:                                                               return "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR:                                                               return "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_PRESENT_INFO_KHR:                                                                                return "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR";
-               case VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR:                                                    return "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR:                                                 return "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:                                                                return "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR";
-               case VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR:                                                    return "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR:                                                             return "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR:                                                 return "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR:                                                             return "VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR:                                                 return "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR:                                                   return "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT:                                   return "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT";
-               case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD:    return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD";
-               case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT:                                               return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT";
-               case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT:                                                return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT";
-               case VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT:                                                    return "VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT";
-               case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV:                               return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV";
-               case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV:                              return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV";
-               case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV:                    return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV";
-               case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV:                                    return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV";
-               case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV:                                                  return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV";
-               case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV:                                              return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV";
-               case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV:                                              return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV";
-               case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV:                               return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV";
-               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR:                                                  return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR";
-               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR:                                                return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR";
-               case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR:                                                                 return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR";
-               case VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR:                                                   return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR";
-               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR:                                 return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR";
-               case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR:                                                   return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR";
-               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR:                                 return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR";
-               case VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR:                                    return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR";
-               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR:                  return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR";
-               case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT:                                                                    return "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT";
-               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR:                  return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR";
-               case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:                                                                             return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR";
-               case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:                                 return "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR";
-               case VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR:                              return "VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR";
-               case VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX:                                                    return "VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX";
-               case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX:                                return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX";
-               case VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX:                                                   return "VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX";
-               case VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX:                                 return "VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX";
-               case VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX:                                    return "VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX";
-               case VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX:                                  return "VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX";
-               case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE:                                                               return "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE";
-               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR:                                              return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR";
-               case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR:                                                              return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR";
-               case VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR:                                                                    return "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR";
-               default:                                                                                                                                                return DE_NULL;
+               case VK_STRUCTURE_TYPE_APPLICATION_INFO:                                                                return "VK_STRUCTURE_TYPE_APPLICATION_INFO";
+               case VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO:                                                    return "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO:                                                return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO:                                                              return "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_SUBMIT_INFO:                                                                             return "VK_STRUCTURE_TYPE_SUBMIT_INFO";
+               case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO:                                                    return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO";
+               case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE:                                                             return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE";
+               case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO:                                                                return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO";
+               case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO:                                                               return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO:                                                   return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO:                                                               return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO:                                                  return "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO:                                                              return "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO:                                                 return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO:                                                               return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO:                                                  return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO:                                               return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO:                                              return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO:                               return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO:                 return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO:               return "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO:                 return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO:                             return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO:                return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO:                  return "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO:                return "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO:                  return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO:                              return "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO:                                   return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO:                                    return "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO:                                             return "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO:                                                             return "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO:                               return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO:                                             return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO:                                    return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO";
+               case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET:                                                    return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET";
+               case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET:                                                             return "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET";
+               case VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO:                                                 return "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO:                                                 return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO:                                                return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO:                                    return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO";
+               case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO:                                 return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO";
+               case VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO:                                               return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO";
+               case VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO:                                                  return "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO";
+               case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER:                                                   return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER";
+               case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER:                                                    return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER";
+               case VK_STRUCTURE_TYPE_MEMORY_BARRIER:                                                                  return "VK_STRUCTURE_TYPE_MEMORY_BARRIER";
+               case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO:                                             return "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO:                                               return "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO";
+               case VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR:                                               return "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_PRESENT_INFO_KHR:                                                                return "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR";
+               case VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR:                                    return "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR:                                 return "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:                                                return "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR";
+               case VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR:                                    return "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR:                                             return "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR:                                 return "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR:                                             return "VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR:                                 return "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR:                                   return "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT:                   return "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR:                                  return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR:                                return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR";
+               case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR:                                                 return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR";
+               case VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR:                                   return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR:                 return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR";
+               case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR:                                   return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR:                 return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR";
+               case VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR:                    return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR:  return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR:  return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR";
+               case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:                                                             return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR";
+               case VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR:              return "VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE:                                               return "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE";
+               case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:                 return "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR:                              return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR";
+               case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR:                                              return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR";
+               case VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR:                                                    return "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR";
+               default:                                                                                                                                return DE_NULL;
        }
 }
 
@@ -413,14 +392,6 @@ const char* getFormatName (VkFormat value)
                case VK_FORMAT_ASTC_12x10_SRGB_BLOCK:           return "VK_FORMAT_ASTC_12x10_SRGB_BLOCK";
                case VK_FORMAT_ASTC_12x12_UNORM_BLOCK:          return "VK_FORMAT_ASTC_12x12_UNORM_BLOCK";
                case VK_FORMAT_ASTC_12x12_SRGB_BLOCK:           return "VK_FORMAT_ASTC_12x12_SRGB_BLOCK";
-               case VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG:     return "VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG";
-               case VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG:     return "VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG";
-               case VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG:     return "VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG";
-               case VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG:     return "VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG";
-               case VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG:      return "VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG";
-               case VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG:      return "VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG";
-               case VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG:      return "VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG";
-               case VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG:      return "VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG";
                default:                                                                        return DE_NULL;
        }
 }
@@ -696,10 +667,9 @@ const char* getFilterName (VkFilter value)
 {
        switch (value)
        {
-               case VK_FILTER_NEAREST:         return "VK_FILTER_NEAREST";
-               case VK_FILTER_LINEAR:          return "VK_FILTER_LINEAR";
-               case VK_FILTER_CUBIC_IMG:       return "VK_FILTER_CUBIC_IMG";
-               default:                                        return DE_NULL;
+               case VK_FILTER_NEAREST: return "VK_FILTER_NEAREST";
+               case VK_FILTER_LINEAR:  return "VK_FILTER_LINEAR";
+               default:                                return DE_NULL;
        }
 }
 
@@ -820,6 +790,48 @@ const char* getSubpassContentsName (VkSubpassContents value)
        }
 }
 
+const char* getObjectTypeName (VkObjectType value)
+{
+       switch (value)
+       {
+               case VK_OBJECT_TYPE_UNKNOWN:                                            return "VK_OBJECT_TYPE_UNKNOWN";
+               case VK_OBJECT_TYPE_INSTANCE:                                           return "VK_OBJECT_TYPE_INSTANCE";
+               case VK_OBJECT_TYPE_PHYSICAL_DEVICE:                            return "VK_OBJECT_TYPE_PHYSICAL_DEVICE";
+               case VK_OBJECT_TYPE_DEVICE:                                                     return "VK_OBJECT_TYPE_DEVICE";
+               case VK_OBJECT_TYPE_QUEUE:                                                      return "VK_OBJECT_TYPE_QUEUE";
+               case VK_OBJECT_TYPE_SEMAPHORE:                                          return "VK_OBJECT_TYPE_SEMAPHORE";
+               case VK_OBJECT_TYPE_COMMAND_BUFFER:                                     return "VK_OBJECT_TYPE_COMMAND_BUFFER";
+               case VK_OBJECT_TYPE_FENCE:                                                      return "VK_OBJECT_TYPE_FENCE";
+               case VK_OBJECT_TYPE_DEVICE_MEMORY:                                      return "VK_OBJECT_TYPE_DEVICE_MEMORY";
+               case VK_OBJECT_TYPE_BUFFER:                                                     return "VK_OBJECT_TYPE_BUFFER";
+               case VK_OBJECT_TYPE_IMAGE:                                                      return "VK_OBJECT_TYPE_IMAGE";
+               case VK_OBJECT_TYPE_EVENT:                                                      return "VK_OBJECT_TYPE_EVENT";
+               case VK_OBJECT_TYPE_QUERY_POOL:                                         return "VK_OBJECT_TYPE_QUERY_POOL";
+               case VK_OBJECT_TYPE_BUFFER_VIEW:                                        return "VK_OBJECT_TYPE_BUFFER_VIEW";
+               case VK_OBJECT_TYPE_IMAGE_VIEW:                                         return "VK_OBJECT_TYPE_IMAGE_VIEW";
+               case VK_OBJECT_TYPE_SHADER_MODULE:                                      return "VK_OBJECT_TYPE_SHADER_MODULE";
+               case VK_OBJECT_TYPE_PIPELINE_CACHE:                                     return "VK_OBJECT_TYPE_PIPELINE_CACHE";
+               case VK_OBJECT_TYPE_PIPELINE_LAYOUT:                            return "VK_OBJECT_TYPE_PIPELINE_LAYOUT";
+               case VK_OBJECT_TYPE_RENDER_PASS:                                        return "VK_OBJECT_TYPE_RENDER_PASS";
+               case VK_OBJECT_TYPE_PIPELINE:                                           return "VK_OBJECT_TYPE_PIPELINE";
+               case VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT:                      return "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT";
+               case VK_OBJECT_TYPE_SAMPLER:                                            return "VK_OBJECT_TYPE_SAMPLER";
+               case VK_OBJECT_TYPE_DESCRIPTOR_POOL:                            return "VK_OBJECT_TYPE_DESCRIPTOR_POOL";
+               case VK_OBJECT_TYPE_DESCRIPTOR_SET:                                     return "VK_OBJECT_TYPE_DESCRIPTOR_SET";
+               case VK_OBJECT_TYPE_FRAMEBUFFER:                                        return "VK_OBJECT_TYPE_FRAMEBUFFER";
+               case VK_OBJECT_TYPE_COMMAND_POOL:                                       return "VK_OBJECT_TYPE_COMMAND_POOL";
+               case VK_OBJECT_TYPE_SURFACE_KHR:                                        return "VK_OBJECT_TYPE_SURFACE_KHR";
+               case VK_OBJECT_TYPE_SWAPCHAIN_KHR:                                      return "VK_OBJECT_TYPE_SWAPCHAIN_KHR";
+               case VK_OBJECT_TYPE_DISPLAY_KHR:                                        return "VK_OBJECT_TYPE_DISPLAY_KHR";
+               case VK_OBJECT_TYPE_DISPLAY_MODE_KHR:                           return "VK_OBJECT_TYPE_DISPLAY_MODE_KHR";
+               case VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT:          return "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT";
+               case VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR:     return "VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR";
+               case VK_OBJECT_TYPE_OBJECT_TABLE_NVX:                           return "VK_OBJECT_TYPE_OBJECT_TABLE_NVX";
+               case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX:       return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX";
+               default:                                                                                        return DE_NULL;
+       }
+}
+
 const char* getColorSpaceKHRName (VkColorSpaceKHR value)
 {
        switch (value)
@@ -856,108 +868,63 @@ const char* getPresentModeKHRName (VkPresentModeKHR value)
        }
 }
 
-const char* getDebugReportObjectTypeEXTName (VkDebugReportObjectTypeEXT value)
-{
-       switch (value)
-       {
-               case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT:                           return "VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT:                          return "VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT:           return "VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT:                            return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT:                                     return "VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT:                         return "VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT:            return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT:                                     return "VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT:                     return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT:                            return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT:                                     return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT:                                     return "VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT:                        return "VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT:                       return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT:                        return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT:                     return "VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT:            return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT:           return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT:                       return "VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT:                          return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT:     return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT:                           return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT:           return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT:            return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT:                       return "VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT:                      return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT:                       return "VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT:                     return "VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT:                      return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT";
-               default:                                                                                                        return DE_NULL;
-       }
-}
-
-const char* getDebugReportErrorEXTName (VkDebugReportErrorEXT value)
-{
-       switch (value)
-       {
-               case VK_DEBUG_REPORT_ERROR_NONE_EXT:                    return "VK_DEBUG_REPORT_ERROR_NONE_EXT";
-               case VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT:    return "VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT";
-               default:                                                                                return DE_NULL;
-       }
-}
-
-const char* getRasterizationOrderAMDName (VkRasterizationOrderAMD value)
-{
-       switch (value)
-       {
-               case VK_RASTERIZATION_ORDER_STRICT_AMD:         return "VK_RASTERIZATION_ORDER_STRICT_AMD";
-               case VK_RASTERIZATION_ORDER_RELAXED_AMD:        return "VK_RASTERIZATION_ORDER_RELAXED_AMD";
-               default:                                                                        return DE_NULL;
-       }
-}
-
-const char* getValidationCheckEXTName (VkValidationCheckEXT value)
+const char* getDescriptorUpdateTemplateTypeKHRName (VkDescriptorUpdateTemplateTypeKHR value)
 {
        switch (value)
        {
-               case VK_VALIDATION_CHECK_ALL_EXT:       return "VK_VALIDATION_CHECK_ALL_EXT";
-               default:                                                        return DE_NULL;
+               case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR:             return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR";
+               case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR:   return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
+               default:                                                                                                                return DE_NULL;
        }
 }
 
-const char* getIndirectCommandsTokenTypeNVXName (VkIndirectCommandsTokenTypeNVX value)
+const char* getDebugReportObjectTypeEXTName (VkDebugReportObjectTypeEXT value)
 {
        switch (value)
        {
-               case VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX:           return "VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_DESCRIPTOR_SET_NVX:     return "VK_INDIRECT_COMMANDS_TOKEN_DESCRIPTOR_SET_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_INDEX_BUFFER_NVX:       return "VK_INDIRECT_COMMANDS_TOKEN_INDEX_BUFFER_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_VERTEX_BUFFER_NVX:      return "VK_INDIRECT_COMMANDS_TOKEN_VERTEX_BUFFER_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_PUSH_CONSTANT_NVX:      return "VK_INDIRECT_COMMANDS_TOKEN_PUSH_CONSTANT_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_DRAW_INDEXED_NVX:       return "VK_INDIRECT_COMMANDS_TOKEN_DRAW_INDEXED_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_DRAW_NVX:                       return "VK_INDIRECT_COMMANDS_TOKEN_DRAW_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX:           return "VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX";
-               default:                                                                                        return DE_NULL;
+               case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT:                                                   return "VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT:                                                  return "VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT:                                   return "VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT:                                                    return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT:                                                             return "VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT:                                                 return "VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT:                                    return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT:                                                             return "VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT:                                             return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT:                                                    return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT:                                                             return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT:                                                             return "VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT:                                                return "VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT:                                               return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT:                                                return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT:                                             return "VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT:                                    return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT:                                   return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT:                                               return "VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT:                                                  return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT:                             return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT:                                                   return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT:                                   return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT:                                    return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT:                                               return "VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT:                                              return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT:                                               return "VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT:                                             return "VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT:                                              return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT:                                               return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT:                                  return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT:    return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT";
+               default:                                                                                                                                return DE_NULL;
        }
 }
 
-const char* getObjectEntryTypeNVXName (VkObjectEntryTypeNVX value)
-{
-       switch (value)
-       {
-               case VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX:        return "VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX";
-               case VK_OBJECT_ENTRY_PIPELINE_NVX:                      return "VK_OBJECT_ENTRY_PIPELINE_NVX";
-               case VK_OBJECT_ENTRY_INDEX_BUFFER_NVX:          return "VK_OBJECT_ENTRY_INDEX_BUFFER_NVX";
-               case VK_OBJECT_ENTRY_VERTEX_BUFFER_NVX:         return "VK_OBJECT_ENTRY_VERTEX_BUFFER_NVX";
-               case VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX:         return "VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX";
-               default:                                                                        return DE_NULL;
-       }
-}
-
-const char* getDescriptorUpdateTemplateTypeKHRName (VkDescriptorUpdateTemplateTypeKHR value)
+const char* getDebugReportErrorEXTName (VkDebugReportErrorEXT value)
 {
        switch (value)
        {
-               case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR:             return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR";
-               case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR:   return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
-               default:                                                                                                                return DE_NULL;
+               case VK_DEBUG_REPORT_ERROR_NONE_EXT:                    return "VK_DEBUG_REPORT_ERROR_NONE_EXT";
+               case VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT:    return "VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT";
+               default:                                                                                return DE_NULL;
        }
 }
 
@@ -965,22 +932,21 @@ tcu::Format::Bitfield<32> getFormatFeatureFlagsStr (VkFormatFeatureFlags value)
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT,                                       "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT,                                       "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT,                        "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT,                        "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT,                        "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT,         "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT,                                       "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT,                            "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT,                      "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT,            "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_SRC_BIT,                                            "VK_FORMAT_FEATURE_BLIT_SRC_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_DST_BIT,                                            "VK_FORMAT_FEATURE_BLIT_DST_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT,         "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,      "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR,                            "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR,                            "VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT,                               "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT,                               "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT,                "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT,                "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT,                "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT,                               "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT,                    "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT,              "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT,    "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_SRC_BIT,                                    "VK_FORMAT_FEATURE_BLIT_SRC_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_DST_BIT,                                    "VK_FORMAT_FEATURE_BLIT_DST_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR,                    "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR,                    "VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
@@ -1085,7 +1051,6 @@ tcu::Format::Bitfield<32> getPipelineStageFlagsStr (VkPipelineStageFlags value)
                tcu::Format::BitDesc(VK_PIPELINE_STAGE_HOST_BIT,                                                        "VK_PIPELINE_STAGE_HOST_BIT"),
                tcu::Format::BitDesc(VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT,                                        "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT"),
                tcu::Format::BitDesc(VK_PIPELINE_STAGE_ALL_COMMANDS_BIT,                                        "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX,                         "VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
@@ -1268,6 +1233,11 @@ tcu::Format::Bitfield<32> getAttachmentDescriptionFlagsStr (VkAttachmentDescript
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
+tcu::Format::Bitfield<32> getSubpassDescriptionFlagsStr (VkSubpassDescriptionFlags value)
+{
+       return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
+}
+
 tcu::Format::Bitfield<32> getAccessFlagsStr (VkAccessFlags value)
 {
        static const tcu::Format::BitDesc s_desc[] =
@@ -1390,6 +1360,11 @@ tcu::Format::Bitfield<32> getCompositeAlphaFlagsKHRStr (VkCompositeAlphaFlagsKHR
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
+tcu::Format::Bitfield<32> getSwapchainCreateFlagsKHRStr (VkSwapchainCreateFlagsKHR value)
+{
+       return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
+}
+
 tcu::Format::Bitfield<32> getDisplayPlaneAlphaFlagsKHRStr (VkDisplayPlaneAlphaFlagsKHR value)
 {
        static const tcu::Format::BitDesc s_desc[] =
@@ -1415,51 +1390,6 @@ tcu::Format::Bitfield<32> getDebugReportFlagsEXTStr (VkDebugReportFlagsEXT value
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
-tcu::Format::Bitfield<32> getExternalMemoryHandleTypeFlagsNVStr (VkExternalMemoryHandleTypeFlagsNV value)
-{
-       static const tcu::Format::BitDesc s_desc[] =
-       {
-               tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV,                "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV"),
-               tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV,    "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV"),
-               tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV,                 "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV"),
-               tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV,             "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV"),
-       };
-       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
-}
-
-tcu::Format::Bitfield<32> getExternalMemoryFeatureFlagsNVStr (VkExternalMemoryFeatureFlagsNV value)
-{
-       static const tcu::Format::BitDesc s_desc[] =
-       {
-               tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV,  "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV"),
-               tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV,              "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV"),
-               tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV,              "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV"),
-       };
-       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
-}
-
-tcu::Format::Bitfield<32> getIndirectCommandsLayoutUsageFlagsNVXStr (VkIndirectCommandsLayoutUsageFlagsNVX value)
-{
-       static const tcu::Format::BitDesc s_desc[] =
-       {
-               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX,     "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX"),
-               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX,        "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX"),
-               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX,        "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX"),
-               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX,       "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX"),
-       };
-       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
-}
-
-tcu::Format::Bitfield<32> getObjectEntryUsageFlagsNVXStr (VkObjectEntryUsageFlagsNVX value)
-{
-       static const tcu::Format::BitDesc s_desc[] =
-       {
-               tcu::Format::BitDesc(VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX,    "VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX"),
-               tcu::Format::BitDesc(VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX,             "VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX"),
-       };
-       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
-}
-
 tcu::Format::Bitfield<32> getInstanceCreateFlagsStr (VkInstanceCreateFlags value)
 {
        return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
@@ -1590,16 +1520,6 @@ tcu::Format::Bitfield<32> getRenderPassCreateFlagsStr (VkRenderPassCreateFlags v
        return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
 }
 
-tcu::Format::Bitfield<32> getSubpassDescriptionFlagsStr (VkSubpassDescriptionFlags value)
-{
-       return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
-}
-
-tcu::Format::Bitfield<32> getSwapchainCreateFlagsKHRStr (VkSwapchainCreateFlagsKHR value)
-{
-       return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
-}
-
 tcu::Format::Bitfield<32> getDisplayModeCreateFlagsKHRStr (VkDisplayModeCreateFlagsKHR value)
 {
        return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
@@ -3485,6 +3405,16 @@ std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSparseImageForm
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePushDescriptorPropertiesKHR& value)
+{
+       s << "VkPhysicalDevicePushDescriptorPropertiesKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmaxPushDescriptors = " << value.maxPushDescriptors << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkRectLayerKHR& value)
 {
        s << "VkRectLayerKHR = {\n";
@@ -3515,32 +3445,32 @@ std::ostream& operator<< (std::ostream& s, const VkPresentRegionsKHR& value)
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSurfaceInfo2KHR& value)
-{
-       s << "VkPhysicalDeviceSurfaceInfo2KHR = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tsurface = " << value.surface << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilities2KHR& value)
+std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateEntryKHR& value)
 {
-       s << "VkSurfaceCapabilities2KHR = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tsurfaceCapabilities = " << value.surfaceCapabilities << '\n';
+       s << "VkDescriptorUpdateTemplateEntryKHR = {\n";
+       s << "\tdstBinding = " << value.dstBinding << '\n';
+       s << "\tdstArrayElement = " << value.dstArrayElement << '\n';
+       s << "\tdescriptorCount = " << value.descriptorCount << '\n';
+       s << "\tdescriptorType = " << value.descriptorType << '\n';
+       s << "\toffset = " << value.offset << '\n';
+       s << "\tstride = " << value.stride << '\n';
        s << '}';
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkSurfaceFormat2KHR& value)
+std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateCreateInfoKHR& value)
 {
-       s << "VkSurfaceFormat2KHR = {\n";
+       s << "VkDescriptorUpdateTemplateCreateInfoKHR = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\tsurfaceFormat = " << value.surfaceFormat << '\n';
+       s << "\tflags = " << getDescriptorUpdateTemplateCreateFlagsKHRStr(value.flags) << '\n';
+       s << "\tdescriptorUpdateEntryCount = " << value.descriptorUpdateEntryCount << '\n';
+       s << "\tpDescriptorUpdateEntries = " << value.pDescriptorUpdateEntries << '\n';
+       s << "\ttemplateType = " << value.templateType << '\n';
+       s << "\tdescriptorSetLayout = " << value.descriptorSetLayout << '\n';
+       s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n';
+       s << "\tpipelineLayout = " << value.pipelineLayout << '\n';
+       s << "\tset = " << value.set << '\n';
        s << '}';
        return s;
 }
@@ -3555,380 +3485,44 @@ std::ostream& operator<< (std::ostream& s, const VkSharedPresentSurfaceCapabilit
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value)
-{
-       s << "VkDebugReportCallbackCreateInfoEXT = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tflags = " << getDebugReportFlagsEXTStr(value.flags) << '\n';
-       s << "\tpfnCallback = " << value.pfnCallback << '\n';
-       s << "\tpUserData = " << value.pUserData << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkPipelineRasterizationStateRasterizationOrderAMD& value)
-{
-       s << "VkPipelineRasterizationStateRasterizationOrderAMD = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\trasterizationOrder = " << value.rasterizationOrder << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDebugMarkerObjectNameInfoEXT& value)
-{
-       s << "VkDebugMarkerObjectNameInfoEXT = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tobjectType = " << value.objectType << '\n';
-       s << "\tobject = " << value.object << '\n';
-       s << "\tpObjectName = " << getCharPtrStr(value.pObjectName) << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDebugMarkerObjectTagInfoEXT& value)
-{
-       s << "VkDebugMarkerObjectTagInfoEXT = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tobjectType = " << value.objectType << '\n';
-       s << "\tobject = " << value.object << '\n';
-       s << "\ttagName = " << value.tagName << '\n';
-       s << "\ttagSize = " << value.tagSize << '\n';
-       s << "\tpTag = " << value.pTag << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDebugMarkerMarkerInfoEXT& value)
-{
-       s << "VkDebugMarkerMarkerInfoEXT = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tpMarkerName = " << getCharPtrStr(value.pMarkerName) << '\n';
-       s << "\tcolor = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.color), DE_ARRAY_END(value.color)) << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDedicatedAllocationImageCreateInfoNV& value)
-{
-       s << "VkDedicatedAllocationImageCreateInfoNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tdedicatedAllocation = " << value.dedicatedAllocation << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDedicatedAllocationBufferCreateInfoNV& value)
-{
-       s << "VkDedicatedAllocationBufferCreateInfoNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tdedicatedAllocation = " << value.dedicatedAllocation << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDedicatedAllocationMemoryAllocateInfoNV& value)
-{
-       s << "VkDedicatedAllocationMemoryAllocateInfoNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\timage = " << value.image << '\n';
-       s << "\tbuffer = " << value.buffer << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkExternalImageFormatPropertiesNV& value)
-{
-       s << "VkExternalImageFormatPropertiesNV = {\n";
-       s << "\timageFormatProperties = " << value.imageFormatProperties << '\n';
-       s << "\texternalMemoryFeatures = " << getExternalMemoryFeatureFlagsNVStr(value.externalMemoryFeatures) << '\n';
-       s << "\texportFromImportedHandleTypes = " << getExternalMemoryHandleTypeFlagsNVStr(value.exportFromImportedHandleTypes) << '\n';
-       s << "\tcompatibleHandleTypes = " << getExternalMemoryHandleTypeFlagsNVStr(value.compatibleHandleTypes) << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkExternalMemoryImageCreateInfoNV& value)
-{
-       s << "VkExternalMemoryImageCreateInfoNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsNVStr(value.handleTypes) << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkExportMemoryAllocateInfoNV& value)
-{
-       s << "VkExportMemoryAllocateInfoNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsNVStr(value.handleTypes) << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkImportMemoryWin32HandleInfoNV& value)
-{
-       s << "VkImportMemoryWin32HandleInfoNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\thandleType = " << getExternalMemoryHandleTypeFlagsNVStr(value.handleType) << '\n';
-       s << "\thandle = " << value.handle << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkExportMemoryWin32HandleInfoNV& value)
-{
-       s << "VkExportMemoryWin32HandleInfoNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tpAttributes = " << value.pAttributes << '\n';
-       s << "\tdwAccess = " << value.dwAccess << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkWin32KeyedMutexAcquireReleaseInfoNV& value)
-{
-       s << "VkWin32KeyedMutexAcquireReleaseInfoNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tacquireCount = " << value.acquireCount << '\n';
-       s << "\tpAcquireSyncs = " << value.pAcquireSyncs << '\n';
-       s << "\tpAcquireKeys = " << value.pAcquireKeys << '\n';
-       s << "\tpAcquireTimeoutMilliseconds = " << value.pAcquireTimeoutMilliseconds << '\n';
-       s << "\treleaseCount = " << value.releaseCount << '\n';
-       s << "\tpReleaseSyncs = " << value.pReleaseSyncs << '\n';
-       s << "\tpReleaseKeys = " << value.pReleaseKeys << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkValidationFlagsEXT& value)
-{
-       s << "VkValidationFlagsEXT = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tdisabledValidationCheckCount = " << value.disabledValidationCheckCount << '\n';
-       s << "\tpDisabledValidationChecks = " << value.pDisabledValidationChecks << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDeviceGeneratedCommandsFeaturesNVX& value)
-{
-       s << "VkDeviceGeneratedCommandsFeaturesNVX = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tcomputeBindingPointSupport = " << value.computeBindingPointSupport << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDeviceGeneratedCommandsLimitsNVX& value)
-{
-       s << "VkDeviceGeneratedCommandsLimitsNVX = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tmaxIndirectCommandsLayoutTokenCount = " << value.maxIndirectCommandsLayoutTokenCount << '\n';
-       s << "\tmaxObjectEntryCounts = " << value.maxObjectEntryCounts << '\n';
-       s << "\tminSequenceCountBufferOffsetAlignment = " << value.minSequenceCountBufferOffsetAlignment << '\n';
-       s << "\tminSequenceIndexBufferOffsetAlignment = " << value.minSequenceIndexBufferOffsetAlignment << '\n';
-       s << "\tminCommandsTokenBufferOffsetAlignment = " << value.minCommandsTokenBufferOffsetAlignment << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsTokenNVX& value)
-{
-       s << "VkIndirectCommandsTokenNVX = {\n";
-       s << "\ttokenType = " << value.tokenType << '\n';
-       s << "\tbuffer = " << value.buffer << '\n';
-       s << "\toffset = " << value.offset << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsLayoutTokenNVX& value)
-{
-       s << "VkIndirectCommandsLayoutTokenNVX = {\n";
-       s << "\ttokenType = " << value.tokenType << '\n';
-       s << "\tbindingUnit = " << value.bindingUnit << '\n';
-       s << "\tdynamicCount = " << value.dynamicCount << '\n';
-       s << "\tdivisor = " << value.divisor << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsLayoutCreateInfoNVX& value)
-{
-       s << "VkIndirectCommandsLayoutCreateInfoNVX = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n';
-       s << "\tflags = " << getIndirectCommandsLayoutUsageFlagsNVXStr(value.flags) << '\n';
-       s << "\ttokenCount = " << value.tokenCount << '\n';
-       s << "\tpTokens = " << value.pTokens << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkCmdProcessCommandsInfoNVX& value)
-{
-       s << "VkCmdProcessCommandsInfoNVX = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tobjectTable = " << value.objectTable << '\n';
-       s << "\tindirectCommandsLayout = " << value.indirectCommandsLayout << '\n';
-       s << "\tindirectCommandsTokenCount = " << value.indirectCommandsTokenCount << '\n';
-       s << "\tpIndirectCommandsTokens = " << value.pIndirectCommandsTokens << '\n';
-       s << "\tmaxSequencesCount = " << value.maxSequencesCount << '\n';
-       s << "\ttargetCommandBuffer = " << value.targetCommandBuffer << '\n';
-       s << "\tsequencesCountBuffer = " << value.sequencesCountBuffer << '\n';
-       s << "\tsequencesCountOffset = " << value.sequencesCountOffset << '\n';
-       s << "\tsequencesIndexBuffer = " << value.sequencesIndexBuffer << '\n';
-       s << "\tsequencesIndexOffset = " << value.sequencesIndexOffset << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkCmdReserveSpaceForCommandsInfoNVX& value)
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSurfaceInfo2KHR& value)
 {
-       s << "VkCmdReserveSpaceForCommandsInfoNVX = {\n";
+       s << "VkPhysicalDeviceSurfaceInfo2KHR = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\tobjectTable = " << value.objectTable << '\n';
-       s << "\tindirectCommandsLayout = " << value.indirectCommandsLayout << '\n';
-       s << "\tmaxSequencesCount = " << value.maxSequencesCount << '\n';
+       s << "\tsurface = " << value.surface << '\n';
        s << '}';
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkObjectTableCreateInfoNVX& value)
+std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilities2KHR& value)
 {
-       s << "VkObjectTableCreateInfoNVX = {\n";
+       s << "VkSurfaceCapabilities2KHR = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\tobjectCount = " << value.objectCount << '\n';
-       s << "\tpObjectEntryTypes = " << value.pObjectEntryTypes << '\n';
-       s << "\tpObjectEntryCounts = " << value.pObjectEntryCounts << '\n';
-       s << "\tpObjectEntryUsageFlags = " << value.pObjectEntryUsageFlags << '\n';
-       s << "\tmaxUniformBuffersPerDescriptor = " << value.maxUniformBuffersPerDescriptor << '\n';
-       s << "\tmaxStorageBuffersPerDescriptor = " << value.maxStorageBuffersPerDescriptor << '\n';
-       s << "\tmaxStorageImagesPerDescriptor = " << value.maxStorageImagesPerDescriptor << '\n';
-       s << "\tmaxSampledImagesPerDescriptor = " << value.maxSampledImagesPerDescriptor << '\n';
-       s << "\tmaxPipelineLayouts = " << value.maxPipelineLayouts << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkObjectTableEntryNVX& value)
-{
-       s << "VkObjectTableEntryNVX = {\n";
-       s << "\ttype = " << value.type << '\n';
-       s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkObjectTablePipelineEntryNVX& value)
-{
-       s << "VkObjectTablePipelineEntryNVX = {\n";
-       s << "\ttype = " << value.type << '\n';
-       s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n';
-       s << "\tpipeline = " << value.pipeline << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkObjectTableDescriptorSetEntryNVX& value)
-{
-       s << "VkObjectTableDescriptorSetEntryNVX = {\n";
-       s << "\ttype = " << value.type << '\n';
-       s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n';
-       s << "\tpipelineLayout = " << value.pipelineLayout << '\n';
-       s << "\tdescriptorSet = " << value.descriptorSet << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkObjectTableVertexBufferEntryNVX& value)
-{
-       s << "VkObjectTableVertexBufferEntryNVX = {\n";
-       s << "\ttype = " << value.type << '\n';
-       s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n';
-       s << "\tbuffer = " << value.buffer << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkObjectTableIndexBufferEntryNVX& value)
-{
-       s << "VkObjectTableIndexBufferEntryNVX = {\n";
-       s << "\ttype = " << value.type << '\n';
-       s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n';
-       s << "\tbuffer = " << value.buffer << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkObjectTablePushConstantEntryNVX& value)
-{
-       s << "VkObjectTablePushConstantEntryNVX = {\n";
-       s << "\ttype = " << value.type << '\n';
-       s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n';
-       s << "\tpipelineLayout = " << value.pipelineLayout << '\n';
-       s << "\tstageFlags = " << getShaderStageFlagsStr(value.stageFlags) << '\n';
+       s << "\tsurfaceCapabilities = " << value.surfaceCapabilities << '\n';
        s << '}';
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePushDescriptorPropertiesKHR& value)
+std::ostream& operator<< (std::ostream& s, const VkSurfaceFormat2KHR& value)
 {
-       s << "VkPhysicalDevicePushDescriptorPropertiesKHR = {\n";
+       s << "VkSurfaceFormat2KHR = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\tmaxPushDescriptors = " << value.maxPushDescriptors << '\n';
-       s << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateEntryKHR& value)
-{
-       s << "VkDescriptorUpdateTemplateEntryKHR = {\n";
-       s << "\tdstBinding = " << value.dstBinding << '\n';
-       s << "\tdstArrayElement = " << value.dstArrayElement << '\n';
-       s << "\tdescriptorCount = " << value.descriptorCount << '\n';
-       s << "\tdescriptorType = " << value.descriptorType << '\n';
-       s << "\toffset = " << value.offset << '\n';
-       s << "\tstride = " << value.stride << '\n';
+       s << "\tsurfaceFormat = " << value.surfaceFormat << '\n';
        s << '}';
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateCreateInfoKHR& value)
+std::ostream& operator<< (std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value)
 {
-       s << "VkDescriptorUpdateTemplateCreateInfoKHR = {\n";
+       s << "VkDebugReportCallbackCreateInfoEXT = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\tflags = " << getDescriptorUpdateTemplateCreateFlagsKHRStr(value.flags) << '\n';
-       s << "\tdescriptorUpdateEntryCount = " << value.descriptorUpdateEntryCount << '\n';
-       s << "\tpDescriptorUpdateEntries = " << value.pDescriptorUpdateEntries << '\n';
-       s << "\ttemplateType = " << value.templateType << '\n';
-       s << "\tdescriptorSetLayout = " << value.descriptorSetLayout << '\n';
-       s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n';
-       s << "\tpipelineLayout = " << value.pipelineLayout << '\n';
-       s << "\tset = " << value.set << '\n';
+       s << "\tflags = " << getDebugReportFlagsEXTStr(value.flags) << '\n';
+       s << "\tpfnCallback = " << value.pfnCallback << '\n';
+       s << "\tpUserData = " << value.pUserData << '\n';
        s << '}';
        return s;
 }
index 9f8ede6..6cb7cb2 100644 (file)
@@ -1434,6 +1434,13 @@ struct VkPhysicalDeviceSparseImageFormatInfo2KHR
        VkImageTiling                   tiling;
 };
 
+struct VkPhysicalDevicePushDescriptorPropertiesKHR
+{
+       VkStructureType sType;
+       void*                   pNext;
+       deUint32                maxPushDescriptors;
+};
+
 struct VkRectLayerKHR
 {
        VkOffset2D      offset;
@@ -1455,6 +1462,37 @@ struct VkPresentRegionsKHR
        const VkPresentRegionKHR*       pRegions;
 };
 
+struct VkDescriptorUpdateTemplateEntryKHR
+{
+       deUint32                        dstBinding;
+       deUint32                        dstArrayElement;
+       deUint32                        descriptorCount;
+       VkDescriptorType        descriptorType;
+       deUintptr                       offset;
+       deUintptr                       stride;
+};
+
+struct VkDescriptorUpdateTemplateCreateInfoKHR
+{
+       VkStructureType                                                         sType;
+       void*                                                                           pNext;
+       VkDescriptorUpdateTemplateCreateFlagsKHR        flags;
+       deUint32                                                                        descriptorUpdateEntryCount;
+       const VkDescriptorUpdateTemplateEntryKHR*       pDescriptorUpdateEntries;
+       VkDescriptorUpdateTemplateTypeKHR                       templateType;
+       VkDescriptorSetLayout                                           descriptorSetLayout;
+       VkPipelineBindPoint                                                     pipelineBindPoint;
+       VkPipelineLayout                                                        pipelineLayout;
+       deUint32                                                                        set;
+};
+
+struct VkSharedPresentSurfaceCapabilitiesKHR
+{
+       VkStructureType         sType;
+       void*                           pNext;
+       VkImageUsageFlags       sharedPresentSupportedUsageFlags;
+};
+
 struct VkPhysicalDeviceSurfaceInfo2KHR
 {
        VkStructureType sType;
@@ -1476,13 +1514,6 @@ struct VkSurfaceFormat2KHR
        VkSurfaceFormatKHR      surfaceFormat;
 };
 
-struct VkSharedPresentSurfaceCapabilitiesKHR
-{
-       VkStructureType         sType;
-       void*                           pNext;
-       VkImageUsageFlags       sharedPresentSupportedUsageFlags;
-};
-
 struct VkDebugReportCallbackCreateInfoEXT
 {
        VkStructureType                                 sType;
@@ -1492,279 +1523,6 @@ struct VkDebugReportCallbackCreateInfoEXT
        void*                                                   pUserData;
 };
 
-struct VkPipelineRasterizationStateRasterizationOrderAMD
-{
-       VkStructureType                 sType;
-       const void*                             pNext;
-       VkRasterizationOrderAMD rasterizationOrder;
-};
-
-struct VkDebugMarkerObjectNameInfoEXT
-{
-       VkStructureType                         sType;
-       const void*                                     pNext;
-       VkDebugReportObjectTypeEXT      objectType;
-       deUint64                                        object;
-       const char*                                     pObjectName;
-};
-
-struct VkDebugMarkerObjectTagInfoEXT
-{
-       VkStructureType                         sType;
-       const void*                                     pNext;
-       VkDebugReportObjectTypeEXT      objectType;
-       deUint64                                        object;
-       deUint64                                        tagName;
-       deUintptr                                       tagSize;
-       const void*                                     pTag;
-};
-
-struct VkDebugMarkerMarkerInfoEXT
-{
-       VkStructureType sType;
-       const void*             pNext;
-       const char*             pMarkerName;
-       float                   color[4];
-};
-
-struct VkDedicatedAllocationImageCreateInfoNV
-{
-       VkStructureType sType;
-       const void*             pNext;
-       VkBool32                dedicatedAllocation;
-};
-
-struct VkDedicatedAllocationBufferCreateInfoNV
-{
-       VkStructureType sType;
-       const void*             pNext;
-       VkBool32                dedicatedAllocation;
-};
-
-struct VkDedicatedAllocationMemoryAllocateInfoNV
-{
-       VkStructureType sType;
-       const void*             pNext;
-       VkImage                 image;
-       VkBuffer                buffer;
-};
-
-struct VkExternalImageFormatPropertiesNV
-{
-       VkImageFormatProperties                         imageFormatProperties;
-       VkExternalMemoryFeatureFlagsNV          externalMemoryFeatures;
-       VkExternalMemoryHandleTypeFlagsNV       exportFromImportedHandleTypes;
-       VkExternalMemoryHandleTypeFlagsNV       compatibleHandleTypes;
-};
-
-struct VkExternalMemoryImageCreateInfoNV
-{
-       VkStructureType                                         sType;
-       const void*                                                     pNext;
-       VkExternalMemoryHandleTypeFlagsNV       handleTypes;
-};
-
-struct VkExportMemoryAllocateInfoNV
-{
-       VkStructureType                                         sType;
-       const void*                                                     pNext;
-       VkExternalMemoryHandleTypeFlagsNV       handleTypes;
-};
-
-struct VkImportMemoryWin32HandleInfoNV
-{
-       VkStructureType                                         sType;
-       const void*                                                     pNext;
-       VkExternalMemoryHandleTypeFlagsNV       handleType;
-       pt::Win32Handle                                         handle;
-};
-
-struct VkExportMemoryWin32HandleInfoNV
-{
-       VkStructureType                                 sType;
-       const void*                                             pNext;
-       pt::Win32SecurityAttributesPtr  pAttributes;
-       deUint32                                                dwAccess;
-};
-
-struct VkWin32KeyedMutexAcquireReleaseInfoNV
-{
-       VkStructureType                 sType;
-       const void*                             pNext;
-       deUint32                                acquireCount;
-       const VkDeviceMemory*   pAcquireSyncs;
-       const deUint64*                 pAcquireKeys;
-       const deUint32*                 pAcquireTimeoutMilliseconds;
-       deUint32                                releaseCount;
-       const VkDeviceMemory*   pReleaseSyncs;
-       const deUint64*                 pReleaseKeys;
-};
-
-struct VkValidationFlagsEXT
-{
-       VkStructureType                 sType;
-       const void*                             pNext;
-       deUint32                                disabledValidationCheckCount;
-       VkValidationCheckEXT*   pDisabledValidationChecks;
-};
-
-struct VkDeviceGeneratedCommandsFeaturesNVX
-{
-       VkStructureType sType;
-       const void*             pNext;
-       VkBool32                computeBindingPointSupport;
-};
-
-struct VkDeviceGeneratedCommandsLimitsNVX
-{
-       VkStructureType sType;
-       const void*             pNext;
-       deUint32                maxIndirectCommandsLayoutTokenCount;
-       deUint32                maxObjectEntryCounts;
-       deUint32                minSequenceCountBufferOffsetAlignment;
-       deUint32                minSequenceIndexBufferOffsetAlignment;
-       deUint32                minCommandsTokenBufferOffsetAlignment;
-};
-
-struct VkIndirectCommandsTokenNVX
-{
-       VkIndirectCommandsTokenTypeNVX  tokenType;
-       VkBuffer                                                buffer;
-       VkDeviceSize                                    offset;
-};
-
-struct VkIndirectCommandsLayoutTokenNVX
-{
-       VkIndirectCommandsTokenTypeNVX  tokenType;
-       deUint32                                                bindingUnit;
-       deUint32                                                dynamicCount;
-       deUint32                                                divisor;
-};
-
-struct VkIndirectCommandsLayoutCreateInfoNVX
-{
-       VkStructureType                                                 sType;
-       const void*                                                             pNext;
-       VkPipelineBindPoint                                             pipelineBindPoint;
-       VkIndirectCommandsLayoutUsageFlagsNVX   flags;
-       deUint32                                                                tokenCount;
-       const VkIndirectCommandsLayoutTokenNVX* pTokens;
-};
-
-struct VkCmdProcessCommandsInfoNVX
-{
-       VkStructureType                                         sType;
-       const void*                                                     pNext;
-       VkObjectTableNVX                                        objectTable;
-       VkIndirectCommandsLayoutNVX                     indirectCommandsLayout;
-       deUint32                                                        indirectCommandsTokenCount;
-       const VkIndirectCommandsTokenNVX*       pIndirectCommandsTokens;
-       deUint32                                                        maxSequencesCount;
-       VkCommandBuffer                                         targetCommandBuffer;
-       VkBuffer                                                        sequencesCountBuffer;
-       VkDeviceSize                                            sequencesCountOffset;
-       VkBuffer                                                        sequencesIndexBuffer;
-       VkDeviceSize                                            sequencesIndexOffset;
-};
-
-struct VkCmdReserveSpaceForCommandsInfoNVX
-{
-       VkStructureType                         sType;
-       const void*                                     pNext;
-       VkObjectTableNVX                        objectTable;
-       VkIndirectCommandsLayoutNVX     indirectCommandsLayout;
-       deUint32                                        maxSequencesCount;
-};
-
-struct VkObjectTableCreateInfoNVX
-{
-       VkStructureType                                         sType;
-       const void*                                                     pNext;
-       deUint32                                                        objectCount;
-       const VkObjectEntryTypeNVX*                     pObjectEntryTypes;
-       const deUint32*                                         pObjectEntryCounts;
-       const VkObjectEntryUsageFlagsNVX*       pObjectEntryUsageFlags;
-       deUint32                                                        maxUniformBuffersPerDescriptor;
-       deUint32                                                        maxStorageBuffersPerDescriptor;
-       deUint32                                                        maxStorageImagesPerDescriptor;
-       deUint32                                                        maxSampledImagesPerDescriptor;
-       deUint32                                                        maxPipelineLayouts;
-};
-
-struct VkObjectTableEntryNVX
-{
-       VkObjectEntryTypeNVX            type;
-       VkObjectEntryUsageFlagsNVX      flags;
-};
-
-struct VkObjectTablePipelineEntryNVX
-{
-       VkObjectEntryTypeNVX            type;
-       VkObjectEntryUsageFlagsNVX      flags;
-       VkPipeline                                      pipeline;
-};
-
-struct VkObjectTableDescriptorSetEntryNVX
-{
-       VkObjectEntryTypeNVX            type;
-       VkObjectEntryUsageFlagsNVX      flags;
-       VkPipelineLayout                        pipelineLayout;
-       VkDescriptorSet                         descriptorSet;
-};
-
-struct VkObjectTableVertexBufferEntryNVX
-{
-       VkObjectEntryTypeNVX            type;
-       VkObjectEntryUsageFlagsNVX      flags;
-       VkBuffer                                        buffer;
-};
-
-struct VkObjectTableIndexBufferEntryNVX
-{
-       VkObjectEntryTypeNVX            type;
-       VkObjectEntryUsageFlagsNVX      flags;
-       VkBuffer                                        buffer;
-};
-
-struct VkObjectTablePushConstantEntryNVX
-{
-       VkObjectEntryTypeNVX            type;
-       VkObjectEntryUsageFlagsNVX      flags;
-       VkPipelineLayout                        pipelineLayout;
-       VkShaderStageFlags                      stageFlags;
-};
-
-struct VkPhysicalDevicePushDescriptorPropertiesKHR
-{
-       VkStructureType sType;
-       void*                   pNext;
-       deUint32                maxPushDescriptors;
-};
-
-struct VkDescriptorUpdateTemplateEntryKHR
-{
-       deUint32                        dstBinding;
-       deUint32                        dstArrayElement;
-       deUint32                        descriptorCount;
-       VkDescriptorType        descriptorType;
-       deUintptr                       offset;
-       deUintptr                       stride;
-};
-
-struct VkDescriptorUpdateTemplateCreateInfoKHR
-{
-       VkStructureType                                                         sType;
-       void*                                                                           pNext;
-       VkDescriptorUpdateTemplateCreateFlagsKHR        flags;
-       deUint32                                                                        descriptorUpdateEntryCount;
-       const VkDescriptorUpdateTemplateEntryKHR*       pDescriptorUpdateEntries;
-       VkDescriptorUpdateTemplateTypeKHR                       templateType;
-       VkDescriptorSetLayout                                           descriptorSetLayout;
-       VkPipelineBindPoint                                                     pipelineBindPoint;
-       VkPipelineLayout                                                        pipelineLayout;
-       deUint32                                                                        set;
-};
-
 struct VkRefreshCycleDurationGOOGLE
 {
        deUint64        refreshDuration;
index 09974fd..22a7632 100644 (file)
@@ -392,80 +392,6 @@ inline VkPresentRegionKHR makePresentRegionKHR (deUint32 rectangleCount, const V
        return res;
 }
 
-inline VkIndirectCommandsTokenNVX makeIndirectCommandsTokenNVX (VkIndirectCommandsTokenTypeNVX tokenType, VkBuffer buffer, VkDeviceSize offset)
-{
-       VkIndirectCommandsTokenNVX res;
-       res.tokenType   = tokenType;
-       res.buffer              = buffer;
-       res.offset              = offset;
-       return res;
-}
-
-inline VkIndirectCommandsLayoutTokenNVX makeIndirectCommandsLayoutTokenNVX (VkIndirectCommandsTokenTypeNVX tokenType, deUint32 bindingUnit, deUint32 dynamicCount, deUint32 divisor)
-{
-       VkIndirectCommandsLayoutTokenNVX res;
-       res.tokenType           = tokenType;
-       res.bindingUnit         = bindingUnit;
-       res.dynamicCount        = dynamicCount;
-       res.divisor                     = divisor;
-       return res;
-}
-
-inline VkObjectTableEntryNVX makeObjectTableEntryNVX (VkObjectEntryTypeNVX type, VkObjectEntryUsageFlagsNVX flags)
-{
-       VkObjectTableEntryNVX res;
-       res.type        = type;
-       res.flags       = flags;
-       return res;
-}
-
-inline VkObjectTablePipelineEntryNVX makeObjectTablePipelineEntryNVX (VkObjectEntryTypeNVX type, VkObjectEntryUsageFlagsNVX flags, VkPipeline pipeline)
-{
-       VkObjectTablePipelineEntryNVX res;
-       res.type                = type;
-       res.flags               = flags;
-       res.pipeline    = pipeline;
-       return res;
-}
-
-inline VkObjectTableDescriptorSetEntryNVX makeObjectTableDescriptorSetEntryNVX (VkObjectEntryTypeNVX type, VkObjectEntryUsageFlagsNVX flags, VkPipelineLayout pipelineLayout, VkDescriptorSet descriptorSet)
-{
-       VkObjectTableDescriptorSetEntryNVX res;
-       res.type                        = type;
-       res.flags                       = flags;
-       res.pipelineLayout      = pipelineLayout;
-       res.descriptorSet       = descriptorSet;
-       return res;
-}
-
-inline VkObjectTableVertexBufferEntryNVX makeObjectTableVertexBufferEntryNVX (VkObjectEntryTypeNVX type, VkObjectEntryUsageFlagsNVX flags, VkBuffer buffer)
-{
-       VkObjectTableVertexBufferEntryNVX res;
-       res.type        = type;
-       res.flags       = flags;
-       res.buffer      = buffer;
-       return res;
-}
-
-inline VkObjectTableIndexBufferEntryNVX makeObjectTableIndexBufferEntryNVX (VkObjectEntryTypeNVX type, VkObjectEntryUsageFlagsNVX flags, VkBuffer buffer)
-{
-       VkObjectTableIndexBufferEntryNVX res;
-       res.type        = type;
-       res.flags       = flags;
-       res.buffer      = buffer;
-       return res;
-}
-
-inline VkObjectTablePushConstantEntryNVX makeObjectTablePushConstantEntryNVX (VkObjectEntryTypeNVX type, VkObjectEntryUsageFlagsNVX flags, VkPipelineLayout pipelineLayout, VkShaderStageFlags stageFlags)
-{
-       VkObjectTablePushConstantEntryNVX res;
-       res.type                        = type;
-       res.flags                       = flags;
-       res.pipelineLayout      = pipelineLayout;
-       res.stageFlags          = stageFlags;
-       return res;
-}
-
 inline VkDescriptorUpdateTemplateEntryKHR makeDescriptorUpdateTemplateEntryKHR (deUint32 dstBinding, deUint32 dstArrayElement, deUint32 descriptorCount, VkDescriptorType descriptorType, deUintptr offset, deUintptr stride)
 {
        VkDescriptorUpdateTemplateEntryKHR res;
index 51e8653..b0a5bd6 100644 (file)
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  */
-virtual void           destroyDevice                                                                   (VkDevice device, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual void           getDeviceQueue                                                                  (VkDevice device, deUint32 queueFamilyIndex, deUint32 queueIndex, VkQueue* pQueue) const = 0;
-virtual VkResult       queueSubmit                                                                             (VkQueue queue, deUint32 submitCount, const VkSubmitInfo* pSubmits, VkFence fence) const = 0;
-virtual VkResult       queueWaitIdle                                                                   (VkQueue queue) const = 0;
-virtual VkResult       deviceWaitIdle                                                                  (VkDevice device) const = 0;
-virtual VkResult       allocateMemory                                                                  (VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory) const = 0;
-virtual void           freeMemory                                                                              (VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       mapMemory                                                                               (VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData) const = 0;
-virtual void           unmapMemory                                                                             (VkDevice device, VkDeviceMemory memory) const = 0;
-virtual VkResult       flushMappedMemoryRanges                                                 (VkDevice device, deUint32 memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const = 0;
-virtual VkResult       invalidateMappedMemoryRanges                                    (VkDevice device, deUint32 memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const = 0;
-virtual void           getDeviceMemoryCommitment                                               (VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes) const = 0;
-virtual VkResult       bindBufferMemory                                                                (VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset) const = 0;
-virtual VkResult       bindImageMemory                                                                 (VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset) const = 0;
-virtual void           getBufferMemoryRequirements                                             (VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements) const = 0;
-virtual void           getImageMemoryRequirements                                              (VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements) const = 0;
-virtual void           getImageSparseMemoryRequirements                                (VkDevice device, VkImage image, deUint32* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements) const = 0;
-virtual VkResult       queueBindSparse                                                                 (VkQueue queue, deUint32 bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence) const = 0;
-virtual VkResult       createFence                                                                             (VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const = 0;
-virtual void           destroyFence                                                                    (VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       resetFences                                                                             (VkDevice device, deUint32 fenceCount, const VkFence* pFences) const = 0;
-virtual VkResult       getFenceStatus                                                                  (VkDevice device, VkFence fence) const = 0;
-virtual VkResult       waitForFences                                                                   (VkDevice device, deUint32 fenceCount, const VkFence* pFences, VkBool32 waitAll, deUint64 timeout) const = 0;
-virtual VkResult       createSemaphore                                                                 (VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore) const = 0;
-virtual void           destroySemaphore                                                                (VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createEvent                                                                             (VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent) const = 0;
-virtual void           destroyEvent                                                                    (VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       getEventStatus                                                                  (VkDevice device, VkEvent event) const = 0;
-virtual VkResult       setEvent                                                                                (VkDevice device, VkEvent event) const = 0;
-virtual VkResult       resetEvent                                                                              (VkDevice device, VkEvent event) const = 0;
-virtual VkResult       createQueryPool                                                                 (VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool) const = 0;
-virtual void           destroyQueryPool                                                                (VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       getQueryPoolResults                                                             (VkDevice device, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount, deUintptr dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags) const = 0;
-virtual VkResult       createBuffer                                                                    (VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer) const = 0;
-virtual void           destroyBuffer                                                                   (VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createBufferView                                                                (VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView) const = 0;
-virtual void           destroyBufferView                                                               (VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createImage                                                                             (VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage) const = 0;
-virtual void           destroyImage                                                                    (VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual void           getImageSubresourceLayout                                               (VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout) const = 0;
-virtual VkResult       createImageView                                                                 (VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView) const = 0;
-virtual void           destroyImageView                                                                (VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createShaderModule                                                              (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule) const = 0;
-virtual void           destroyShaderModule                                                             (VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createPipelineCache                                                             (VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache) const = 0;
-virtual void           destroyPipelineCache                                                    (VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       getPipelineCacheData                                                    (VkDevice device, VkPipelineCache pipelineCache, deUintptr* pDataSize, void* pData) const = 0;
-virtual VkResult       mergePipelineCaches                                                             (VkDevice device, VkPipelineCache dstCache, deUint32 srcCacheCount, const VkPipelineCache* pSrcCaches) const = 0;
-virtual VkResult       createGraphicsPipelines                                                 (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
-virtual VkResult       createComputePipelines                                                  (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
-virtual void           destroyPipeline                                                                 (VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createPipelineLayout                                                    (VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout) const = 0;
-virtual void           destroyPipelineLayout                                                   (VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createSampler                                                                   (VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler) const = 0;
-virtual void           destroySampler                                                                  (VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createDescriptorSetLayout                                               (VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout) const = 0;
-virtual void           destroyDescriptorSetLayout                                              (VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createDescriptorPool                                                    (VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool) const = 0;
-virtual void           destroyDescriptorPool                                                   (VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       resetDescriptorPool                                                             (VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags) const = 0;
-virtual VkResult       allocateDescriptorSets                                                  (VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets) const = 0;
-virtual VkResult       freeDescriptorSets                                                              (VkDevice device, VkDescriptorPool descriptorPool, deUint32 descriptorSetCount, const VkDescriptorSet* pDescriptorSets) const = 0;
-virtual void           updateDescriptorSets                                                    (VkDevice device, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, deUint32 descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies) const = 0;
-virtual VkResult       createFramebuffer                                                               (VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer) const = 0;
-virtual void           destroyFramebuffer                                                              (VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createRenderPass                                                                (VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass) const = 0;
-virtual void           destroyRenderPass                                                               (VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual void           getRenderAreaGranularity                                                (VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity) const = 0;
-virtual VkResult       createCommandPool                                                               (VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool) const = 0;
-virtual void           destroyCommandPool                                                              (VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       resetCommandPool                                                                (VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags) const = 0;
-virtual VkResult       allocateCommandBuffers                                                  (VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers) const = 0;
-virtual void           freeCommandBuffers                                                              (VkDevice device, VkCommandPool commandPool, deUint32 commandBufferCount, const VkCommandBuffer* pCommandBuffers) const = 0;
-virtual VkResult       beginCommandBuffer                                                              (VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo) const = 0;
-virtual VkResult       endCommandBuffer                                                                (VkCommandBuffer commandBuffer) const = 0;
-virtual VkResult       resetCommandBuffer                                                              (VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags) const = 0;
-virtual void           cmdBindPipeline                                                                 (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline) const = 0;
-virtual void           cmdSetViewport                                                                  (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewport* pViewports) const = 0;
-virtual void           cmdSetScissor                                                                   (VkCommandBuffer commandBuffer, deUint32 firstScissor, deUint32 scissorCount, const VkRect2D* pScissors) const = 0;
-virtual void           cmdSetLineWidth                                                                 (VkCommandBuffer commandBuffer, float lineWidth) const = 0;
-virtual void           cmdSetDepthBias                                                                 (VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor) const = 0;
-virtual void           cmdSetBlendConstants                                                    (VkCommandBuffer commandBuffer, const float blendConstants[4]) const = 0;
-virtual void           cmdSetDepthBounds                                                               (VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds) const = 0;
-virtual void           cmdSetStencilCompareMask                                                (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 compareMask) const = 0;
-virtual void           cmdSetStencilWriteMask                                                  (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 writeMask) const = 0;
-virtual void           cmdSetStencilReference                                                  (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 reference) const = 0;
-virtual void           cmdBindDescriptorSets                                                   (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 firstSet, deUint32 descriptorSetCount, const VkDescriptorSet* pDescriptorSets, deUint32 dynamicOffsetCount, const deUint32* pDynamicOffsets) const = 0;
-virtual void           cmdBindIndexBuffer                                                              (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType) const = 0;
-virtual void           cmdBindVertexBuffers                                                    (VkCommandBuffer commandBuffer, deUint32 firstBinding, deUint32 bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets) const = 0;
-virtual void           cmdDraw                                                                                 (VkCommandBuffer commandBuffer, deUint32 vertexCount, deUint32 instanceCount, deUint32 firstVertex, deUint32 firstInstance) const = 0;
-virtual void           cmdDrawIndexed                                                                  (VkCommandBuffer commandBuffer, deUint32 indexCount, deUint32 instanceCount, deUint32 firstIndex, deInt32 vertexOffset, deUint32 firstInstance) const = 0;
-virtual void           cmdDrawIndirect                                                                 (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride) const = 0;
-virtual void           cmdDrawIndexedIndirect                                                  (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride) const = 0;
-virtual void           cmdDispatch                                                                             (VkCommandBuffer commandBuffer, deUint32 x, deUint32 y, deUint32 z) const = 0;
-virtual void           cmdDispatchIndirect                                                             (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset) const = 0;
-virtual void           cmdCopyBuffer                                                                   (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferCopy* pRegions) const = 0;
-virtual void           cmdCopyImage                                                                    (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageCopy* pRegions) const = 0;
-virtual void           cmdBlitImage                                                                    (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageBlit* pRegions, VkFilter filter) const = 0;
-virtual void           cmdCopyBufferToImage                                                    (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkBufferImageCopy* pRegions) const = 0;
-virtual void           cmdCopyImageToBuffer                                                    (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferImageCopy* pRegions) const = 0;
-virtual void           cmdUpdateBuffer                                                                 (VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData) const = 0;
-virtual void           cmdFillBuffer                                                                   (VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, deUint32 data) const = 0;
-virtual void           cmdClearColorImage                                                              (VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, deUint32 rangeCount, const VkImageSubresourceRange* pRanges) const = 0;
-virtual void           cmdClearDepthStencilImage                                               (VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, deUint32 rangeCount, const VkImageSubresourceRange* pRanges) const = 0;
-virtual void           cmdClearAttachments                                                             (VkCommandBuffer commandBuffer, deUint32 attachmentCount, const VkClearAttachment* pAttachments, deUint32 rectCount, const VkClearRect* pRects) const = 0;
-virtual void           cmdResolveImage                                                                 (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageResolve* pRegions) const = 0;
-virtual void           cmdSetEvent                                                                             (VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const = 0;
-virtual void           cmdResetEvent                                                                   (VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const = 0;
-virtual void           cmdWaitEvents                                                                   (VkCommandBuffer commandBuffer, deUint32 eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, deUint32 memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, deUint32 bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, deUint32 imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const = 0;
-virtual void           cmdPipelineBarrier                                                              (VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, deUint32 memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, deUint32 bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, deUint32 imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const = 0;
-virtual void           cmdBeginQuery                                                                   (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 query, VkQueryControlFlags flags) const = 0;
-virtual void           cmdEndQuery                                                                             (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 query) const = 0;
-virtual void           cmdResetQueryPool                                                               (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount) const = 0;
-virtual void           cmdWriteTimestamp                                                               (VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, deUint32 query) const = 0;
-virtual void           cmdCopyQueryPoolResults                                                 (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags) const = 0;
-virtual void           cmdPushConstants                                                                (VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, deUint32 offset, deUint32 size, const void* pValues) const = 0;
-virtual void           cmdBeginRenderPass                                                              (VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents) const = 0;
-virtual void           cmdNextSubpass                                                                  (VkCommandBuffer commandBuffer, VkSubpassContents contents) const = 0;
-virtual void           cmdEndRenderPass                                                                (VkCommandBuffer commandBuffer) const = 0;
-virtual void           cmdExecuteCommands                                                              (VkCommandBuffer commandBuffer, deUint32 commandBufferCount, const VkCommandBuffer* pCommandBuffers) const = 0;
-virtual VkResult       createSwapchainKHR                                                              (VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain) const = 0;
-virtual void           destroySwapchainKHR                                                             (VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       getSwapchainImagesKHR                                                   (VkDevice device, VkSwapchainKHR swapchain, deUint32* pSwapchainImageCount, VkImage* pSwapchainImages) const = 0;
-virtual VkResult       acquireNextImageKHR                                                             (VkDevice device, VkSwapchainKHR swapchain, deUint64 timeout, VkSemaphore semaphore, VkFence fence, deUint32* pImageIndex) const = 0;
-virtual VkResult       queuePresentKHR                                                                 (VkQueue queue, const VkPresentInfoKHR* pPresentInfo) const = 0;
-virtual VkResult       createSharedSwapchainsKHR                                               (VkDevice device, deUint32 swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains) const = 0;
-virtual void           trimCommandPoolKHR                                                              (VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags) const = 0;
-virtual VkResult       getSwapchainStatusKHR                                                   (VkDevice device, VkSwapchainKHR swapchain) const = 0;
-virtual VkResult       debugMarkerSetObjectTagEXT                                              (VkDevice device, VkDebugMarkerObjectTagInfoEXT* pTagInfo) const = 0;
-virtual VkResult       debugMarkerSetObjectNameEXT                                             (VkDevice device, VkDebugMarkerObjectNameInfoEXT* pNameInfo) const = 0;
-virtual void           cmdDebugMarkerBeginEXT                                                  (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const = 0;
-virtual void           cmdDebugMarkerEndEXT                                                    (VkCommandBuffer commandBuffer) const = 0;
-virtual void           cmdDebugMarkerInsertEXT                                                 (VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const = 0;
-virtual void           cmdDrawIndirectCountAMD                                                 (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride) const = 0;
-virtual void           cmdDrawIndexedIndirectCountAMD                                  (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, deUint32 maxDrawCount, deUint32 stride) const = 0;
-virtual VkResult       getMemoryWin32HandleNV                                                  (VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, pt::Win32Handle* pHandle) const = 0;
-virtual void           cmdProcessCommandsNVX                                                   (VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo) const = 0;
-virtual void           cmdReserveSpaceForCommandsNVX                                   (VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo) const = 0;
-virtual VkResult       createIndirectCommandsLayoutNVX                                 (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout) const = 0;
-virtual void           destroyIndirectCommandsLayoutNVX                                (VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       createObjectTableNVX                                                    (VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable) const = 0;
-virtual void           destroyObjectTableNVX                                                   (VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual VkResult       registerObjectsNVX                                                              (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectTableEntryNVX* const* ppObjectTableEntries, const deUint32* pObjectIndices) const = 0;
-virtual VkResult       unregisterObjectsNVX                                                    (VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const deUint32* pObjectIndices) const = 0;
-virtual void           getPhysicalDeviceGeneratedCommandsPropertiesNVX (VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits) const = 0;
-virtual void           cmdPushDescriptorSetKHR                                                 (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 set, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites) const = 0;
-virtual VkResult       createDescriptorUpdateTemplateKHR                               (VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate) const = 0;
-virtual void           destroyDescriptorUpdateTemplateKHR                              (VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator) const = 0;
-virtual void           updateDescriptorSetWithTemplateKHR                              (VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData) const = 0;
-virtual void           cmdPushDescriptorSetWithTemplateKHR                             (VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, deUint32 set, const void* pData) const = 0;
-virtual VkResult       getRefreshCycleDurationGOOGLE                                   (VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) const = 0;
-virtual VkResult       getPastPresentationTimingGOOGLE                                 (VkDevice device, VkSwapchainKHR swapchain, deUint32* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings) const = 0;
+virtual void           destroyDevice                                           (VkDevice device, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual void           getDeviceQueue                                          (VkDevice device, deUint32 queueFamilyIndex, deUint32 queueIndex, VkQueue* pQueue) const = 0;
+virtual VkResult       queueSubmit                                                     (VkQueue queue, deUint32 submitCount, const VkSubmitInfo* pSubmits, VkFence fence) const = 0;
+virtual VkResult       queueWaitIdle                                           (VkQueue queue) const = 0;
+virtual VkResult       deviceWaitIdle                                          (VkDevice device) const = 0;
+virtual VkResult       allocateMemory                                          (VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory) const = 0;
+virtual void           freeMemory                                                      (VkDevice device, VkDeviceMemory memory, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       mapMemory                                                       (VkDevice device, VkDeviceMemory memory, VkDeviceSize offset, VkDeviceSize size, VkMemoryMapFlags flags, void** ppData) const = 0;
+virtual void           unmapMemory                                                     (VkDevice device, VkDeviceMemory memory) const = 0;
+virtual VkResult       flushMappedMemoryRanges                         (VkDevice device, deUint32 memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const = 0;
+virtual VkResult       invalidateMappedMemoryRanges            (VkDevice device, deUint32 memoryRangeCount, const VkMappedMemoryRange* pMemoryRanges) const = 0;
+virtual void           getDeviceMemoryCommitment                       (VkDevice device, VkDeviceMemory memory, VkDeviceSize* pCommittedMemoryInBytes) const = 0;
+virtual VkResult       bindBufferMemory                                        (VkDevice device, VkBuffer buffer, VkDeviceMemory memory, VkDeviceSize memoryOffset) const = 0;
+virtual VkResult       bindImageMemory                                         (VkDevice device, VkImage image, VkDeviceMemory memory, VkDeviceSize memoryOffset) const = 0;
+virtual void           getBufferMemoryRequirements                     (VkDevice device, VkBuffer buffer, VkMemoryRequirements* pMemoryRequirements) const = 0;
+virtual void           getImageMemoryRequirements                      (VkDevice device, VkImage image, VkMemoryRequirements* pMemoryRequirements) const = 0;
+virtual void           getImageSparseMemoryRequirements        (VkDevice device, VkImage image, deUint32* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements) const = 0;
+virtual VkResult       queueBindSparse                                         (VkQueue queue, deUint32 bindInfoCount, const VkBindSparseInfo* pBindInfo, VkFence fence) const = 0;
+virtual VkResult       createFence                                                     (VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const = 0;
+virtual void           destroyFence                                            (VkDevice device, VkFence fence, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       resetFences                                                     (VkDevice device, deUint32 fenceCount, const VkFence* pFences) const = 0;
+virtual VkResult       getFenceStatus                                          (VkDevice device, VkFence fence) const = 0;
+virtual VkResult       waitForFences                                           (VkDevice device, deUint32 fenceCount, const VkFence* pFences, VkBool32 waitAll, deUint64 timeout) const = 0;
+virtual VkResult       createSemaphore                                         (VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSemaphore* pSemaphore) const = 0;
+virtual void           destroySemaphore                                        (VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createEvent                                                     (VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkEvent* pEvent) const = 0;
+virtual void           destroyEvent                                            (VkDevice device, VkEvent event, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       getEventStatus                                          (VkDevice device, VkEvent event) const = 0;
+virtual VkResult       setEvent                                                        (VkDevice device, VkEvent event) const = 0;
+virtual VkResult       resetEvent                                                      (VkDevice device, VkEvent event) const = 0;
+virtual VkResult       createQueryPool                                         (VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkQueryPool* pQueryPool) const = 0;
+virtual void           destroyQueryPool                                        (VkDevice device, VkQueryPool queryPool, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       getQueryPoolResults                                     (VkDevice device, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount, deUintptr dataSize, void* pData, VkDeviceSize stride, VkQueryResultFlags flags) const = 0;
+virtual VkResult       createBuffer                                            (VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBuffer* pBuffer) const = 0;
+virtual void           destroyBuffer                                           (VkDevice device, VkBuffer buffer, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createBufferView                                        (VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferView* pView) const = 0;
+virtual void           destroyBufferView                                       (VkDevice device, VkBufferView bufferView, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createImage                                                     (VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImage* pImage) const = 0;
+virtual void           destroyImage                                            (VkDevice device, VkImage image, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual void           getImageSubresourceLayout                       (VkDevice device, VkImage image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout) const = 0;
+virtual VkResult       createImageView                                         (VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkImageView* pView) const = 0;
+virtual void           destroyImageView                                        (VkDevice device, VkImageView imageView, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createShaderModule                                      (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkShaderModule* pShaderModule) const = 0;
+virtual void           destroyShaderModule                                     (VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createPipelineCache                                     (VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineCache* pPipelineCache) const = 0;
+virtual void           destroyPipelineCache                            (VkDevice device, VkPipelineCache pipelineCache, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       getPipelineCacheData                            (VkDevice device, VkPipelineCache pipelineCache, deUintptr* pDataSize, void* pData) const = 0;
+virtual VkResult       mergePipelineCaches                                     (VkDevice device, VkPipelineCache dstCache, deUint32 srcCacheCount, const VkPipelineCache* pSrcCaches) const = 0;
+virtual VkResult       createGraphicsPipelines                         (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkGraphicsPipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
+virtual VkResult       createComputePipelines                          (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkComputePipelineCreateInfo* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
+virtual void           destroyPipeline                                         (VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createPipelineLayout                            (VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout) const = 0;
+virtual void           destroyPipelineLayout                           (VkDevice device, VkPipelineLayout pipelineLayout, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createSampler                                           (VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSampler* pSampler) const = 0;
+virtual void           destroySampler                                          (VkDevice device, VkSampler sampler, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createDescriptorSetLayout                       (VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorSetLayout* pSetLayout) const = 0;
+virtual void           destroyDescriptorSetLayout                      (VkDevice device, VkDescriptorSetLayout descriptorSetLayout, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createDescriptorPool                            (VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorPool* pDescriptorPool) const = 0;
+virtual void           destroyDescriptorPool                           (VkDevice device, VkDescriptorPool descriptorPool, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       resetDescriptorPool                                     (VkDevice device, VkDescriptorPool descriptorPool, VkDescriptorPoolResetFlags flags) const = 0;
+virtual VkResult       allocateDescriptorSets                          (VkDevice device, const VkDescriptorSetAllocateInfo* pAllocateInfo, VkDescriptorSet* pDescriptorSets) const = 0;
+virtual VkResult       freeDescriptorSets                                      (VkDevice device, VkDescriptorPool descriptorPool, deUint32 descriptorSetCount, const VkDescriptorSet* pDescriptorSets) const = 0;
+virtual void           updateDescriptorSets                            (VkDevice device, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites, deUint32 descriptorCopyCount, const VkCopyDescriptorSet* pDescriptorCopies) const = 0;
+virtual VkResult       createFramebuffer                                       (VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkFramebuffer* pFramebuffer) const = 0;
+virtual void           destroyFramebuffer                                      (VkDevice device, VkFramebuffer framebuffer, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       createRenderPass                                        (VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass) const = 0;
+virtual void           destroyRenderPass                                       (VkDevice device, VkRenderPass renderPass, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual void           getRenderAreaGranularity                        (VkDevice device, VkRenderPass renderPass, VkExtent2D* pGranularity) const = 0;
+virtual VkResult       createCommandPool                                       (VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkCommandPool* pCommandPool) const = 0;
+virtual void           destroyCommandPool                                      (VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       resetCommandPool                                        (VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags) const = 0;
+virtual VkResult       allocateCommandBuffers                          (VkDevice device, const VkCommandBufferAllocateInfo* pAllocateInfo, VkCommandBuffer* pCommandBuffers) const = 0;
+virtual void           freeCommandBuffers                                      (VkDevice device, VkCommandPool commandPool, deUint32 commandBufferCount, const VkCommandBuffer* pCommandBuffers) const = 0;
+virtual VkResult       beginCommandBuffer                                      (VkCommandBuffer commandBuffer, const VkCommandBufferBeginInfo* pBeginInfo) const = 0;
+virtual VkResult       endCommandBuffer                                        (VkCommandBuffer commandBuffer) const = 0;
+virtual VkResult       resetCommandBuffer                                      (VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags) const = 0;
+virtual void           cmdBindPipeline                                         (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline) const = 0;
+virtual void           cmdSetViewport                                          (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewport* pViewports) const = 0;
+virtual void           cmdSetScissor                                           (VkCommandBuffer commandBuffer, deUint32 firstScissor, deUint32 scissorCount, const VkRect2D* pScissors) const = 0;
+virtual void           cmdSetLineWidth                                         (VkCommandBuffer commandBuffer, float lineWidth) const = 0;
+virtual void           cmdSetDepthBias                                         (VkCommandBuffer commandBuffer, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor) const = 0;
+virtual void           cmdSetBlendConstants                            (VkCommandBuffer commandBuffer, const float blendConstants[4]) const = 0;
+virtual void           cmdSetDepthBounds                                       (VkCommandBuffer commandBuffer, float minDepthBounds, float maxDepthBounds) const = 0;
+virtual void           cmdSetStencilCompareMask                        (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 compareMask) const = 0;
+virtual void           cmdSetStencilWriteMask                          (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 writeMask) const = 0;
+virtual void           cmdSetStencilReference                          (VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, deUint32 reference) const = 0;
+virtual void           cmdBindDescriptorSets                           (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 firstSet, deUint32 descriptorSetCount, const VkDescriptorSet* pDescriptorSets, deUint32 dynamicOffsetCount, const deUint32* pDynamicOffsets) const = 0;
+virtual void           cmdBindIndexBuffer                                      (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkIndexType indexType) const = 0;
+virtual void           cmdBindVertexBuffers                            (VkCommandBuffer commandBuffer, deUint32 firstBinding, deUint32 bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets) const = 0;
+virtual void           cmdDraw                                                         (VkCommandBuffer commandBuffer, deUint32 vertexCount, deUint32 instanceCount, deUint32 firstVertex, deUint32 firstInstance) const = 0;
+virtual void           cmdDrawIndexed                                          (VkCommandBuffer commandBuffer, deUint32 indexCount, deUint32 instanceCount, deUint32 firstIndex, deInt32 vertexOffset, deUint32 firstInstance) const = 0;
+virtual void           cmdDrawIndirect                                         (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride) const = 0;
+virtual void           cmdDrawIndexedIndirect                          (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, deUint32 drawCount, deUint32 stride) const = 0;
+virtual void           cmdDispatch                                                     (VkCommandBuffer commandBuffer, deUint32 groupCountX, deUint32 groupCountY, deUint32 groupCountZ) const = 0;
+virtual void           cmdDispatchIndirect                                     (VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset) const = 0;
+virtual void           cmdCopyBuffer                                           (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferCopy* pRegions) const = 0;
+virtual void           cmdCopyImage                                            (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageCopy* pRegions) const = 0;
+virtual void           cmdBlitImage                                            (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageBlit* pRegions, VkFilter filter) const = 0;
+virtual void           cmdCopyBufferToImage                            (VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkBufferImageCopy* pRegions) const = 0;
+virtual void           cmdCopyImageToBuffer                            (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkBuffer dstBuffer, deUint32 regionCount, const VkBufferImageCopy* pRegions) const = 0;
+virtual void           cmdUpdateBuffer                                         (VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData) const = 0;
+virtual void           cmdFillBuffer                                           (VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, deUint32 data) const = 0;
+virtual void           cmdClearColorImage                                      (VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearColorValue* pColor, deUint32 rangeCount, const VkImageSubresourceRange* pRanges) const = 0;
+virtual void           cmdClearDepthStencilImage                       (VkCommandBuffer commandBuffer, VkImage image, VkImageLayout imageLayout, const VkClearDepthStencilValue* pDepthStencil, deUint32 rangeCount, const VkImageSubresourceRange* pRanges) const = 0;
+virtual void           cmdClearAttachments                                     (VkCommandBuffer commandBuffer, deUint32 attachmentCount, const VkClearAttachment* pAttachments, deUint32 rectCount, const VkClearRect* pRects) const = 0;
+virtual void           cmdResolveImage                                         (VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, deUint32 regionCount, const VkImageResolve* pRegions) const = 0;
+virtual void           cmdSetEvent                                                     (VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const = 0;
+virtual void           cmdResetEvent                                           (VkCommandBuffer commandBuffer, VkEvent event, VkPipelineStageFlags stageMask) const = 0;
+virtual void           cmdWaitEvents                                           (VkCommandBuffer commandBuffer, deUint32 eventCount, const VkEvent* pEvents, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, deUint32 memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, deUint32 bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, deUint32 imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const = 0;
+virtual void           cmdPipelineBarrier                                      (VkCommandBuffer commandBuffer, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, deUint32 memoryBarrierCount, const VkMemoryBarrier* pMemoryBarriers, deUint32 bufferMemoryBarrierCount, const VkBufferMemoryBarrier* pBufferMemoryBarriers, deUint32 imageMemoryBarrierCount, const VkImageMemoryBarrier* pImageMemoryBarriers) const = 0;
+virtual void           cmdBeginQuery                                           (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 query, VkQueryControlFlags flags) const = 0;
+virtual void           cmdEndQuery                                                     (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 query) const = 0;
+virtual void           cmdResetQueryPool                                       (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount) const = 0;
+virtual void           cmdWriteTimestamp                                       (VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, deUint32 query) const = 0;
+virtual void           cmdCopyQueryPoolResults                         (VkCommandBuffer commandBuffer, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize stride, VkQueryResultFlags flags) const = 0;
+virtual void           cmdPushConstants                                        (VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, deUint32 offset, deUint32 size, const void* pValues) const = 0;
+virtual void           cmdBeginRenderPass                                      (VkCommandBuffer commandBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkSubpassContents contents) const = 0;
+virtual void           cmdNextSubpass                                          (VkCommandBuffer commandBuffer, VkSubpassContents contents) const = 0;
+virtual void           cmdEndRenderPass                                        (VkCommandBuffer commandBuffer) const = 0;
+virtual void           cmdExecuteCommands                                      (VkCommandBuffer commandBuffer, deUint32 commandBufferCount, const VkCommandBuffer* pCommandBuffers) const = 0;
+virtual VkResult       createSwapchainKHR                                      (VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchain) const = 0;
+virtual void           destroySwapchainKHR                                     (VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult       getSwapchainImagesKHR                           (VkDevice device, VkSwapchainKHR swapchain, deUint32* pSwapchainImageCount, VkImage* pSwapchainImages) const = 0;
+virtual VkResult       acquireNextImageKHR                                     (VkDevice device, VkSwapchainKHR swapchain, deUint64 timeout, VkSemaphore semaphore, VkFence fence, deUint32* pImageIndex) const = 0;
+virtual VkResult       queuePresentKHR                                         (VkQueue queue, const VkPresentInfoKHR* pPresentInfo) const = 0;
+virtual VkResult       createSharedSwapchainsKHR                       (VkDevice device, deUint32 swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains) const = 0;
+virtual void           trimCommandPoolKHR                                      (VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags) const = 0;
+virtual void           cmdPushDescriptorSetKHR                         (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, deUint32 set, deUint32 descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites) const = 0;
+virtual VkResult       createDescriptorUpdateTemplateKHR       (VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate) const = 0;
+virtual void           destroyDescriptorUpdateTemplateKHR      (VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual void           updateDescriptorSetWithTemplateKHR      (VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData) const = 0;
+virtual void           cmdPushDescriptorSetWithTemplateKHR     (VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, deUint32 set, const void* pData) const = 0;
+virtual VkResult       getSwapchainStatusKHR                           (VkDevice device, VkSwapchainKHR swapchain) const = 0;
+virtual VkResult       getRefreshCycleDurationGOOGLE           (VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties) const = 0;
+virtual VkResult       getPastPresentationTimingGOOGLE         (VkDevice device, VkSwapchainKHR swapchain, deUint32* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings) const = 0;
index e168a07..b5e9fcd 100644 (file)
@@ -49,4 +49,3 @@ virtual VkResult                      getPhysicalDeviceSurfaceFormats2KHR                                     (VkPhysicalDevice phy
 virtual VkResult                       createDebugReportCallbackEXT                                            (VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugReportCallbackEXT* pCallback) const = 0;
 virtual void                           destroyDebugReportCallbackEXT                                           (VkInstance instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks* pAllocator) const = 0;
 virtual void                           debugReportMessageEXT                                                           (VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, deUint64 object, deUintptr location, deInt32 messageCode, const char* pLayerPrefix, const char* pMessage) const = 0;
-virtual VkResult                       getPhysicalDeviceExternalImageFormatPropertiesNV        (VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties) const = 0;
index 6e21052..8f72d51 100644 (file)
@@ -38,89 +38,6 @@ INL_HEADER = """\
  */\
 """
 
-PLATFORM_FUNCTIONS     = [
-       "vkCreateInstance",
-       "vkGetInstanceProcAddr",
-       "vkEnumerateInstanceExtensionProperties",
-       "vkEnumerateInstanceLayerProperties",
-]
-INSTANCE_FUNCTIONS     = [
-       "vkDestroyInstance",
-       "vkEnumeratePhysicalDevices",
-       "vkGetPhysicalDeviceFeatures",
-       "vkGetPhysicalDeviceFormatProperties",
-       "vkGetPhysicalDeviceImageFormatProperties",
-       "vkGetPhysicalDeviceSparseImageFormatProperties",
-       "vkGetPhysicalDeviceLimits",
-       "vkGetPhysicalDeviceProperties",
-       "vkGetPhysicalDeviceQueueFamilyProperties",
-       "vkGetPhysicalDeviceMemoryProperties",
-       "vkEnumerateDeviceExtensionProperties",
-       "vkEnumerateDeviceLayerProperties",
-       "vkCreateDevice",
-       "vkGetDeviceProcAddr",
-
-       # VK_KHR_surface
-       "vkDestroySurfaceKHR",
-       "vkGetPhysicalDeviceSurfaceSupportKHR",
-       "vkGetPhysicalDeviceSurfaceCapabilitiesKHR",
-       "vkGetPhysicalDeviceSurfaceFormatsKHR",
-       "vkGetPhysicalDeviceSurfacePresentModesKHR",
-
-       # VK_KHR_display
-       "vkGetPhysicalDeviceDisplayPropertiesKHR",
-       "vkGetPhysicalDeviceDisplayPlanePropertiesKHR",
-       "vkGetDisplayPlaneSupportedDisplaysKHR",
-       "vkGetDisplayModePropertiesKHR",
-       "vkCreateDisplayModeKHR",
-       "vkGetDisplayPlaneCapabilitiesKHR",
-       "vkCreateDisplayPlaneSurfaceKHR",
-
-       # VK_KHR_xlib_surface
-       "vkCreateXlibSurfaceKHR",
-       "vkGetPhysicalDeviceXlibPresentationSupportKHR",
-
-       # VK_KHR_xcb_surface
-       "vkCreateXcbSurfaceKHR",
-       "vkGetPhysicalDeviceXcbPresentationSupportKHR",
-
-       # VK_KHR_wayland_surface
-       "vkCreateWaylandSurfaceKHR",
-       "vkGetPhysicalDeviceWaylandPresentationSupportKHR",
-
-       # VK_KHR_mir_surface
-       "vkCreateMirSurfaceKHR",
-       "vkGetPhysicalDeviceMirPresentationSupportKHR",
-
-       # VK_KHR_android_surface
-       "vkCreateAndroidSurfaceKHR",
-
-       # VK_KHR_win32_surface
-       "vkCreateWin32SurfaceKHR",
-       "vkGetPhysicalDeviceWin32PresentationSupportKHR",
-
-       # VK_KHR_get_physical_device_properties2
-       "vkGetPhysicalDeviceFeatures2KHR",
-       "vkGetPhysicalDeviceProperties2KHR",
-       "vkGetPhysicalDeviceFormatProperties2KHR",
-       "vkGetPhysicalDeviceQueueFamilyProperties2KHR",
-       "vkGetPhysicalDeviceImageFormatProperties2KHR",
-       "vkGetPhysicalDeviceMemoryProperties2KHR",
-       "vkGetPhysicalDeviceSparseImageFormatProperties2KHR",
-
-       # VK_EXT_debug_report
-       "vkCreateDebugReportCallbackEXT",
-       "vkDestroyDebugReportCallbackEXT",
-       "vkDebugReportMessageEXT",
-
-       # VK_NV_external_memory_capabilities
-       "vkGetPhysicalDeviceExternalImageFormatPropertiesNV",
-
-       # VK_KHR_get_surface_capabilities2
-       "vkGetPhysicalDeviceSurfaceCapabilities2KHR",
-       "vkGetPhysicalDeviceSurfaceFormats2KHR",
-]
-
 DEFINITIONS                    = [
        ("VK_API_VERSION",                                              "deUint32"),
        ("VK_MAX_PHYSICAL_DEVICE_NAME_SIZE",    "size_t"),
@@ -239,12 +156,21 @@ class Function:
                self.arguments  = arguments
 
        def getType (self):
-               if self.name in PLATFORM_FUNCTIONS:
+               # Special functions
+               if self.name == "vkGetInstanceProcAddr":
                        return Function.TYPE_PLATFORM
-               elif self.name in INSTANCE_FUNCTIONS:
+               elif self.name == "vkGetDeviceProcAddr":
                        return Function.TYPE_INSTANCE
-               else:
+
+               assert len(self.arguments) > 0
+               firstArgType = self.arguments[0].type
+
+               if firstArgType in ["VkInstance", "VkPhysicalDevice"]:
+                       return Function.TYPE_INSTANCE
+               elif firstArgType in ["VkDevice", "VkCommandBuffer", "VkQueue"]:
                        return Function.TYPE_DEVICE
+               else:
+                       return Function.TYPE_PLATFORM
 
 class API:
        def __init__ (self, definitions, handles, enums, bitfields, compositeTypes, functions):
index aac2a32..11238cb 100644 (file)
@@ -6,7 +6,7 @@ extern "C" {
 #endif
 
 /*
-** Copyright (c) 2015-2016 The Khronos Group Inc.
+** Copyright (c) 2015-2017 The Khronos Group Inc.
 **
 ** Licensed under the Apache License, Version 2.0 (the "License");
 ** you may not use this file except in compliance with the License.
@@ -43,7 +43,7 @@ extern "C" {
 #define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)
 #define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)
 // Version of this file
-#define VK_HEADER_VERSION 35
+#define VK_HEADER_VERSION 49
 
 
 #define VK_NULL_HANDLE 0
@@ -214,18 +214,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR = 1000008000,
     VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000,
     VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT = 1000011000,
-    VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD = 1000018000,
-    VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT = 1000022000,
-    VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT = 1000022001,
-    VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT = 1000022002,
-    VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV = 1000026000,
-    VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV = 1000026001,
-    VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV = 1000026002,
-    VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV = 1000056000,
-    VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV = 1000056001,
-    VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057000,
-    VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV = 1000057001,
-    VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV = 1000058000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR = 1000059000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR = 1000059001,
     VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR = 1000059002,
@@ -235,18 +223,11 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR = 1000059006,
     VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR = 1000059007,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR = 1000059008,
-    VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT = 1000061000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR = 1000080000,
     VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000,
-    VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000,
     VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR = 1000085000,
-    VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX = 1000086000,
-    VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX = 1000086001,
-    VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX = 1000086002,
-    VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX = 1000086003,
-    VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX = 1000086004,
-    VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX = 1000086005,
     VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE = 1000092000,
+    VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR = 1000119000,
     VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001,
     VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002,
@@ -462,14 +443,6 @@ typedef enum VkFormat {
     VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182,
     VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183,
     VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184,
-    VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000,
-    VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001,
-    VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002,
-    VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003,
-    VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004,
-    VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005,
-    VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006,
-    VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007,
     VK_FORMAT_BEGIN_RANGE = VK_FORMAT_UNDEFINED,
     VK_FORMAT_END_RANGE = VK_FORMAT_ASTC_12x12_SRGB_BLOCK,
     VK_FORMAT_RANGE_SIZE = (VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1),
@@ -728,7 +701,6 @@ typedef enum VkDynamicState {
 typedef enum VkFilter {
     VK_FILTER_NEAREST = 0,
     VK_FILTER_LINEAR = 1,
-    VK_FILTER_CUBIC_IMG = 1000015000,
     VK_FILTER_BEGIN_RANGE = VK_FILTER_NEAREST,
     VK_FILTER_END_RANGE = VK_FILTER_LINEAR,
     VK_FILTER_RANGE_SIZE = (VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1),
@@ -842,6 +814,47 @@ typedef enum VkSubpassContents {
     VK_SUBPASS_CONTENTS_MAX_ENUM = 0x7FFFFFFF
 } VkSubpassContents;
 
+typedef enum VkObjectType {
+    VK_OBJECT_TYPE_UNKNOWN = 0,
+    VK_OBJECT_TYPE_INSTANCE = 1,
+    VK_OBJECT_TYPE_PHYSICAL_DEVICE = 2,
+    VK_OBJECT_TYPE_DEVICE = 3,
+    VK_OBJECT_TYPE_QUEUE = 4,
+    VK_OBJECT_TYPE_SEMAPHORE = 5,
+    VK_OBJECT_TYPE_COMMAND_BUFFER = 6,
+    VK_OBJECT_TYPE_FENCE = 7,
+    VK_OBJECT_TYPE_DEVICE_MEMORY = 8,
+    VK_OBJECT_TYPE_BUFFER = 9,
+    VK_OBJECT_TYPE_IMAGE = 10,
+    VK_OBJECT_TYPE_EVENT = 11,
+    VK_OBJECT_TYPE_QUERY_POOL = 12,
+    VK_OBJECT_TYPE_BUFFER_VIEW = 13,
+    VK_OBJECT_TYPE_IMAGE_VIEW = 14,
+    VK_OBJECT_TYPE_SHADER_MODULE = 15,
+    VK_OBJECT_TYPE_PIPELINE_CACHE = 16,
+    VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17,
+    VK_OBJECT_TYPE_RENDER_PASS = 18,
+    VK_OBJECT_TYPE_PIPELINE = 19,
+    VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT = 20,
+    VK_OBJECT_TYPE_SAMPLER = 21,
+    VK_OBJECT_TYPE_DESCRIPTOR_POOL = 22,
+    VK_OBJECT_TYPE_DESCRIPTOR_SET = 23,
+    VK_OBJECT_TYPE_FRAMEBUFFER = 24,
+    VK_OBJECT_TYPE_COMMAND_POOL = 25,
+    VK_OBJECT_TYPE_SURFACE_KHR = 1000000000,
+    VK_OBJECT_TYPE_SWAPCHAIN_KHR = 1000001000,
+    VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000,
+    VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001,
+    VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000,
+    VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = 1000085000,
+    VK_OBJECT_TYPE_OBJECT_TABLE_NVX = 1000086000,
+    VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX = 1000086001,
+    VK_OBJECT_TYPE_BEGIN_RANGE = VK_OBJECT_TYPE_UNKNOWN,
+    VK_OBJECT_TYPE_END_RANGE = VK_OBJECT_TYPE_COMMAND_POOL,
+    VK_OBJECT_TYPE_RANGE_SIZE = (VK_OBJECT_TYPE_COMMAND_POOL - VK_OBJECT_TYPE_UNKNOWN + 1),
+    VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF
+} VkObjectType;
+
 typedef VkFlags VkInstanceCreateFlags;
 
 typedef enum VkFormatFeatureFlagBits {
@@ -858,7 +871,6 @@ typedef enum VkFormatFeatureFlagBits {
     VK_FORMAT_FEATURE_BLIT_SRC_BIT = 0x00000400,
     VK_FORMAT_FEATURE_BLIT_DST_BIT = 0x00000800,
     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 0x00001000,
-    VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,
     VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = 0x00004000,
     VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = 0x00008000,
     VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
@@ -946,7 +958,6 @@ typedef enum VkPipelineStageFlagBits {
     VK_PIPELINE_STAGE_HOST_BIT = 0x00004000,
     VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000,
     VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,
-    VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000,
     VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkPipelineStageFlagBits;
 typedef VkFlags VkPipelineStageFlags;
@@ -1106,6 +1117,10 @@ typedef enum VkAttachmentDescriptionFlagBits {
     VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkAttachmentDescriptionFlagBits;
 typedef VkFlags VkAttachmentDescriptionFlags;
+
+typedef enum VkSubpassDescriptionFlagBits {
+    VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
+} VkSubpassDescriptionFlagBits;
 typedef VkFlags VkSubpassDescriptionFlags;
 
 typedef enum VkAccessFlagBits {
@@ -2394,7 +2409,7 @@ typedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer commandBuffer, uint32_t
 typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance);
 typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
 typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
-typedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t x, uint32_t y, uint32_t z);
+typedef void (VKAPI_PTR *PFN_vkCmdDispatch)(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);
 typedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);
 typedef void (VKAPI_PTR *PFN_vkCmdCopyBuffer)(VkCommandBuffer commandBuffer, VkBuffer srcBuffer, VkBuffer dstBuffer, uint32_t regionCount, const VkBufferCopy* pRegions);
 typedef void (VKAPI_PTR *PFN_vkCmdCopyImage)(VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageCopy* pRegions);
@@ -3030,9 +3045,9 @@ VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirect(
 
 VKAPI_ATTR void VKAPI_CALL vkCmdDispatch(
     VkCommandBuffer                             commandBuffer,
-    uint32_t                                    x,
-    uint32_t                                    y,
-    uint32_t                                    z);
+    uint32_t                                    groupCountX,
+    uint32_t                                    groupCountY,
+    uint32_t                                    groupCountZ);
 
 VKAPI_ATTR void VKAPI_CALL vkCmdDispatchIndirect(
     VkCommandBuffer                             commandBuffer,
@@ -3348,6 +3363,10 @@ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR)
 #define VK_KHR_SWAPCHAIN_SPEC_VERSION     68
 #define VK_KHR_SWAPCHAIN_EXTENSION_NAME   "VK_KHR_swapchain"
 
+
+typedef enum VkSwapchainCreateFlagBitsKHR {
+    VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkSwapchainCreateFlagBitsKHR;
 typedef VkFlags VkSwapchainCreateFlagsKHR;
 
 typedef struct VkSwapchainCreateInfoKHR {
@@ -3648,7 +3667,7 @@ VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR(
 #define VK_KHR_wayland_surface 1
 #include <wayland-client.h>
 
-#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 5
+#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 6
 #define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface"
 
 typedef VkFlags VkWaylandSurfaceCreateFlagsKHR;
@@ -3891,6 +3910,11 @@ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2KHR(
     VkSparseImageFormatProperties2KHR*          pProperties);
 #endif
 
+#define VK_KHR_shader_draw_parameters 1
+#define VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION 1
+#define VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME "VK_KHR_shader_draw_parameters"
+
+
 #define VK_KHR_maintenance1 1
 #define VK_KHR_MAINTENANCE1_SPEC_VERSION  1
 #define VK_KHR_MAINTENANCE1_EXTENSION_NAME "VK_KHR_maintenance1"
@@ -3906,6 +3930,29 @@ VKAPI_ATTR void VKAPI_CALL vkTrimCommandPoolKHR(
     VkCommandPoolTrimFlagsKHR                   flags);
 #endif
 
+#define VK_KHR_push_descriptor 1
+#define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 1
+#define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor"
+
+typedef struct VkPhysicalDevicePushDescriptorPropertiesKHR {
+    VkStructureType    sType;
+    void*              pNext;
+    uint32_t           maxPushDescriptors;
+} VkPhysicalDevicePushDescriptorPropertiesKHR;
+
+
+typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetKHR)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetKHR(
+    VkCommandBuffer                             commandBuffer,
+    VkPipelineBindPoint                         pipelineBindPoint,
+    VkPipelineLayout                            layout,
+    uint32_t                                    set,
+    uint32_t                                    descriptorWriteCount,
+    const VkWriteDescriptorSet*                 pDescriptorWrites);
+#endif
+
 #define VK_KHR_incremental_present 1
 #define VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION 1
 #define VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME "VK_KHR_incremental_present"
@@ -3928,6 +3975,99 @@ typedef struct VkPresentRegionsKHR {
     const VkPresentRegionKHR*    pRegions;
 } VkPresentRegionsKHR;
 
+
+
+#define VK_KHR_descriptor_update_template 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplateKHR)
+
+#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 1
+#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template"
+
+
+typedef enum VkDescriptorUpdateTemplateTypeKHR {
+    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = 0,
+    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1,
+    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR,
+    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR,
+    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE_KHR = (VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR + 1),
+    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkDescriptorUpdateTemplateTypeKHR;
+
+typedef VkFlags VkDescriptorUpdateTemplateCreateFlagsKHR;
+
+typedef struct VkDescriptorUpdateTemplateEntryKHR {
+    uint32_t            dstBinding;
+    uint32_t            dstArrayElement;
+    uint32_t            descriptorCount;
+    VkDescriptorType    descriptorType;
+    size_t              offset;
+    size_t              stride;
+} VkDescriptorUpdateTemplateEntryKHR;
+
+typedef struct VkDescriptorUpdateTemplateCreateInfoKHR {
+    VkStructureType                              sType;
+    void*                                        pNext;
+    VkDescriptorUpdateTemplateCreateFlagsKHR     flags;
+    uint32_t                                     descriptorUpdateEntryCount;
+    const VkDescriptorUpdateTemplateEntryKHR*    pDescriptorUpdateEntries;
+    VkDescriptorUpdateTemplateTypeKHR            templateType;
+    VkDescriptorSetLayout                        descriptorSetLayout;
+    VkPipelineBindPoint                          pipelineBindPoint;
+    VkPipelineLayout                             pipelineLayout;
+    uint32_t                                     set;
+} VkDescriptorUpdateTemplateCreateInfoKHR;
+
+
+typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplateKHR)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate);
+typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData);
+typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR(
+    VkDevice                                    device,
+    const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo,
+    const VkAllocationCallbacks*                pAllocator,
+    VkDescriptorUpdateTemplateKHR*              pDescriptorUpdateTemplate);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR(
+    VkDevice                                    device,
+    VkDescriptorUpdateTemplateKHR               descriptorUpdateTemplate,
+    const VkAllocationCallbacks*                pAllocator);
+
+VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR(
+    VkDevice                                    device,
+    VkDescriptorSet                             descriptorSet,
+    VkDescriptorUpdateTemplateKHR               descriptorUpdateTemplate,
+    const void*                                 pData);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetWithTemplateKHR(
+    VkCommandBuffer                             commandBuffer,
+    VkDescriptorUpdateTemplateKHR               descriptorUpdateTemplate,
+    VkPipelineLayout                            layout,
+    uint32_t                                    set,
+    const void*                                 pData);
+#endif
+
+#define VK_KHR_shared_presentable_image 1
+#define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1
+#define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image"
+
+typedef struct VkSharedPresentSurfaceCapabilitiesKHR {
+    VkStructureType      sType;
+    void*                pNext;
+    VkImageUsageFlags    sharedPresentSupportedUsageFlags;
+} VkSharedPresentSurfaceCapabilitiesKHR;
+
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR(
+    VkDevice                                    device,
+    VkSwapchainKHR                              swapchain);
+#endif
+
 #define VK_KHR_get_surface_capabilities2 1
 #define VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION 1
 #define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2"
@@ -3967,27 +4107,10 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormats2KHR(
     VkSurfaceFormat2KHR*                        pSurfaceFormats);
 #endif
 
-#define VK_KHR_shared_presentable_image 1
-#define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1
-#define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image"
-typedef struct VkSharedPresentSurfaceCapabilitiesKHR {
-    VkStructureType      sType;
-    void*                pNext;
-    VkImageUsageFlags    sharedPresentSupportedUsageFlags;
-} VkSharedPresentSurfaceCapabilitiesKHR;
-
-typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain);
-
-#ifndef VK_NO_PROTOTYPES
-VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR(
-    VkDevice                                    device,
-    VkSwapchainKHR                              swapchain);
-#endif
-
 #define VK_EXT_debug_report 1
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)
 
-#define VK_EXT_DEBUG_REPORT_SPEC_VERSION  3
+#define VK_EXT_DEBUG_REPORT_SPEC_VERSION  6
 #define VK_EXT_DEBUG_REPORT_EXTENSION_NAME "VK_EXT_debug_report"
 #define VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT
 
@@ -4022,9 +4145,12 @@ typedef enum VkDebugReportObjectTypeEXT {
     VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT = 26,
     VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT = 27,
     VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = 28,
+    VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29,
+    VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30,
+    VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = 1000085000,
     VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
-    VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT,
-    VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1),
+    VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT,
+    VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1),
     VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
 } VkDebugReportObjectTypeEXT;
 
@@ -4095,638 +4221,6 @@ VKAPI_ATTR void VKAPI_CALL vkDebugReportMessageEXT(
     const char*                                 pMessage);
 #endif
 
-#define VK_NV_glsl_shader 1
-#define VK_NV_GLSL_SHADER_SPEC_VERSION    1
-#define VK_NV_GLSL_SHADER_EXTENSION_NAME  "VK_NV_glsl_shader"
-
-
-#define VK_IMG_filter_cubic 1
-#define VK_IMG_FILTER_CUBIC_SPEC_VERSION  1
-#define VK_IMG_FILTER_CUBIC_EXTENSION_NAME "VK_IMG_filter_cubic"
-
-
-#define VK_AMD_rasterization_order 1
-#define VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION 1
-#define VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME "VK_AMD_rasterization_order"
-
-
-typedef enum VkRasterizationOrderAMD {
-    VK_RASTERIZATION_ORDER_STRICT_AMD = 0,
-    VK_RASTERIZATION_ORDER_RELAXED_AMD = 1,
-    VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD = VK_RASTERIZATION_ORDER_STRICT_AMD,
-    VK_RASTERIZATION_ORDER_END_RANGE_AMD = VK_RASTERIZATION_ORDER_RELAXED_AMD,
-    VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD = (VK_RASTERIZATION_ORDER_RELAXED_AMD - VK_RASTERIZATION_ORDER_STRICT_AMD + 1),
-    VK_RASTERIZATION_ORDER_MAX_ENUM_AMD = 0x7FFFFFFF
-} VkRasterizationOrderAMD;
-
-typedef struct VkPipelineRasterizationStateRasterizationOrderAMD {
-    VkStructureType            sType;
-    const void*                pNext;
-    VkRasterizationOrderAMD    rasterizationOrder;
-} VkPipelineRasterizationStateRasterizationOrderAMD;
-
-
-
-#define VK_AMD_shader_trinary_minmax 1
-#define VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION 1
-#define VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME "VK_AMD_shader_trinary_minmax"
-
-
-#define VK_AMD_shader_explicit_vertex_parameter 1
-#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION 1
-#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME "VK_AMD_shader_explicit_vertex_parameter"
-
-
-#define VK_EXT_debug_marker 1
-#define VK_EXT_DEBUG_MARKER_SPEC_VERSION  3
-#define VK_EXT_DEBUG_MARKER_EXTENSION_NAME "VK_EXT_debug_marker"
-
-typedef struct VkDebugMarkerObjectNameInfoEXT {
-    VkStructureType               sType;
-    const void*                   pNext;
-    VkDebugReportObjectTypeEXT    objectType;
-    uint64_t                      object;
-    const char*                   pObjectName;
-} VkDebugMarkerObjectNameInfoEXT;
-
-typedef struct VkDebugMarkerObjectTagInfoEXT {
-    VkStructureType               sType;
-    const void*                   pNext;
-    VkDebugReportObjectTypeEXT    objectType;
-    uint64_t                      object;
-    uint64_t                      tagName;
-    size_t                        tagSize;
-    const void*                   pTag;
-} VkDebugMarkerObjectTagInfoEXT;
-
-typedef struct VkDebugMarkerMarkerInfoEXT {
-    VkStructureType    sType;
-    const void*        pNext;
-    const char*        pMarkerName;
-    float              color[4];
-} VkDebugMarkerMarkerInfoEXT;
-
-
-typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectTagEXT)(VkDevice device, VkDebugMarkerObjectTagInfoEXT* pTagInfo);
-typedef VkResult (VKAPI_PTR *PFN_vkDebugMarkerSetObjectNameEXT)(VkDevice device, VkDebugMarkerObjectNameInfoEXT* pNameInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerBeginEXT)(VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerEndEXT)(VkCommandBuffer commandBuffer);
-typedef void (VKAPI_PTR *PFN_vkCmdDebugMarkerInsertEXT)(VkCommandBuffer commandBuffer, VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
-
-#ifndef VK_NO_PROTOTYPES
-VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectTagEXT(
-    VkDevice                                    device,
-    VkDebugMarkerObjectTagInfoEXT*              pTagInfo);
-
-VKAPI_ATTR VkResult VKAPI_CALL vkDebugMarkerSetObjectNameEXT(
-    VkDevice                                    device,
-    VkDebugMarkerObjectNameInfoEXT*             pNameInfo);
-
-VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerBeginEXT(
-    VkCommandBuffer                             commandBuffer,
-    VkDebugMarkerMarkerInfoEXT*                 pMarkerInfo);
-
-VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerEndEXT(
-    VkCommandBuffer                             commandBuffer);
-
-VKAPI_ATTR void VKAPI_CALL vkCmdDebugMarkerInsertEXT(
-    VkCommandBuffer                             commandBuffer,
-    VkDebugMarkerMarkerInfoEXT*                 pMarkerInfo);
-#endif
-
-#define VK_AMD_gcn_shader 1
-#define VK_AMD_GCN_SHADER_SPEC_VERSION    1
-#define VK_AMD_GCN_SHADER_EXTENSION_NAME  "VK_AMD_gcn_shader"
-
-
-#define VK_NV_dedicated_allocation 1
-#define VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION 1
-#define VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME "VK_NV_dedicated_allocation"
-
-typedef struct VkDedicatedAllocationImageCreateInfoNV {
-    VkStructureType    sType;
-    const void*        pNext;
-    VkBool32           dedicatedAllocation;
-} VkDedicatedAllocationImageCreateInfoNV;
-
-typedef struct VkDedicatedAllocationBufferCreateInfoNV {
-    VkStructureType    sType;
-    const void*        pNext;
-    VkBool32           dedicatedAllocation;
-} VkDedicatedAllocationBufferCreateInfoNV;
-
-typedef struct VkDedicatedAllocationMemoryAllocateInfoNV {
-    VkStructureType    sType;
-    const void*        pNext;
-    VkImage            image;
-    VkBuffer           buffer;
-} VkDedicatedAllocationMemoryAllocateInfoNV;
-
-
-
-#define VK_AMD_draw_indirect_count 1
-#define VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION 1
-#define VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME "VK_AMD_draw_indirect_count"
-
-typedef void (VKAPI_PTR *PFN_vkCmdDrawIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
-typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);
-
-#ifndef VK_NO_PROTOTYPES
-VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectCountAMD(
-    VkCommandBuffer                             commandBuffer,
-    VkBuffer                                    buffer,
-    VkDeviceSize                                offset,
-    VkBuffer                                    countBuffer,
-    VkDeviceSize                                countBufferOffset,
-    uint32_t                                    maxDrawCount,
-    uint32_t                                    stride);
-
-VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndexedIndirectCountAMD(
-    VkCommandBuffer                             commandBuffer,
-    VkBuffer                                    buffer,
-    VkDeviceSize                                offset,
-    VkBuffer                                    countBuffer,
-    VkDeviceSize                                countBufferOffset,
-    uint32_t                                    maxDrawCount,
-    uint32_t                                    stride);
-#endif
-
-#define VK_AMD_negative_viewport_height 1
-#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION 1
-#define VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME "VK_AMD_negative_viewport_height"
-
-
-#define VK_AMD_gpu_shader_half_float 1
-#define VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION 1
-#define VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME "VK_AMD_gpu_shader_half_float"
-
-
-#define VK_AMD_shader_ballot 1
-#define VK_AMD_SHADER_BALLOT_SPEC_VERSION 1
-#define VK_AMD_SHADER_BALLOT_EXTENSION_NAME "VK_AMD_shader_ballot"
-
-
-#define VK_IMG_format_pvrtc 1
-#define VK_IMG_FORMAT_PVRTC_SPEC_VERSION  1
-#define VK_IMG_FORMAT_PVRTC_EXTENSION_NAME "VK_IMG_format_pvrtc"
-
-
-#define VK_NV_external_memory_capabilities 1
-#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION 1
-#define VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME "VK_NV_external_memory_capabilities"
-
-
-typedef enum VkExternalMemoryHandleTypeFlagBitsNV {
-    VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 0x00000001,
-    VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 0x00000002,
-    VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 0x00000004,
-    VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 0x00000008,
-    VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
-} VkExternalMemoryHandleTypeFlagBitsNV;
-typedef VkFlags VkExternalMemoryHandleTypeFlagsNV;
-
-typedef enum VkExternalMemoryFeatureFlagBitsNV {
-    VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 0x00000001,
-    VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 0x00000002,
-    VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 0x00000004,
-    VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
-} VkExternalMemoryFeatureFlagBitsNV;
-typedef VkFlags VkExternalMemoryFeatureFlagsNV;
-
-typedef struct VkExternalImageFormatPropertiesNV {
-    VkImageFormatProperties              imageFormatProperties;
-    VkExternalMemoryFeatureFlagsNV       externalMemoryFeatures;
-    VkExternalMemoryHandleTypeFlagsNV    exportFromImportedHandleTypes;
-    VkExternalMemoryHandleTypeFlagsNV    compatibleHandleTypes;
-} VkExternalImageFormatPropertiesNV;
-
-
-typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkImageTiling tiling, VkImageUsageFlags usage, VkImageCreateFlags flags, VkExternalMemoryHandleTypeFlagsNV externalHandleType, VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);
-
-#ifndef VK_NO_PROTOTYPES
-VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
-    VkPhysicalDevice                            physicalDevice,
-    VkFormat                                    format,
-    VkImageType                                 type,
-    VkImageTiling                               tiling,
-    VkImageUsageFlags                           usage,
-    VkImageCreateFlags                          flags,
-    VkExternalMemoryHandleTypeFlagsNV           externalHandleType,
-    VkExternalImageFormatPropertiesNV*          pExternalImageFormatProperties);
-#endif
-
-#define VK_NV_external_memory 1
-#define VK_NV_EXTERNAL_MEMORY_SPEC_VERSION 1
-#define VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME "VK_NV_external_memory"
-
-typedef struct VkExternalMemoryImageCreateInfoNV {
-    VkStructureType                      sType;
-    const void*                          pNext;
-    VkExternalMemoryHandleTypeFlagsNV    handleTypes;
-} VkExternalMemoryImageCreateInfoNV;
-
-typedef struct VkExportMemoryAllocateInfoNV {
-    VkStructureType                      sType;
-    const void*                          pNext;
-    VkExternalMemoryHandleTypeFlagsNV    handleTypes;
-} VkExportMemoryAllocateInfoNV;
-
-
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-#define VK_NV_external_memory_win32 1
-#define VK_NV_EXTERNAL_MEMORY_WIN32_SPEC_VERSION 1
-#define VK_NV_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME "VK_NV_external_memory_win32"
-
-typedef struct VkImportMemoryWin32HandleInfoNV {
-    VkStructureType                      sType;
-    const void*                          pNext;
-    VkExternalMemoryHandleTypeFlagsNV    handleType;
-    HANDLE                               handle;
-} VkImportMemoryWin32HandleInfoNV;
-
-typedef struct VkExportMemoryWin32HandleInfoNV {
-    VkStructureType               sType;
-    const void*                   pNext;
-    const SECURITY_ATTRIBUTES*    pAttributes;
-    DWORD                         dwAccess;
-} VkExportMemoryWin32HandleInfoNV;
-
-
-typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryWin32HandleNV)(VkDevice device, VkDeviceMemory memory, VkExternalMemoryHandleTypeFlagsNV handleType, HANDLE* pHandle);
-
-#ifndef VK_NO_PROTOTYPES
-VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryWin32HandleNV(
-    VkDevice                                    device,
-    VkDeviceMemory                              memory,
-    VkExternalMemoryHandleTypeFlagsNV           handleType,
-    HANDLE*                                     pHandle);
-#endif
-#endif /* VK_USE_PLATFORM_WIN32_KHR */
-
-#ifdef VK_USE_PLATFORM_WIN32_KHR
-#define VK_NV_win32_keyed_mutex 1
-#define VK_NV_WIN32_KEYED_MUTEX_SPEC_VERSION 1
-#define VK_NV_WIN32_KEYED_MUTEX_EXTENSION_NAME "VK_NV_win32_keyed_mutex"
-
-typedef struct VkWin32KeyedMutexAcquireReleaseInfoNV {
-    VkStructureType          sType;
-    const void*              pNext;
-    uint32_t                 acquireCount;
-    const VkDeviceMemory*    pAcquireSyncs;
-    const uint64_t*          pAcquireKeys;
-    const uint32_t*          pAcquireTimeoutMilliseconds;
-    uint32_t                 releaseCount;
-    const VkDeviceMemory*    pReleaseSyncs;
-    const uint64_t*          pReleaseKeys;
-} VkWin32KeyedMutexAcquireReleaseInfoNV;
-
-
-#endif /* VK_USE_PLATFORM_WIN32_KHR */
-
-#define VK_EXT_validation_flags 1
-#define VK_EXT_VALIDATION_FLAGS_SPEC_VERSION 1
-#define VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME "VK_EXT_validation_flags"
-
-
-typedef enum VkValidationCheckEXT {
-    VK_VALIDATION_CHECK_ALL_EXT = 0,
-    VK_VALIDATION_CHECK_BEGIN_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT,
-    VK_VALIDATION_CHECK_END_RANGE_EXT = VK_VALIDATION_CHECK_ALL_EXT,
-    VK_VALIDATION_CHECK_RANGE_SIZE_EXT = (VK_VALIDATION_CHECK_ALL_EXT - VK_VALIDATION_CHECK_ALL_EXT + 1),
-    VK_VALIDATION_CHECK_MAX_ENUM_EXT = 0x7FFFFFFF
-} VkValidationCheckEXT;
-
-typedef struct VkValidationFlagsEXT {
-    VkStructureType          sType;
-    const void*              pNext;
-    uint32_t                 disabledValidationCheckCount;
-    VkValidationCheckEXT*    pDisabledValidationChecks;
-} VkValidationFlagsEXT;
-
-
-
-#define VK_NVX_device_generated_commands 1
-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkObjectTableNVX)
-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNVX)
-
-#define VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 1
-#define VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NVX_device_generated_commands"
-
-
-typedef enum VkIndirectCommandsTokenTypeNVX {
-    VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX = 0,
-    VK_INDIRECT_COMMANDS_TOKEN_DESCRIPTOR_SET_NVX = 1,
-    VK_INDIRECT_COMMANDS_TOKEN_INDEX_BUFFER_NVX = 2,
-    VK_INDIRECT_COMMANDS_TOKEN_VERTEX_BUFFER_NVX = 3,
-    VK_INDIRECT_COMMANDS_TOKEN_PUSH_CONSTANT_NVX = 4,
-    VK_INDIRECT_COMMANDS_TOKEN_DRAW_INDEXED_NVX = 5,
-    VK_INDIRECT_COMMANDS_TOKEN_DRAW_NVX = 6,
-    VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX = 7,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NVX = (VK_INDIRECT_COMMANDS_TOKEN_DISPATCH_NVX - VK_INDIRECT_COMMANDS_TOKEN_PIPELINE_NVX + 1),
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF
-} VkIndirectCommandsTokenTypeNVX;
-
-typedef enum VkObjectEntryTypeNVX {
-    VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX = 0,
-    VK_OBJECT_ENTRY_PIPELINE_NVX = 1,
-    VK_OBJECT_ENTRY_INDEX_BUFFER_NVX = 2,
-    VK_OBJECT_ENTRY_VERTEX_BUFFER_NVX = 3,
-    VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX = 4,
-    VK_OBJECT_ENTRY_TYPE_BEGIN_RANGE_NVX = VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX,
-    VK_OBJECT_ENTRY_TYPE_END_RANGE_NVX = VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX,
-    VK_OBJECT_ENTRY_TYPE_RANGE_SIZE_NVX = (VK_OBJECT_ENTRY_PUSH_CONSTANT_NVX - VK_OBJECT_ENTRY_DESCRIPTOR_SET_NVX + 1),
-    VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF
-} VkObjectEntryTypeNVX;
-
-
-typedef enum VkIndirectCommandsLayoutUsageFlagBitsNVX {
-    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX = 0x00000001,
-    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX = 0x00000002,
-    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX = 0x00000004,
-    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX = 0x00000008,
-    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF
-} VkIndirectCommandsLayoutUsageFlagBitsNVX;
-typedef VkFlags VkIndirectCommandsLayoutUsageFlagsNVX;
-
-typedef enum VkObjectEntryUsageFlagBitsNVX {
-    VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX = 0x00000001,
-    VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX = 0x00000002,
-    VK_OBJECT_ENTRY_USAGE_FLAG_BITS_MAX_ENUM_NVX = 0x7FFFFFFF
-} VkObjectEntryUsageFlagBitsNVX;
-typedef VkFlags VkObjectEntryUsageFlagsNVX;
-
-typedef struct VkDeviceGeneratedCommandsFeaturesNVX {
-    VkStructureType    sType;
-    const void*        pNext;
-    VkBool32           computeBindingPointSupport;
-} VkDeviceGeneratedCommandsFeaturesNVX;
-
-typedef struct VkDeviceGeneratedCommandsLimitsNVX {
-    VkStructureType    sType;
-    const void*        pNext;
-    uint32_t           maxIndirectCommandsLayoutTokenCount;
-    uint32_t           maxObjectEntryCounts;
-    uint32_t           minSequenceCountBufferOffsetAlignment;
-    uint32_t           minSequenceIndexBufferOffsetAlignment;
-    uint32_t           minCommandsTokenBufferOffsetAlignment;
-} VkDeviceGeneratedCommandsLimitsNVX;
-
-typedef struct VkIndirectCommandsTokenNVX {
-    VkIndirectCommandsTokenTypeNVX    tokenType;
-    VkBuffer                          buffer;
-    VkDeviceSize                      offset;
-} VkIndirectCommandsTokenNVX;
-
-typedef struct VkIndirectCommandsLayoutTokenNVX {
-    VkIndirectCommandsTokenTypeNVX    tokenType;
-    uint32_t                          bindingUnit;
-    uint32_t                          dynamicCount;
-    uint32_t                          divisor;
-} VkIndirectCommandsLayoutTokenNVX;
-
-typedef struct VkIndirectCommandsLayoutCreateInfoNVX {
-    VkStructureType                            sType;
-    const void*                                pNext;
-    VkPipelineBindPoint                        pipelineBindPoint;
-    VkIndirectCommandsLayoutUsageFlagsNVX      flags;
-    uint32_t                                   tokenCount;
-    const VkIndirectCommandsLayoutTokenNVX*    pTokens;
-} VkIndirectCommandsLayoutCreateInfoNVX;
-
-typedef struct VkCmdProcessCommandsInfoNVX {
-    VkStructureType                      sType;
-    const void*                          pNext;
-    VkObjectTableNVX                     objectTable;
-    VkIndirectCommandsLayoutNVX          indirectCommandsLayout;
-    uint32_t                             indirectCommandsTokenCount;
-    const VkIndirectCommandsTokenNVX*    pIndirectCommandsTokens;
-    uint32_t                             maxSequencesCount;
-    VkCommandBuffer                      targetCommandBuffer;
-    VkBuffer                             sequencesCountBuffer;
-    VkDeviceSize                         sequencesCountOffset;
-    VkBuffer                             sequencesIndexBuffer;
-    VkDeviceSize                         sequencesIndexOffset;
-} VkCmdProcessCommandsInfoNVX;
-
-typedef struct VkCmdReserveSpaceForCommandsInfoNVX {
-    VkStructureType                sType;
-    const void*                    pNext;
-    VkObjectTableNVX               objectTable;
-    VkIndirectCommandsLayoutNVX    indirectCommandsLayout;
-    uint32_t                       maxSequencesCount;
-} VkCmdReserveSpaceForCommandsInfoNVX;
-
-typedef struct VkObjectTableCreateInfoNVX {
-    VkStructureType                      sType;
-    const void*                          pNext;
-    uint32_t                             objectCount;
-    const VkObjectEntryTypeNVX*          pObjectEntryTypes;
-    const uint32_t*                      pObjectEntryCounts;
-    const VkObjectEntryUsageFlagsNVX*    pObjectEntryUsageFlags;
-    uint32_t                             maxUniformBuffersPerDescriptor;
-    uint32_t                             maxStorageBuffersPerDescriptor;
-    uint32_t                             maxStorageImagesPerDescriptor;
-    uint32_t                             maxSampledImagesPerDescriptor;
-    uint32_t                             maxPipelineLayouts;
-} VkObjectTableCreateInfoNVX;
-
-typedef struct VkObjectTableEntryNVX {
-    VkObjectEntryTypeNVX          type;
-    VkObjectEntryUsageFlagsNVX    flags;
-} VkObjectTableEntryNVX;
-
-typedef struct VkObjectTablePipelineEntryNVX {
-    VkObjectEntryTypeNVX          type;
-    VkObjectEntryUsageFlagsNVX    flags;
-    VkPipeline                    pipeline;
-} VkObjectTablePipelineEntryNVX;
-
-typedef struct VkObjectTableDescriptorSetEntryNVX {
-    VkObjectEntryTypeNVX          type;
-    VkObjectEntryUsageFlagsNVX    flags;
-    VkPipelineLayout              pipelineLayout;
-    VkDescriptorSet               descriptorSet;
-} VkObjectTableDescriptorSetEntryNVX;
-
-typedef struct VkObjectTableVertexBufferEntryNVX {
-    VkObjectEntryTypeNVX          type;
-    VkObjectEntryUsageFlagsNVX    flags;
-    VkBuffer                      buffer;
-} VkObjectTableVertexBufferEntryNVX;
-
-typedef struct VkObjectTableIndexBufferEntryNVX {
-    VkObjectEntryTypeNVX          type;
-    VkObjectEntryUsageFlagsNVX    flags;
-    VkBuffer                      buffer;
-} VkObjectTableIndexBufferEntryNVX;
-
-typedef struct VkObjectTablePushConstantEntryNVX {
-    VkObjectEntryTypeNVX          type;
-    VkObjectEntryUsageFlagsNVX    flags;
-    VkPipelineLayout              pipelineLayout;
-    VkShaderStageFlags            stageFlags;
-} VkObjectTablePushConstantEntryNVX;
-
-
-typedef void (VKAPI_PTR *PFN_vkCmdProcessCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdProcessCommandsInfoNVX* pProcessCommandsInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdReserveSpaceForCommandsNVX)(VkCommandBuffer commandBuffer, const VkCmdReserveSpaceForCommandsInfoNVX* pReserveSpaceInfo);
-typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNVX)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNVX* pIndirectCommandsLayout);
-typedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNVX)(VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);
-typedef VkResult (VKAPI_PTR *PFN_vkCreateObjectTableNVX)(VkDevice device, const VkObjectTableCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkObjectTableNVX* pObjectTable);
-typedef void (VKAPI_PTR *PFN_vkDestroyObjectTableNVX)(VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator);
-typedef VkResult (VKAPI_PTR *PFN_vkRegisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectTableEntryNVX* const*    ppObjectTableEntries, const uint32_t* pObjectIndices);
-typedef VkResult (VKAPI_PTR *PFN_vkUnregisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, uint32_t objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const uint32_t* pObjectIndices);
-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX)(VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits);
-
-#ifndef VK_NO_PROTOTYPES
-VKAPI_ATTR void VKAPI_CALL vkCmdProcessCommandsNVX(
-    VkCommandBuffer                             commandBuffer,
-    const VkCmdProcessCommandsInfoNVX*          pProcessCommandsInfo);
-
-VKAPI_ATTR void VKAPI_CALL vkCmdReserveSpaceForCommandsNVX(
-    VkCommandBuffer                             commandBuffer,
-    const VkCmdReserveSpaceForCommandsInfoNVX*  pReserveSpaceInfo);
-
-VKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNVX(
-    VkDevice                                    device,
-    const VkIndirectCommandsLayoutCreateInfoNVX* pCreateInfo,
-    const VkAllocationCallbacks*                pAllocator,
-    VkIndirectCommandsLayoutNVX*                pIndirectCommandsLayout);
-
-VKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNVX(
-    VkDevice                                    device,
-    VkIndirectCommandsLayoutNVX                 indirectCommandsLayout,
-    const VkAllocationCallbacks*                pAllocator);
-
-VKAPI_ATTR VkResult VKAPI_CALL vkCreateObjectTableNVX(
-    VkDevice                                    device,
-    const VkObjectTableCreateInfoNVX*           pCreateInfo,
-    const VkAllocationCallbacks*                pAllocator,
-    VkObjectTableNVX*                           pObjectTable);
-
-VKAPI_ATTR void VKAPI_CALL vkDestroyObjectTableNVX(
-    VkDevice                                    device,
-    VkObjectTableNVX                            objectTable,
-    const VkAllocationCallbacks*                pAllocator);
-
-VKAPI_ATTR VkResult VKAPI_CALL vkRegisterObjectsNVX(
-    VkDevice                                    device,
-    VkObjectTableNVX                            objectTable,
-    uint32_t                                    objectCount,
-    const VkObjectTableEntryNVX* const*         ppObjectTableEntries,
-    const uint32_t*                             pObjectIndices);
-
-VKAPI_ATTR VkResult VKAPI_CALL vkUnregisterObjectsNVX(
-    VkDevice                                    device,
-    VkObjectTableNVX                            objectTable,
-    uint32_t                                    objectCount,
-    const VkObjectEntryTypeNVX*                 pObjectEntryTypes,
-    const uint32_t*                             pObjectIndices);
-
-VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX(
-    VkPhysicalDevice                            physicalDevice,
-    VkDeviceGeneratedCommandsFeaturesNVX*       pFeatures,
-    VkDeviceGeneratedCommandsLimitsNVX*         pLimits);
-#endif
-
-#define VK_KHR_push_descriptor 1
-#define VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION 1
-#define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor"
-
-typedef struct VkPhysicalDevicePushDescriptorPropertiesKHR {
-    VkStructureType    sType;
-    void*              pNext;
-    uint32_t           maxPushDescriptors;
-} VkPhysicalDevicePushDescriptorPropertiesKHR;
-
-
-typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetKHR)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount, const VkWriteDescriptorSet* pDescriptorWrites);
-
-#ifndef VK_NO_PROTOTYPES
-VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetKHR(
-    VkCommandBuffer                             commandBuffer,
-    VkPipelineBindPoint                         pipelineBindPoint,
-    VkPipelineLayout                            layout,
-    uint32_t                                    set,
-    uint32_t                                    descriptorWriteCount,
-    const VkWriteDescriptorSet*                 pDescriptorWrites);
-#endif
-
-#define VK_KHR_descriptor_update_template 1
-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplateKHR)
-
-#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION 1
-#define VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME "VK_KHR_descriptor_update_template"
-
-
-typedef enum VkDescriptorUpdateTemplateTypeKHR {
-    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR = 0,
-    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR = 1,
-    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR,
-    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE_KHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR,
-    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE_KHR = (VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR + 1),
-    VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
-} VkDescriptorUpdateTemplateTypeKHR;
-
-typedef VkFlags VkDescriptorUpdateTemplateCreateFlagsKHR;
-
-typedef struct VkDescriptorUpdateTemplateEntryKHR {
-    uint32_t            dstBinding;
-    uint32_t            dstArrayElement;
-    uint32_t            descriptorCount;
-    VkDescriptorType    descriptorType;
-    size_t              offset;
-    size_t              stride;
-} VkDescriptorUpdateTemplateEntryKHR;
-
-typedef struct VkDescriptorUpdateTemplateCreateInfoKHR {
-    VkStructureType                              sType;
-    void*                                        pNext;
-    VkDescriptorUpdateTemplateCreateFlagsKHR     flags;
-    uint32_t                                     descriptorUpdateEntryCount;
-    const VkDescriptorUpdateTemplateEntryKHR*    pDescriptorUpdateEntries;
-    VkDescriptorUpdateTemplateTypeKHR            templateType;
-    VkDescriptorSetLayout                        descriptorSetLayout;
-    VkPipelineBindPoint                          pipelineBindPoint;
-    VkPipelineLayout                             pipelineLayout;
-    uint32_t                                     set;
-} VkDescriptorUpdateTemplateCreateInfoKHR;
-
-
-typedef VkResult (VKAPI_PTR *PFN_vkCreateDescriptorUpdateTemplateKHR)(VkDevice device, const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplateKHR* pDescriptorUpdateTemplate);
-typedef void (VKAPI_PTR *PFN_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice device, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator);
-typedef void (VKAPI_PTR *PFN_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, const void* pData);
-typedef void (VKAPI_PTR *PFN_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer commandBuffer, VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate, VkPipelineLayout layout, uint32_t set, const void* pData);
-
-#ifndef VK_NO_PROTOTYPES
-VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR(
-    VkDevice                                    device,
-    const VkDescriptorUpdateTemplateCreateInfoKHR* pCreateInfo,
-    const VkAllocationCallbacks*                pAllocator,
-    VkDescriptorUpdateTemplateKHR*              pDescriptorUpdateTemplate);
-
-VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR(
-    VkDevice                                    device,
-    VkDescriptorUpdateTemplateKHR               descriptorUpdateTemplate,
-    const VkAllocationCallbacks*                pAllocator);
-
-VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR(
-    VkDevice                                    device,
-    VkDescriptorSet                             descriptorSet,
-    VkDescriptorUpdateTemplateKHR               descriptorUpdateTemplate,
-    const void*                                 pData);
-
-VKAPI_ATTR void VKAPI_CALL vkCmdPushDescriptorSetWithTemplateKHR(
-    VkCommandBuffer                             commandBuffer,
-    VkDescriptorUpdateTemplateKHR               descriptorUpdateTemplate,
-    VkPipelineLayout                            layout,
-    uint32_t                                    set,
-    const void*                                 pData);
-#endif
-
 #define VK_GOOGLE_display_timing 1
 #define VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION 1
 #define VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME "VK_GOOGLE_display_timing"
@@ -4756,8 +4250,8 @@ typedef struct VkPresentTimesInfoGOOGLE {
 } VkPresentTimesInfoGOOGLE;
 
 
-typedef VkResult (VKAPI_PTR *PFN_vkGetRefreshCycleDurationGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDuratiOOGLE* pDisplayTimingProperties);
-typedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentonTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings);
+typedef VkResult (VKAPI_PTR *PFN_vkGetRefreshCycleDurationGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);
+typedef VkResult (VKAPI_PTR *PFN_vkGetPastPresentationTimingGOOGLE)(VkDevice device, VkSwapchainKHR swapchain, uint32_t* pPresentationTimingCount, VkPastPresentationTimingGOOGLE* pPresentationTimings);
 
 #ifndef VK_NO_PROTOTYPES
 VKAPI_ATTR VkResult VKAPI_CALL vkGetRefreshCycleDurationGOOGLE(