Integrate vulkan_core.h and vulkan_beta.h into master
authorBoris Zanin <boris.zanin@mobica.com>
Thu, 19 Mar 2020 13:55:22 +0000 (14:55 +0100)
committerBoris Zanin <boris.zanin@mobica.com>
Fri, 20 Mar 2020 07:06:41 +0000 (03:06 -0400)
Integrates changes from https://github.com/KhronosGroup/Vulkan-Headers/
commit fb7f9c9bcd1d1544ea203a1f3d4253d0e90c5a90.

Components: Framework, Vulkan

VK-GL-CTS issue: 2270

Change-Id: I99990212504a64445aff5ef1023af4d1f66e4329

36 files changed:
external/openglcts/modules/common/glcNearestEdgeTests.cpp
external/vulkancts/framework/vulkan/vkBasicTypes.inl
external/vulkancts/framework/vulkan/vkConcreteDeviceInterface.inl
external/vulkancts/framework/vulkan/vkConcreteInstanceInterface.inl
external/vulkancts/framework/vulkan/vkDeviceDriverImpl.inl
external/vulkancts/framework/vulkan/vkDeviceFeatures.inl
external/vulkancts/framework/vulkan/vkDeviceFeaturesForContextDecl.inl
external/vulkancts/framework/vulkan/vkDeviceFeaturesForContextDefs.inl
external/vulkancts/framework/vulkan/vkDeviceFeaturesForDefaultDeviceDefs.inl
external/vulkancts/framework/vulkan/vkDeviceFunctionPointers.inl
external/vulkancts/framework/vulkan/vkDeviceProperties.inl
external/vulkancts/framework/vulkan/vkDevicePropertiesForContextDecl.inl
external/vulkancts/framework/vulkan/vkDevicePropertiesForContextDefs.inl
external/vulkancts/framework/vulkan/vkDevicePropertiesForDefaultDeviceDefs.inl
external/vulkancts/framework/vulkan/vkExtensionFunctions.inl
external/vulkancts/framework/vulkan/vkFunctionPointerTypes.inl
external/vulkancts/framework/vulkan/vkGetStructureTypeImpl.inl
external/vulkancts/framework/vulkan/vkHandleType.inl
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/framework/vulkan/vkVulkan_c.inl
external/vulkancts/scripts/gen_framework.py
external/vulkancts/scripts/src/vulkan_beta.h [new file with mode: 0644]
external/vulkancts/scripts/src/vulkan_core.h

index 4ee37bd..a8c7c48 100644 (file)
@@ -57,12 +57,15 @@ 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      (VkDebugUtilsMessengerEXT,                      HANDLE_TYPE_DEBUG_UTILS_MESSENGER_EXT);
 VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkValidationCacheEXT,                          HANDLE_TYPE_VALIDATION_CACHE_EXT);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkAccelerationStructureNV,                     HANDLE_TYPE_ACCELERATION_STRUCTURE_NV);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkAccelerationStructureKHR,            HANDLE_TYPE_ACCELERATION_STRUCTURE_KHR);
 VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkPerformanceConfigurationINTEL,       HANDLE_TYPE_PERFORMANCE_CONFIGURATION_INTEL);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkIndirectCommandsLayoutNV,            HANDLE_TYPE_INDIRECT_COMMANDS_LAYOUT_NV);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkDeferredOperationKHR,                        HANDLE_TYPE_DEFERRED_OPERATION_KHR);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkAccelerationStructureNV,                     HANDLE_TYPE_ACCELERATION_STRUCTURE_NV);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkSamplerYcbcrConversionKHR,           HANDLE_TYPE_SAMPLER_YCBCR_CONVERSION);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE      (VkDescriptorUpdateTemplateKHR,         HANDLE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE);
 
 enum VkPipelineCacheHeaderVersion
 {
@@ -102,9 +105,15 @@ enum VkResult
        VK_ERROR_INCOMPATIBLE_DISPLAY_KHR                                               = -1000003001,
        VK_ERROR_VALIDATION_FAILED_EXT                                                  = -1000011001,
        VK_ERROR_INVALID_SHADER_NV                                                              = -1000012000,
+       VK_ERROR_INCOMPATIBLE_VERSION_KHR                                               = -1000150000,
        VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT   = -1000158000,
        VK_ERROR_NOT_PERMITTED_EXT                                                              = -1000174001,
        VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT                    = -1000255000,
+       VK_THREAD_IDLE_KHR                                                                              = 1000268000,
+       VK_THREAD_DONE_KHR                                                                              = 1000268001,
+       VK_OPERATION_DEFERRED_KHR                                                               = 1000268002,
+       VK_OPERATION_NOT_DEFERRED_KHR                                                   = 1000268003,
+       VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT                                  = 1000297000,
        VK_ERROR_OUT_OF_POOL_MEMORY_KHR                                                 = VK_ERROR_OUT_OF_POOL_MEMORY,
        VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR                                    = VK_ERROR_INVALID_EXTERNAL_HANDLE,
        VK_ERROR_FRAGMENTATION_EXT                                                              = VK_ERROR_FRAGMENTATION,
@@ -339,12 +348,6 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT                            = 1000081001,
        VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT                                                          = 1000081002,
        VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR                                                                                           = 1000084000,
-       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_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV                                      = 1000087000,
        VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT                                                                            = 1000090000,
        VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT                                                                                        = 1000091000,
@@ -408,6 +411,27 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT                       = 1000148001,
        VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT                           = 1000148002,
        VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV                                       = 1000149000,
+       VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR                                           = 1000165006,
+       VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR                                       = 1000165007,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR                                        = 1000150000,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR                          = 1000150001,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR                                        = 1000150002,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR                                        = 1000150003,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR                            = 1000150004,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR                            = 1000150005,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR                                                           = 1000150006,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_KHR                                                                       = 1000150007,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR                           = 1000150008,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR                                                            = 1000150009,
+       VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR                                                          = 1000150010,
+       VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR                                        = 1000150011,
+       VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR                                        = 1000150012,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR                                                      = 1000150013,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR                                            = 1000150014,
+       VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR                                                          = 1000150015,
+       VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR                                                      = 1000150016,
+       VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR                                                        = 1000150017,
+       VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR                                        = 1000150018,
        VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV                                     = 1000152000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV                                        = 1000154000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV                                      = 1000154001,
@@ -428,8 +452,6 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_GEOMETRY_NV                                                                                                           = 1000165003,
        VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV                                                                                         = 1000165004,
        VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV                                                                                                      = 1000165005,
-       VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV                                            = 1000165006,
-       VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV                                        = 1000165007,
        VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV                            = 1000165008,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV                                                     = 1000165009,
        VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV                                                       = 1000165011,
@@ -506,6 +528,7 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT                                     = 1000259001,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT                                     = 1000259002,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT                                         = 1000265000,
+       VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR                                                                           = 1000268000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR           = 1000269000,
        VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR                                                                                                     = 1000269001,
        VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR                                                            = 1000269002,
@@ -513,8 +536,22 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR                                                                     = 1000269004,
        VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR                                       = 1000269005,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT       = 1000276000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV                       = 1000277000,
+       VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV                                                          = 1000277001,
+       VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV                                        = 1000277002,
+       VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV                                                                     = 1000277003,
+       VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV                                                       = 1000277004,
+       VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV                                                                            = 1000277005,
+       VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV                                        = 1000277006,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV                         = 1000277007,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT                           = 1000281000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT                         = 1000281001,
+       VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM            = 1000282000,
+       VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM                                                         = 1000282001,
+       VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR                                                                      = 1000290000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT          = 1000297000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV                                        = 1000300000,
+       VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV                                                      = 1000300001,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES                                                     = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES                                        = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
        VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT                                                                          = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
@@ -598,6 +635,8 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT                            = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES,
        VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT            = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO,
        VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT           = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT,
+       VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV                                            = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR,
+       VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV                                        = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR                                          = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,
        VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR                                                                     = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR           = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES,
@@ -628,6 +667,7 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR                                       = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO,
        VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR                                         = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT                                         = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES,
+       VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL                                        = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL,
        VK_STRUCTURE_TYPE_MAX_ENUM                                                                                                                      = 0x7FFFFFFF,
 };
 
@@ -959,14 +999,16 @@ enum VkPhysicalDeviceType
 
 enum VkQueryType
 {
-       VK_QUERY_TYPE_OCCLUSION                                                                 = 0,
-       VK_QUERY_TYPE_PIPELINE_STATISTICS                                               = 1,
-       VK_QUERY_TYPE_TIMESTAMP                                                                 = 2,
-       VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT                             = 1000028004,
-       VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR                                             = 1000116000,
-       VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV  = 1000165000,
-       VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL                                   = 1000210000,
-       VK_QUERY_TYPE_MAX_ENUM                                                                  = 0x7FFFFFFF,
+       VK_QUERY_TYPE_OCCLUSION                                                                         = 0,
+       VK_QUERY_TYPE_PIPELINE_STATISTICS                                                       = 1,
+       VK_QUERY_TYPE_TIMESTAMP                                                                         = 2,
+       VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT                                     = 1000028004,
+       VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR                                                     = 1000116000,
+       VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR         = 1000165000,
+       VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR     = 1000150000,
+       VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL                                           = 1000210000,
+       VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV          = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR,
+       VK_QUERY_TYPE_MAX_ENUM                                                                          = 0x7FFFFFFF,
 };
 
 enum VkSharingMode
@@ -1282,7 +1324,8 @@ enum VkDescriptorType
        VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC               = 9,
        VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT                             = 10,
        VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT             = 1000138000,
-       VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV    = 1000165000,
+       VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR   = 1000165000,
+       VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV    = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR,
        VK_DESCRIPTOR_TYPE_MAX_ENUM                                             = 0x7FFFFFFF,
 };
 
@@ -1307,7 +1350,8 @@ enum VkPipelineBindPoint
 {
        VK_PIPELINE_BIND_POINT_GRAPHICS                 = 0,
        VK_PIPELINE_BIND_POINT_COMPUTE                  = 1,
-       VK_PIPELINE_BIND_POINT_RAY_TRACING_NV   = 1000165000,
+       VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR  = 1000165000,
+       VK_PIPELINE_BIND_POINT_RAY_TRACING_NV   = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR,
        VK_PIPELINE_BIND_POINT_MAX_ENUM                 = 0x7FFFFFFF,
 };
 
@@ -1323,8 +1367,9 @@ enum VkIndexType
 {
        VK_INDEX_TYPE_UINT16    = 0,
        VK_INDEX_TYPE_UINT32    = 1,
-       VK_INDEX_TYPE_NONE_NV   = 1000165000,
+       VK_INDEX_TYPE_NONE_KHR  = 1000165000,
        VK_INDEX_TYPE_UINT8_EXT = 1000265000,
+       VK_INDEX_TYPE_NONE_NV   = VK_INDEX_TYPE_NONE_KHR,
        VK_INDEX_TYPE_MAX_ENUM  = 0x7FFFFFFF,
 };
 
@@ -1371,14 +1416,15 @@ enum VkObjectType
        VK_OBJECT_TYPE_DISPLAY_KHR                                              = 1000002000,
        VK_OBJECT_TYPE_DISPLAY_MODE_KHR                                 = 1000002001,
        VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT                = 1000011000,
-       VK_OBJECT_TYPE_OBJECT_TABLE_NVX                                 = 1000086000,
-       VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX             = 1000086001,
        VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT                = 1000128000,
+       VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR               = 1000165000,
        VK_OBJECT_TYPE_VALIDATION_CACHE_EXT                             = 1000160000,
-       VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV                = 1000165000,
        VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL  = 1000210000,
+       VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR                   = 1000268000,
+       VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV              = 1000277000,
        VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR   = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
        VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR             = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
+       VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV                = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR,
        VK_OBJECT_TYPE_MAX_ENUM                                                 = 0x7FFFFFFF,
 };
 
@@ -1387,6 +1433,7 @@ enum VkVendorId
        VK_VENDOR_ID_VIV                = 0x10001,
        VK_VENDOR_ID_VSI                = 0x10002,
        VK_VENDOR_ID_KAZAN              = 0x10003,
+       VK_VENDOR_ID_CODEPLAY   = 0x10004,
        VK_VENDOR_ID_MAX_ENUM   = 0x7FFFFFFF,
 };
 
@@ -1636,16 +1683,15 @@ enum VkDebugReportObjectTypeEXT
        VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_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_OBJECT_TABLE_NVX_EXT                                = 31,
-       VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT    = 32,
        VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT                    = 33,
        VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT                = 1000156000,
        VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT              = 1000085000,
-       VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT               = 1000165000,
+       VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT              = 1000165000,
        VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT                                    = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
        VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT                                = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
        VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT  = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,
        VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT    = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,
+       VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT               = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT,
        VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT                                                = 0x7FFFFFFF,
 };
 
@@ -1674,31 +1720,6 @@ enum VkValidationCheckEXT
        VK_VALIDATION_CHECK_MAX_ENUM_EXT        = 0x7FFFFFFF,
 };
 
-enum VkIndirectCommandsTokenTypeNVX
-{
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX            = 0,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX      = 1,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX        = 2,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX       = 3,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX       = 4,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX        = 5,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX                        = 6,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX            = 7,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_NVX_LAST,
-       VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX            = 0x7FFFFFFF,
-};
-
-enum VkObjectEntryTypeNVX
-{
-       VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX = 0,
-       VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX               = 1,
-       VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX   = 2,
-       VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX  = 3,
-       VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX  = 4,
-       VK_OBJECT_ENTRY_TYPE_NVX_LAST,
-       VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX               = 0x7FFFFFFF,
-};
-
 enum VkDisplayPowerStateEXT
 {
        VK_DISPLAY_POWER_STATE_OFF_EXT          = 0,
@@ -1806,46 +1827,60 @@ enum VkCoarseSampleOrderTypeNV
        VK_COARSE_SAMPLE_ORDER_TYPE_MAX_ENUM_NV         = 0x7FFFFFFF,
 };
 
-enum VkAccelerationStructureTypeNV
+enum VkRayTracingShaderGroupTypeKHR
 {
-       VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV             = 0,
-       VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV  = 1,
-       VK_ACCELERATION_STRUCTURE_TYPE_NV_LAST,
-       VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_NV              = 0x7FFFFFFF,
+       VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR                            = 0,
+       VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR        = 1,
+       VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR       = 2,
+       VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV                                     = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
+       VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV         = VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR,
+       VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV        = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR,
+       VK_RAY_TRACING_SHADER_GROUP_TYPE_KHR_LAST,
+       VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR                           = 0x7FFFFFFF,
 };
 
-enum VkRayTracingShaderGroupTypeNV
+enum VkGeometryTypeKHR
 {
-       VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV                                     = 0,
-       VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV         = 1,
-       VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV        = 2,
-       VK_RAY_TRACING_SHADER_GROUP_TYPE_NV_LAST,
-       VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_NV                            = 0x7FFFFFFF,
+       VK_GEOMETRY_TYPE_TRIANGLES_KHR  = 0,
+       VK_GEOMETRY_TYPE_AABBS_KHR              = 1,
+       VK_GEOMETRY_TYPE_INSTANCES_KHR  = 1000150000,
+       VK_GEOMETRY_TYPE_TRIANGLES_NV   = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
+       VK_GEOMETRY_TYPE_AABBS_NV               = VK_GEOMETRY_TYPE_AABBS_KHR,
+       VK_GEOMETRY_TYPE_MAX_ENUM_KHR   = 0x7FFFFFFF,
 };
 
-enum VkGeometryTypeNV
+enum VkAccelerationStructureTypeKHR
 {
-       VK_GEOMETRY_TYPE_TRIANGLES_NV   = 0,
-       VK_GEOMETRY_TYPE_AABBS_NV               = 1,
-       VK_GEOMETRY_TYPE_NV_LAST,
-       VK_GEOMETRY_TYPE_MAX_ENUM_NV    = 0x7FFFFFFF,
+       VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR    = 0,
+       VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1,
+       VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV             = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
+       VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV  = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
+       VK_ACCELERATION_STRUCTURE_TYPE_KHR_LAST,
+       VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR             = 0x7FFFFFFF,
 };
 
-enum VkCopyAccelerationStructureModeNV
+enum VkCopyAccelerationStructureModeKHR
 {
-       VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV    = 0,
-       VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV  = 1,
-       VK_COPY_ACCELERATION_STRUCTURE_MODE_NV_LAST,
-       VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_NV = 0x7FFFFFFF,
+       VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR           = 0,
+       VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR         = 1,
+       VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR       = 2,
+       VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR     = 3,
+       VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV            = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
+       VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV          = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,
+       VK_COPY_ACCELERATION_STRUCTURE_MODE_KHR_LAST,
+       VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR        = 0x7FFFFFFF,
 };
 
-enum VkAccelerationStructureMemoryRequirementsTypeNV
+enum VkAccelerationStructureMemoryRequirementsTypeKHR
 {
-       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV                    = 0,
-       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV             = 1,
-       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV    = 2,
-       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_NV_LAST,
-       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV                  = 0x7FFFFFFF,
+       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR                   = 0,
+       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR    = 1,
+       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR   = 2,
+       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV                    = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR,
+       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV             = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR,
+       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV    = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR,
+       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_KHR_LAST,
+       VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_KHR                 = 0x7FFFFFFF,
 };
 
 enum VkQueueGlobalPriorityEXT
@@ -1922,6 +1957,7 @@ enum VkValidationFeatureEnableEXT
        VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT                                           = 0,
        VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT      = 1,
        VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT                                         = 2,
+       VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT                                           = 3,
        VK_VALIDATION_FEATURE_ENABLE_EXT_LAST,
        VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT                                                       = 0x7FFFFFFF,
 };
@@ -1983,6 +2019,29 @@ enum VkLineRasterizationModeEXT
        VK_LINE_RASTERIZATION_MODE_MAX_ENUM_EXT                         = 0x7FFFFFFF,
 };
 
+enum VkIndirectCommandsTokenTypeNV
+{
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV         = 0,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV          = 1,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV         = 2,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV        = 3,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV        = 4,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV         = 5,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV                         = 6,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV           = 7,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_NV_LAST,
+       VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV                     = 0x7FFFFFFF,
+};
+
+enum VkAccelerationStructureBuildTypeKHR
+{
+       VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR                   = 0,
+       VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR                 = 1,
+       VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2,
+       VK_ACCELERATION_STRUCTURE_BUILD_TYPE_KHR_LAST,
+       VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR               = 0x7FFFFFFF,
+};
+
 enum VkFullScreenExclusiveEXT
 {
        VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT                            = 0,
@@ -1993,15 +2052,35 @@ enum VkFullScreenExclusiveEXT
        VK_FULL_SCREEN_EXCLUSIVE_MAX_ENUM_EXT                           = 0x7FFFFFFF,
 };
 
+typedef VkPointClippingBehavior VkPointClippingBehaviorKHR;
+
+typedef VkTessellationDomainOrigin VkTessellationDomainOriginKHR;
+
+typedef VkSamplerYcbcrModelConversion VkSamplerYcbcrModelConversionKHR;
+
+typedef VkSamplerYcbcrRange VkSamplerYcbcrRangeKHR;
 
+typedef VkChromaLocation VkChromaLocationKHR;
 
+typedef VkDescriptorUpdateTemplateType VkDescriptorUpdateTemplateTypeKHR;
 
+typedef VkDriverId VkDriverIdKHR;
 
+typedef VkShaderFloatControlsIndependence VkShaderFloatControlsIndependenceKHR;
 
+typedef VkSamplerReductionMode VkSamplerReductionModeEXT;
 
+typedef VkSemaphoreType VkSemaphoreTypeKHR;
 
+typedef VkRayTracingShaderGroupTypeKHR VkRayTracingShaderGroupTypeNV;
 
+typedef VkGeometryTypeKHR VkGeometryTypeNV;
 
+typedef VkAccelerationStructureTypeKHR VkAccelerationStructureTypeNV;
+
+typedef VkCopyAccelerationStructureModeKHR VkCopyAccelerationStructureModeNV;
+
+typedef VkAccelerationStructureMemoryRequirementsTypeKHR VkAccelerationStructureMemoryRequirementsTypeNV;
 
 enum VkFormatFeatureFlagBits
 {
@@ -2029,6 +2108,7 @@ enum VkFormatFeatureFlagBits
        VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT                                                                                                            = 0x00800000,
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT                                                                                                       = 0x00010000,
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG                                                                                            = 0x00002000,
+       VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR                                                                          = 0x20000000,
        VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT                                                                                                          = 0x01000000,
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR                                                                                                                          = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR                                                                                                                          = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
@@ -2163,13 +2243,15 @@ enum VkPipelineStageFlagBits
        VK_PIPELINE_STAGE_ALL_COMMANDS_BIT                                              = 0x00010000,
        VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT                    = 0x01000000,
        VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT                 = 0x00040000,
-       VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX                               = 0x00020000,
+       VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR                    = 0x00200000,
+       VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR  = 0x02000000,
        VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV                             = 0x00400000,
-       VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV                             = 0x00200000,
-       VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV   = 0x02000000,
        VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV                                    = 0x00080000,
        VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV                                    = 0x00100000,
        VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT              = 0x00800000,
+       VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV                             = 0x00020000,
+       VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV                             = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
+       VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV   = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
        VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM                                    = 0x7FFFFFFF,
 };
 typedef deUint32 VkPipelineStageFlags;
@@ -2272,7 +2354,8 @@ enum VkBufferUsageFlagBits
        VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT                       = 0x00000800,
        VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT       = 0x00001000,
        VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT                           = 0x00000200,
-       VK_BUFFER_USAGE_RAY_TRACING_BIT_NV                                                      = 0x00000400,
+       VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR                                                     = 0x00000400,
+       VK_BUFFER_USAGE_RAY_TRACING_BIT_NV                                                      = VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR,
        VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT                           = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
        VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR                           = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
        VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM                                                      = 0x7FFFFFFF,
@@ -2292,20 +2375,37 @@ enum VkShaderModuleCreateFlagBits
 };
 typedef deUint32 VkShaderModuleCreateFlags;
 
+enum VkPipelineCacheCreateFlagBits
+{
+       VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT        = 0x00000001,
+       VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM                                     = 0x7FFFFFFF,
+};
+typedef deUint32 VkPipelineCacheCreateFlags;
+
 enum VkPipelineCreateFlagBits
 {
-       VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT                                     = 0x00000001,
-       VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT                                        = 0x00000002,
-       VK_PIPELINE_CREATE_DERIVATIVE_BIT                                                       = 0x00000004,
-       VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT                     = 0x00000008,
-       VK_PIPELINE_CREATE_DISPATCH_BASE_BIT                                            = 0x00000010,
-       VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV                                         = 0x00000020,
-       VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR                           = 0x00000040,
-       VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR     = 0x00000080,
-       VK_PIPELINE_CREATE_DISPATCH_BASE                                                        = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
-       VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR         = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
-       VK_PIPELINE_CREATE_DISPATCH_BASE_KHR                                            = VK_PIPELINE_CREATE_DISPATCH_BASE,
-       VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM                                           = 0x7FFFFFFF,
+       VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT                                                     = 0x00000001,
+       VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT                                                        = 0x00000002,
+       VK_PIPELINE_CREATE_DERIVATIVE_BIT                                                                       = 0x00000004,
+       VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT                                     = 0x00000008,
+       VK_PIPELINE_CREATE_DISPATCH_BASE_BIT                                                            = 0x00000010,
+       VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR          = 0x00004000,
+       VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR      = 0x00008000,
+       VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR                     = 0x00010000,
+       VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR     = 0x00020000,
+       VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR                           = 0x00001000,
+       VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR                                       = 0x00002000,
+       VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV                                                         = 0x00000020,
+       VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR                                           = 0x00000040,
+       VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR                     = 0x00000080,
+       VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV                                                     = 0x00040000,
+       VK_PIPELINE_CREATE_LIBRARY_BIT_KHR                                                                      = 0x00000800,
+       VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT            = 0x00000100,
+       VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT                                      = 0x00000200,
+       VK_PIPELINE_CREATE_DISPATCH_BASE                                                                        = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
+       VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR                         = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
+       VK_PIPELINE_CREATE_DISPATCH_BASE_KHR                                                            = VK_PIPELINE_CREATE_DISPATCH_BASE,
+       VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM                                                           = 0x7FFFFFFF,
 };
 typedef deUint32 VkPipelineCreateFlags;
 
@@ -2327,14 +2427,20 @@ enum VkShaderStageFlagBits
        VK_SHADER_STAGE_COMPUTE_BIT                                     = 0x00000020,
        VK_SHADER_STAGE_ALL_GRAPHICS                            = 0x0000001F,
        VK_SHADER_STAGE_ALL                                                     = 0x7FFFFFFF,
-       VK_SHADER_STAGE_RAYGEN_BIT_NV                           = 0x00000100,
-       VK_SHADER_STAGE_ANY_HIT_BIT_NV                          = 0x00000200,
-       VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV                      = 0x00000400,
-       VK_SHADER_STAGE_MISS_BIT_NV                                     = 0x00000800,
-       VK_SHADER_STAGE_INTERSECTION_BIT_NV                     = 0x00001000,
-       VK_SHADER_STAGE_CALLABLE_BIT_NV                         = 0x00002000,
+       VK_SHADER_STAGE_RAYGEN_BIT_KHR                          = 0x00000100,
+       VK_SHADER_STAGE_ANY_HIT_BIT_KHR                         = 0x00000200,
+       VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR                     = 0x00000400,
+       VK_SHADER_STAGE_MISS_BIT_KHR                            = 0x00000800,
+       VK_SHADER_STAGE_INTERSECTION_BIT_KHR            = 0x00001000,
+       VK_SHADER_STAGE_CALLABLE_BIT_KHR                        = 0x00002000,
        VK_SHADER_STAGE_TASK_BIT_NV                                     = 0x00000040,
        VK_SHADER_STAGE_MESH_BIT_NV                                     = 0x00000080,
+       VK_SHADER_STAGE_RAYGEN_BIT_NV                           = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
+       VK_SHADER_STAGE_ANY_HIT_BIT_NV                          = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
+       VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV                      = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
+       VK_SHADER_STAGE_MISS_BIT_NV                                     = VK_SHADER_STAGE_MISS_BIT_KHR,
+       VK_SHADER_STAGE_INTERSECTION_BIT_NV                     = VK_SHADER_STAGE_INTERSECTION_BIT_KHR,
+       VK_SHADER_STAGE_CALLABLE_BIT_NV                         = VK_SHADER_STAGE_CALLABLE_BIT_KHR,
        VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM                      = 0x7FFFFFFF,
 };
 typedef deUint32 VkShaderStageFlags;
@@ -2395,6 +2501,7 @@ typedef deUint32 VkFramebufferCreateFlags;
 
 enum VkRenderPassCreateFlagBits
 {
+       VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM        = 0x00000002,
        VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM        = 0x7FFFFFFF,
 };
 typedef deUint32 VkRenderPassCreateFlags;
@@ -2437,13 +2544,15 @@ enum VkAccessFlagBits
        VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT       = 0x04000000,
        VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT      = 0x08000000,
        VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT            = 0x00100000,
-       VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX                          = 0x00020000,
-       VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX                         = 0x00040000,
        VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT     = 0x00080000,
+       VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR           = 0x00200000,
+       VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR          = 0x00400000,
        VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV                        = 0x00800000,
-       VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV            = 0x00200000,
-       VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV           = 0x00400000,
        VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT                     = 0x01000000,
+       VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV                        = 0x00020000,
+       VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV                       = 0x00040000,
+       VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV            = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
+       VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV           = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
        VK_ACCESS_FLAG_BITS_MAX_ENUM                                            = 0x7FFFFFFF,
 };
 typedef deUint32 VkAccessFlags;
@@ -2794,24 +2903,6 @@ enum VkConditionalRenderingFlagBitsEXT
 };
 typedef deUint32 VkConditionalRenderingFlagsEXT;
 
-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,
-};
-typedef deUint32 VkIndirectCommandsLayoutUsageFlagsNVX;
-
-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,
-};
-typedef deUint32 VkObjectEntryUsageFlagsNVX;
-
 enum VkSurfaceCounterFlagBitsEXT
 {
        VK_SURFACE_COUNTER_VBLANK_EXT                           = 0x00000001,
@@ -2838,34 +2929,45 @@ enum VkDebugUtilsMessageTypeFlagBitsEXT
 };
 typedef deUint32 VkDebugUtilsMessageTypeFlagsEXT;
 
-enum VkGeometryFlagBitsNV
+enum VkGeometryFlagBitsKHR
 {
-       VK_GEOMETRY_OPAQUE_BIT_NV                                                       = 0x00000001,
-       VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV      = 0x00000002,
-       VK_GEOMETRY_FLAG_BITS_MAX_ENUM_NV                                       = 0x7FFFFFFF,
+       VK_GEOMETRY_OPAQUE_BIT_KHR                                                      = 0x00000001,
+       VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR     = 0x00000002,
+       VK_GEOMETRY_OPAQUE_BIT_NV                                                       = VK_GEOMETRY_OPAQUE_BIT_KHR,
+       VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV      = VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR,
+       VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR                                      = 0x7FFFFFFF,
 };
-typedef deUint32 VkGeometryFlagsNV;
+typedef deUint32 VkGeometryFlagsKHR;
 
-enum VkGeometryInstanceFlagBitsNV
+enum VkGeometryInstanceFlagBitsKHR
 {
-       VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV                       = 0x00000001,
-       VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV     = 0x00000002,
-       VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV                                        = 0x00000004,
-       VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV                                     = 0x00000008,
-       VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_NV                                      = 0x7FFFFFFF,
+       VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR               = 0x00000001,
+       VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR    = 0x00000002,
+       VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR                                               = 0x00000004,
+       VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR                                    = 0x00000008,
+       VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV                               = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
+       VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV             = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
+       VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV                                                = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,
+       VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV                                             = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,
+       VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR                                             = 0x7FFFFFFF,
 };
-typedef deUint32 VkGeometryInstanceFlagsNV;
+typedef deUint32 VkGeometryInstanceFlagsKHR;
 
-enum VkBuildAccelerationStructureFlagBitsNV
+enum VkBuildAccelerationStructureFlagBitsKHR
 {
-       VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV                     = 0x00000001,
-       VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV         = 0x00000002,
-       VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV        = 0x00000004,
-       VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV        = 0x00000008,
-       VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV                       = 0x00000010,
-       VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_NV           = 0x7FFFFFFF,
+       VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR            = 0x00000001,
+       VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR        = 0x00000002,
+       VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR       = 0x00000004,
+       VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR       = 0x00000008,
+       VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR                      = 0x00000010,
+       VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV                     = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
+       VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV         = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
+       VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV        = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
+       VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV        = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
+       VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV                       = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
+       VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR          = 0x7FFFFFFF,
 };
-typedef deUint32 VkBuildAccelerationStructureFlagsNV;
+typedef deUint32 VkBuildAccelerationStructureFlagsKHR;
 
 enum VkPipelineCompilerControlFlagBitsAMD
 {
@@ -2901,6 +3003,31 @@ enum VkToolPurposeFlagBitsEXT
 };
 typedef deUint32 VkToolPurposeFlagsEXT;
 
+enum VkIndirectStateFlagBitsNV
+{
+       VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV = 0x00000001,
+       VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF,
+};
+typedef deUint32 VkIndirectStateFlagsNV;
+
+enum VkIndirectCommandsLayoutUsageFlagBitsNV
+{
+       VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV    = 0x00000001,
+       VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV              = 0x00000002,
+       VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV    = 0x00000004,
+       VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV                 = 0x7FFFFFFF,
+};
+typedef deUint32 VkIndirectCommandsLayoutUsageFlagsNV;
+
+enum VkDeviceDiagnosticsConfigFlagBitsNV
+{
+       VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV            = 0x00000001,
+       VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV            = 0x00000002,
+       VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV        = 0x00000004,
+       VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV                                      = 0x7FFFFFFF,
+};
+typedef deUint32 VkDeviceDiagnosticsConfigFlagsNV;
+
 typedef deUint32 VkInstanceCreateFlags;
 
 typedef deUint32 VkDeviceCreateFlags;
@@ -2915,8 +3042,6 @@ typedef deUint32 VkQueryPoolCreateFlags;
 
 typedef deUint32 VkBufferViewCreateFlags;
 
-typedef deUint32 VkPipelineCacheCreateFlags;
-
 typedef deUint32 VkPipelineVertexInputStateCreateFlags;
 
 typedef deUint32 VkPipelineInputAssemblyStateCreateFlags;
@@ -2993,20 +3118,41 @@ typedef deUint32 VkXcbSurfaceCreateFlagsKHR;
 
 typedef deUint32 VkXlibSurfaceCreateFlagsKHR;
 
+typedef VkPeerMemoryFeatureFlags VkPeerMemoryFeatureFlagsKHR;
+
+typedef VkMemoryAllocateFlags VkMemoryAllocateFlagsKHR;
+
+typedef VkExternalMemoryHandleTypeFlags VkExternalMemoryHandleTypeFlagsKHR;
+
+typedef VkExternalMemoryFeatureFlags VkExternalMemoryFeatureFlagsKHR;
 
+typedef VkExternalFenceHandleTypeFlags VkExternalFenceHandleTypeFlagsKHR;
 
+typedef VkExternalFenceFeatureFlags VkExternalFenceFeatureFlagsKHR;
 
+typedef VkFenceImportFlags VkFenceImportFlagsKHR;
 
+typedef VkSemaphoreImportFlags VkSemaphoreImportFlagsKHR;
 
+typedef VkExternalSemaphoreHandleTypeFlags VkExternalSemaphoreHandleTypeFlagsKHR;
 
+typedef VkExternalSemaphoreFeatureFlags VkExternalSemaphoreFeatureFlagsKHR;
 
+typedef VkResolveModeFlags VkResolveModeFlagsKHR;
 
+typedef VkDescriptorBindingFlags VkDescriptorBindingFlagsEXT;
 
+typedef VkSemaphoreWaitFlags VkSemaphoreWaitFlagsKHR;
 
+typedef VkGeometryFlagsKHR VkGeometryFlagsNV;
 
+typedef VkGeometryInstanceFlagsKHR VkGeometryInstanceFlagsNV;
 
+typedef VkBuildAccelerationStructureFlagsKHR VkBuildAccelerationStructureFlagsNV;
 
+typedef VkCommandPoolTrimFlags VkCommandPoolTrimFlagsKHR;
 
+typedef VkDescriptorUpdateTemplateCreateFlags VkDescriptorUpdateTemplateCreateFlagsKHR;
 
 VK_DEFINE_PLATFORM_TYPE(XlibDisplayPtr,                                void*);
 VK_DEFINE_PLATFORM_TYPE(XlibWindow,                                    deUintptr);
@@ -3094,6 +3240,7 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*);
 #define VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION 1
 #define VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION 1
 #define VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION 1
+#define VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION 1
 #define VK_EXT_DEBUG_REPORT_SPEC_VERSION 9
 #define VK_NV_GLSL_SHADER_SPEC_VERSION 1
 #define VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION 1
@@ -3123,7 +3270,6 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*);
 #define VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION 1
 #define VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION 1
 #define VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION 2
-#define VK_NVX_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 3
 #define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1
 #define VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION 1
 #define VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION 1
@@ -3162,7 +3308,8 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*);
 #define VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION 1
 #define VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION 3
 #define VK_NV_RAY_TRACING_SPEC_VERSION 3
-#define VK_SHADER_UNUSED_NV (~0U)
+#define VK_SHADER_UNUSED_KHR (~0U)
+#define VK_SHADER_UNUSED_NV VK_SHADER_UNUSED_KHR
 #define VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION 2
 #define VK_EXT_FILTER_CUBIC_SPEC_VERSION 3
 #define VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION 2
@@ -3182,7 +3329,7 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*);
 #define VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION 1
 #define VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION 2
 #define VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION 1
-#define VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION 1
+#define VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION 2
 #define VK_EXT_PCI_BUS_INFO_SPEC_VERSION 2
 #define VK_AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION 1
 #define VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION 1
@@ -3198,7 +3345,7 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*);
 #define VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION 2
 #define VK_EXT_TOOLING_INFO_SPEC_VERSION 1
 #define VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION 1
-#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 2
+#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 3
 #define VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION 1
 #define VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION 1
 #define VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION 1
@@ -3208,10 +3355,17 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                           void*);
 #define VK_EXT_HOST_QUERY_RESET_SPEC_VERSION 1
 #define VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION 1
 #define VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION 1
+#define VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 3
 #define VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION 1
+#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 1
 #define VK_GOOGLE_USER_TYPE_SPEC_VERSION 1
+#define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION 2
+#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION 1
 #define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6
 #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 3
+#define VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION 2
+#define VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION 1
+#define VK_KHR_RAY_TRACING_SPEC_VERSION 8
 #define VK_FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION 1
 #define VK_GGP_STREAM_DESCRIPTOR_SURFACE_SPEC_VERSION 1
 #define VK_GGP_FRAME_TOKEN_SPEC_VERSION 1
index c46db92..4031f4d 100644 (file)
@@ -191,14 +191,6 @@ virtual void                               cmdDrawIndexedIndirectCountAMD                                  (VkCommandBuffer commandBuffe
 virtual VkResult                       getShaderInfoAMD                                                                (VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, deUintptr* pInfoSize, void* pInfo) const;
 virtual void                           cmdBeginConditionalRenderingEXT                                 (VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin) const;
 virtual void                           cmdEndConditionalRenderingEXT                                   (VkCommandBuffer commandBuffer) 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                           cmdSetViewportWScalingNV                                                (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewportWScalingNV* pViewportWScalings) const;
 virtual VkResult                       displayPowerControlEXT                                                  (VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo) const;
 virtual VkResult                       registerDeviceEventEXT                                                  (VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const;
@@ -226,16 +218,20 @@ virtual void                              cmdBindShadingRateImageNV                                               (VkCommandBuffer commandBuffer, V
 virtual void                           cmdSetViewportShadingRatePaletteNV                              (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkShadingRatePaletteNV* pShadingRatePalettes) const;
 virtual void                           cmdSetCoarseSampleOrderNV                                               (VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, deUint32 customSampleOrderCount, const VkCoarseSampleOrderCustomNV* pCustomSampleOrders) const;
 virtual VkResult                       createAccelerationStructureNV                                   (VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure) const;
+virtual void                           destroyAccelerationStructureKHR                                 (VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator) const;
 virtual void                           destroyAccelerationStructureNV                                  (VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator) const;
 virtual void                           getAccelerationStructureMemoryRequirementsNV    (VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements) const;
-virtual VkResult                       bindAccelerationStructureMemoryNV                               (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos) const;
-virtual void                           cmdBuildAccelerationStructureNV                                 (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset) const;
-virtual void                           cmdCopyAccelerationStructureNV                                  (VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeNV mode) const;
+virtual VkResult                       bindAccelerationStructureMemoryKHR                              (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos) const;
+virtual VkResult                       bindAccelerationStructureMemoryNV                               (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos) const;
+virtual void                           cmdBuildAccelerationStructureNV                                 (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset) const;
+virtual void                           cmdCopyAccelerationStructureNV                                  (VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode) const;
 virtual void                           cmdTraceRaysNV                                                                  (VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, deUint32 width, deUint32 height, deUint32 depth) const;
 virtual VkResult                       createRayTracingPipelinesNV                                             (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const;
+virtual VkResult                       getRayTracingShaderGroupHandlesKHR                              (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const;
 virtual VkResult                       getRayTracingShaderGroupHandlesNV                               (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const;
-virtual VkResult                       getAccelerationStructureHandleNV                                (VkDevice device, VkAccelerationStructureNV accelerationStructure, deUintptr dataSize, void* pData) const;
-virtual void                           cmdWriteAccelerationStructuresPropertiesNV              (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const;
+virtual VkResult                       getAccelerationStructureHandleNV                                (VkDevice device, VkAccelerationStructureKHR accelerationStructure, deUintptr dataSize, void* pData) const;
+virtual void                           cmdWriteAccelerationStructuresPropertiesKHR             (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const;
+virtual void                           cmdWriteAccelerationStructuresPropertiesNV              (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const;
 virtual VkResult                       compileDeferredNV                                                               (VkDevice device, VkPipeline pipeline, deUint32 shader) const;
 virtual VkResult                       getMemoryHostPointerPropertiesEXT                               (VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties) const;
 virtual void                           cmdWriteBufferMarkerAMD                                                 (VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, deUint32 marker) const;
@@ -258,8 +254,37 @@ virtual VkResult                   getPerformanceParameterINTEL                                    (VkDevice device, VkPerforma
 virtual void                           setLocalDimmingAMD                                                              (VkDevice device, VkSwapchainKHR swapChain, VkBool32 localDimmingEnable) const;
 virtual VkDeviceAddress                getBufferDeviceAddressEXT                                               (VkDevice device, const VkBufferDeviceAddressInfo* pInfo) const;
 virtual void                           cmdSetLineStippleEXT                                                    (VkCommandBuffer commandBuffer, deUint32 lineStippleFactor, deUint16 lineStipplePattern) const;
+virtual void                           getGeneratedCommandsMemoryRequirementsNV                (VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements) const;
+virtual void                           cmdPreprocessGeneratedCommandsNV                                (VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) const;
+virtual void                           cmdExecuteGeneratedCommandsNV                                   (VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) const;
+virtual void                           cmdBindPipelineShaderGroupNV                                    (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, deUint32 groupIndex) const;
+virtual VkResult                       createIndirectCommandsLayoutNV                                  (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout) const;
+virtual void                           destroyIndirectCommandsLayoutNV                                 (VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const;
 virtual VkResult                       getAndroidHardwareBufferPropertiesANDROID               (VkDevice device, const struct pt::AndroidHardwareBufferPtr buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties) const;
 virtual VkResult                       getMemoryAndroidHardwareBufferANDROID                   (VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct pt::AndroidHardwareBufferPtr* pBuffer) const;
+virtual VkResult                       createDeferredOperationKHR                                              (VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation) const;
+virtual void                           destroyDeferredOperationKHR                                             (VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator) const;
+virtual uint32_t                       getDeferredOperationMaxConcurrencyKHR                   (VkDevice device, VkDeferredOperationKHR operation) const;
+virtual VkResult                       getDeferredOperationResultKHR                                   (VkDevice device, VkDeferredOperationKHR operation) const;
+virtual VkResult                       deferredOperationJoinKHR                                                (VkDevice device, VkDeferredOperationKHR operation) const;
+virtual VkResult                       createAccelerationStructureKHR                                  (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure) const;
+virtual void                           getAccelerationStructureMemoryRequirementsKHR   (VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements) const;
+virtual void                           cmdBuildAccelerationStructureKHR                                (VkCommandBuffer commandBuffer, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos) const;
+virtual void                           cmdBuildAccelerationStructureIndirectKHR                (VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, deUint32 indirectStride) const;
+virtual VkResult                       buildAccelerationStructureKHR                                   (VkDevice device, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos) const;
+virtual VkResult                       copyAccelerationStructureKHR                                    (VkDevice device, const VkCopyAccelerationStructureInfoKHR* pInfo) const;
+virtual VkResult                       copyAccelerationStructureToMemoryKHR                    (VkDevice device, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) const;
+virtual VkResult                       copyMemoryToAccelerationStructureKHR                    (VkDevice device, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) const;
+virtual VkResult                       writeAccelerationStructuresPropertiesKHR                (VkDevice device, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, deUintptr dataSize, void* pData, deUintptr stride) const;
+virtual void                           cmdCopyAccelerationStructureKHR                                 (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo) const;
+virtual void                           cmdCopyAccelerationStructureToMemoryKHR                 (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) const;
+virtual void                           cmdCopyMemoryToAccelerationStructureKHR                 (VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) const;
+virtual void                           cmdTraceRaysKHR                                                                 (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, deUint32 width, deUint32 height, deUint32 depth) const;
+virtual VkResult                       createRayTracingPipelinesKHR                                    (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const;
+virtual VkDeviceAddress                getAccelerationStructureDeviceAddressKHR                (VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo) const;
+virtual VkResult                       getRayTracingCaptureReplayShaderGroupHandlesKHR (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const;
+virtual void                           cmdTraceRaysIndirectKHR                                                 (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, VkBuffer buffer, VkDeviceSize offset) const;
+virtual VkResult                       getDeviceAccelerationStructureCompatibilityKHR  (VkDevice device, const VkAccelerationStructureVersionKHR* version) const;
 virtual VkResult                       getMemoryWin32HandleKHR                                                 (VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const;
 virtual VkResult                       getMemoryWin32HandlePropertiesKHR                               (VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, pt::Win32Handle handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties) const;
 virtual VkResult                       importSemaphoreWin32HandleKHR                                   (VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo) const;
index 0316326..ea5200c 100644 (file)
@@ -49,7 +49,6 @@ virtual VkResult      createDebugReportCallbackEXT                                                                    (VkInstance instance, cons
 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;
-virtual void           getPhysicalDeviceGeneratedCommandsPropertiesNVX                                 (VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits) const;
 virtual VkResult       releaseDisplayEXT                                                                                               (VkPhysicalDevice physicalDevice, VkDisplayKHR display) const;
 virtual VkResult       getPhysicalDeviceSurfaceCapabilities2EXT                                                (VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities) const;
 virtual VkResult       createDebugUtilsMessengerEXT                                                                    (VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugUtilsMessengerEXT* pMessenger) const;
index 298c2bf..03eff0d 100644 (file)
@@ -952,46 +952,6 @@ void DeviceDriver::cmdEndConditionalRenderingEXT (VkCommandBuffer commandBuffer)
        m_vk.cmdEndConditionalRenderingEXT(commandBuffer);
 }
 
-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::cmdSetViewportWScalingNV (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewportWScalingNV* pViewportWScalings) const
 {
        m_vk.cmdSetViewportWScalingNV(commandBuffer, firstViewport, viewportCount, pViewportWScalings);
@@ -1127,6 +1087,11 @@ VkResult DeviceDriver::createAccelerationStructureNV (VkDevice device, const VkA
        return m_vk.createAccelerationStructureNV(device, pCreateInfo, pAllocator, pAccelerationStructure);
 }
 
+void DeviceDriver::destroyAccelerationStructureKHR (VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator) const
+{
+       m_vk.destroyAccelerationStructureKHR(device, accelerationStructure, pAllocator);
+}
+
 void DeviceDriver::destroyAccelerationStructureNV (VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator) const
 {
        m_vk.destroyAccelerationStructureNV(device, accelerationStructure, pAllocator);
@@ -1137,17 +1102,22 @@ void DeviceDriver::getAccelerationStructureMemoryRequirementsNV (VkDevice device
        m_vk.getAccelerationStructureMemoryRequirementsNV(device, pInfo, pMemoryRequirements);
 }
 
-VkResult DeviceDriver::bindAccelerationStructureMemoryNV (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos) const
+VkResult DeviceDriver::bindAccelerationStructureMemoryKHR (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos) const
+{
+       return m_vk.bindAccelerationStructureMemoryKHR(device, bindInfoCount, pBindInfos);
+}
+
+VkResult DeviceDriver::bindAccelerationStructureMemoryNV (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos) const
 {
        return m_vk.bindAccelerationStructureMemoryNV(device, bindInfoCount, pBindInfos);
 }
 
-void DeviceDriver::cmdBuildAccelerationStructureNV (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset) const
+void DeviceDriver::cmdBuildAccelerationStructureNV (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset) const
 {
        m_vk.cmdBuildAccelerationStructureNV(commandBuffer, pInfo, instanceData, instanceOffset, update, dst, src, scratch, scratchOffset);
 }
 
-void DeviceDriver::cmdCopyAccelerationStructureNV (VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeNV mode) const
+void DeviceDriver::cmdCopyAccelerationStructureNV (VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode) const
 {
        m_vk.cmdCopyAccelerationStructureNV(commandBuffer, dst, src, mode);
 }
@@ -1162,17 +1132,27 @@ VkResult DeviceDriver::createRayTracingPipelinesNV (VkDevice device, VkPipelineC
        return m_vk.createRayTracingPipelinesNV(device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines);
 }
 
+VkResult DeviceDriver::getRayTracingShaderGroupHandlesKHR (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const
+{
+       return m_vk.getRayTracingShaderGroupHandlesKHR(device, pipeline, firstGroup, groupCount, dataSize, pData);
+}
+
 VkResult DeviceDriver::getRayTracingShaderGroupHandlesNV (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const
 {
        return m_vk.getRayTracingShaderGroupHandlesNV(device, pipeline, firstGroup, groupCount, dataSize, pData);
 }
 
-VkResult DeviceDriver::getAccelerationStructureHandleNV (VkDevice device, VkAccelerationStructureNV accelerationStructure, deUintptr dataSize, void* pData) const
+VkResult DeviceDriver::getAccelerationStructureHandleNV (VkDevice device, VkAccelerationStructureKHR accelerationStructure, deUintptr dataSize, void* pData) const
 {
        return m_vk.getAccelerationStructureHandleNV(device, accelerationStructure, dataSize, pData);
 }
 
-void DeviceDriver::cmdWriteAccelerationStructuresPropertiesNV (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const
+void DeviceDriver::cmdWriteAccelerationStructuresPropertiesKHR (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const
+{
+       m_vk.cmdWriteAccelerationStructuresPropertiesKHR(commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery);
+}
+
+void DeviceDriver::cmdWriteAccelerationStructuresPropertiesNV (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const
 {
        m_vk.cmdWriteAccelerationStructuresPropertiesNV(commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery);
 }
@@ -1287,6 +1267,36 @@ void DeviceDriver::cmdSetLineStippleEXT (VkCommandBuffer commandBuffer, deUint32
        m_vk.cmdSetLineStippleEXT(commandBuffer, lineStippleFactor, lineStipplePattern);
 }
 
+void DeviceDriver::getGeneratedCommandsMemoryRequirementsNV (VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements) const
+{
+       m_vk.getGeneratedCommandsMemoryRequirementsNV(device, pInfo, pMemoryRequirements);
+}
+
+void DeviceDriver::cmdPreprocessGeneratedCommandsNV (VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) const
+{
+       m_vk.cmdPreprocessGeneratedCommandsNV(commandBuffer, pGeneratedCommandsInfo);
+}
+
+void DeviceDriver::cmdExecuteGeneratedCommandsNV (VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) const
+{
+       m_vk.cmdExecuteGeneratedCommandsNV(commandBuffer, isPreprocessed, pGeneratedCommandsInfo);
+}
+
+void DeviceDriver::cmdBindPipelineShaderGroupNV (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, deUint32 groupIndex) const
+{
+       m_vk.cmdBindPipelineShaderGroupNV(commandBuffer, pipelineBindPoint, pipeline, groupIndex);
+}
+
+VkResult DeviceDriver::createIndirectCommandsLayoutNV (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout) const
+{
+       return m_vk.createIndirectCommandsLayoutNV(device, pCreateInfo, pAllocator, pIndirectCommandsLayout);
+}
+
+void DeviceDriver::destroyIndirectCommandsLayoutNV (VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const
+{
+       m_vk.destroyIndirectCommandsLayoutNV(device, indirectCommandsLayout, pAllocator);
+}
+
 VkResult DeviceDriver::getAndroidHardwareBufferPropertiesANDROID (VkDevice device, const struct pt::AndroidHardwareBufferPtr buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties) const
 {
        return m_vk.getAndroidHardwareBufferPropertiesANDROID(device, buffer, pProperties);
@@ -1297,6 +1307,121 @@ VkResult DeviceDriver::getMemoryAndroidHardwareBufferANDROID (VkDevice device, c
        return m_vk.getMemoryAndroidHardwareBufferANDROID(device, pInfo, pBuffer);
 }
 
+VkResult DeviceDriver::createDeferredOperationKHR (VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation) const
+{
+       return m_vk.createDeferredOperationKHR(device, pAllocator, pDeferredOperation);
+}
+
+void DeviceDriver::destroyDeferredOperationKHR (VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator) const
+{
+       m_vk.destroyDeferredOperationKHR(device, operation, pAllocator);
+}
+
+uint32_t DeviceDriver::getDeferredOperationMaxConcurrencyKHR (VkDevice device, VkDeferredOperationKHR operation) const
+{
+       return m_vk.getDeferredOperationMaxConcurrencyKHR(device, operation);
+}
+
+VkResult DeviceDriver::getDeferredOperationResultKHR (VkDevice device, VkDeferredOperationKHR operation) const
+{
+       return m_vk.getDeferredOperationResultKHR(device, operation);
+}
+
+VkResult DeviceDriver::deferredOperationJoinKHR (VkDevice device, VkDeferredOperationKHR operation) const
+{
+       return m_vk.deferredOperationJoinKHR(device, operation);
+}
+
+VkResult DeviceDriver::createAccelerationStructureKHR (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure) const
+{
+       return m_vk.createAccelerationStructureKHR(device, pCreateInfo, pAllocator, pAccelerationStructure);
+}
+
+void DeviceDriver::getAccelerationStructureMemoryRequirementsKHR (VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements) const
+{
+       m_vk.getAccelerationStructureMemoryRequirementsKHR(device, pInfo, pMemoryRequirements);
+}
+
+void DeviceDriver::cmdBuildAccelerationStructureKHR (VkCommandBuffer commandBuffer, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos) const
+{
+       m_vk.cmdBuildAccelerationStructureKHR(commandBuffer, infoCount, pInfos, ppOffsetInfos);
+}
+
+void DeviceDriver::cmdBuildAccelerationStructureIndirectKHR (VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, deUint32 indirectStride) const
+{
+       m_vk.cmdBuildAccelerationStructureIndirectKHR(commandBuffer, pInfo, indirectBuffer, indirectOffset, indirectStride);
+}
+
+VkResult DeviceDriver::buildAccelerationStructureKHR (VkDevice device, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos) const
+{
+       return m_vk.buildAccelerationStructureKHR(device, infoCount, pInfos, ppOffsetInfos);
+}
+
+VkResult DeviceDriver::copyAccelerationStructureKHR (VkDevice device, const VkCopyAccelerationStructureInfoKHR* pInfo) const
+{
+       return m_vk.copyAccelerationStructureKHR(device, pInfo);
+}
+
+VkResult DeviceDriver::copyAccelerationStructureToMemoryKHR (VkDevice device, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) const
+{
+       return m_vk.copyAccelerationStructureToMemoryKHR(device, pInfo);
+}
+
+VkResult DeviceDriver::copyMemoryToAccelerationStructureKHR (VkDevice device, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) const
+{
+       return m_vk.copyMemoryToAccelerationStructureKHR(device, pInfo);
+}
+
+VkResult DeviceDriver::writeAccelerationStructuresPropertiesKHR (VkDevice device, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, deUintptr dataSize, void* pData, deUintptr stride) const
+{
+       return m_vk.writeAccelerationStructuresPropertiesKHR(device, accelerationStructureCount, pAccelerationStructures, queryType, dataSize, pData, stride);
+}
+
+void DeviceDriver::cmdCopyAccelerationStructureKHR (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo) const
+{
+       m_vk.cmdCopyAccelerationStructureKHR(commandBuffer, pInfo);
+}
+
+void DeviceDriver::cmdCopyAccelerationStructureToMemoryKHR (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) const
+{
+       m_vk.cmdCopyAccelerationStructureToMemoryKHR(commandBuffer, pInfo);
+}
+
+void DeviceDriver::cmdCopyMemoryToAccelerationStructureKHR (VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) const
+{
+       m_vk.cmdCopyMemoryToAccelerationStructureKHR(commandBuffer, pInfo);
+}
+
+void DeviceDriver::cmdTraceRaysKHR (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, deUint32 width, deUint32 height, deUint32 depth) const
+{
+       m_vk.cmdTraceRaysKHR(commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, width, height, depth);
+}
+
+VkResult DeviceDriver::createRayTracingPipelinesKHR (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const
+{
+       return m_vk.createRayTracingPipelinesKHR(device, pipelineCache, createInfoCount, pCreateInfos, pAllocator, pPipelines);
+}
+
+VkDeviceAddress DeviceDriver::getAccelerationStructureDeviceAddressKHR (VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo) const
+{
+       return m_vk.getAccelerationStructureDeviceAddressKHR(device, pInfo);
+}
+
+VkResult DeviceDriver::getRayTracingCaptureReplayShaderGroupHandlesKHR (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const
+{
+       return m_vk.getRayTracingCaptureReplayShaderGroupHandlesKHR(device, pipeline, firstGroup, groupCount, dataSize, pData);
+}
+
+void DeviceDriver::cmdTraceRaysIndirectKHR (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, VkBuffer buffer, VkDeviceSize offset) const
+{
+       m_vk.cmdTraceRaysIndirectKHR(commandBuffer, pRaygenShaderBindingTable, pMissShaderBindingTable, pHitShaderBindingTable, pCallableShaderBindingTable, buffer, offset);
+}
+
+VkResult DeviceDriver::getDeviceAccelerationStructureCompatibilityKHR (VkDevice device, const VkAccelerationStructureVersionKHR* version) const
+{
+       return m_vk.getDeviceAccelerationStructureCompatibilityKHR(device, version);
+}
+
 VkResult DeviceDriver::getMemoryWin32HandleKHR (VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const
 {
        return m_vk.getMemoryWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
index 4c499d6..396d3e0 100644 (file)
@@ -20,6 +20,8 @@ namespace vk
 #define VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME "VK_NV_dedicated_allocation_image_aliasing"
 #define VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME "VK_EXT_depth_clip_enable"
 #define VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME "VK_EXT_descriptor_indexing"
+#define VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NV_device_generated_commands"
+#define DECL_NV_DIAGNOSTICS_CONFIG_EXTENSION_NAME "not_existent_feature"
 #define VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME "VK_NV_scissor_exclusive"
 #define VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME "VK_EXT_fragment_density_map"
 #define VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME "VK_NV_fragment_shader_barycentric"
@@ -33,8 +35,10 @@ namespace vk
 #define VK_NV_MESH_SHADER_EXTENSION_NAME  "VK_NV_mesh_shader"
 #define VK_KHR_MULTIVIEW_EXTENSION_NAME   "VK_KHR_multiview"
 #define VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME "VK_KHR_performance_query"
+#define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME "VK_EXT_pipeline_creation_cache_control"
 #define VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME "VK_KHR_pipeline_executable_properties"
 #define DECL_PROTECTED_MEMORY_EXTENSION_NAME "not_existent_feature"
+#define VK_KHR_RAY_TRACING_EXTENSION_NAME "VK_KHR_ray_tracing"
 #define VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME "VK_NV_representative_fragment_test"
 #define VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME "VK_KHR_sampler_ycbcr_conversion"
 #define VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME "VK_EXT_scalar_block_layout"
@@ -205,39 +209,47 @@ template<> void initFromBlob<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT>(VkPhys
 template<> void initFromBlob<VkPhysicalDeviceLineRasterizationFeaturesEXT>(VkPhysicalDeviceLineRasterizationFeaturesEXT&, const AllBlobs&) {}
 template<> void initFromBlob<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>(VkPhysicalDeviceIndexTypeUint8FeaturesEXT&, const AllBlobs&) {}
 template<> void initFromBlob<VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT>(VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT&, const AllBlobs&) {}
+template<> void initFromBlob<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&, const AllBlobs&) {}
 template<> void initFromBlob<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT>(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT&, const AllBlobs&) {}
+template<> void initFromBlob<VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT>(VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT&, const AllBlobs&) {}
+template<> void initFromBlob<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>(VkPhysicalDeviceDiagnosticsConfigFeaturesNV&, const AllBlobs&) {}
+template<> void initFromBlob<VkPhysicalDeviceRayTracingFeaturesKHR>(VkPhysicalDeviceRayTracingFeaturesKHR&, const AllBlobs&) {}
 
 
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice16BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES, VK_KHR_16BIT_STORAGE_EXTENSION_NAME, VK_KHR_16BIT_STORAGE_SPEC_VERSION, 53}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice8BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES, VK_KHR_8BIT_STORAGE_EXTENSION_NAME, VK_KHR_8BIT_STORAGE_SPEC_VERSION, 52}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceASTCDecodeFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME, VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION, 51}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 50}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES, VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 49}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 48}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoherentMemoryFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, DECL_AMD_COHERENT_MEMORY_EXTENSION_NAME, 0, 47}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME, VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION, 46}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceConditionalRenderingFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME, VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION, 45}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCooperativeMatrixFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 44}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCornerSampledImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME, VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION, 43}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoverageReductionModeFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME, VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION, 42}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION, 41}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION, 40}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorIndexingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 39}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExclusiveScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME, VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION, 38}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 37}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 36}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME, VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION, 35}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceHostQueryResetFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES, VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, VK_EXT_HOST_QUERY_RESET_SPEC_VERSION, 34}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImagelessFramebufferFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES, VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME, VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION, 33}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME, VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION, 32}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInlineUniformBlockFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 31}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLineRasterizationFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 30}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMemoryPriorityFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME, VK_EXT_MEMORY_PRIORITY_SPEC_VERSION, 29}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMeshShaderFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 28}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiviewFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 27}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePerformanceQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 26}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION, 25}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProtectedMemoryFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 24}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice16BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES, VK_KHR_16BIT_STORAGE_EXTENSION_NAME, VK_KHR_16BIT_STORAGE_SPEC_VERSION, 57}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice8BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES, VK_KHR_8BIT_STORAGE_EXTENSION_NAME, VK_KHR_8BIT_STORAGE_SPEC_VERSION, 56}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceASTCDecodeFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME, VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION, 55}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 54}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES, VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 53}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 52}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoherentMemoryFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, DECL_AMD_COHERENT_MEMORY_EXTENSION_NAME, 0, 51}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME, VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION, 50}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceConditionalRenderingFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME, VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION, 49}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCooperativeMatrixFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 48}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCornerSampledImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME, VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION, 47}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoverageReductionModeFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME, VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION, 46}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION, 45}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION, 44}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorIndexingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 43}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 42}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV, DECL_NV_DIAGNOSTICS_CONFIG_EXTENSION_NAME, 0, 41}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExclusiveScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME, VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION, 40}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 39}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 38}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME, VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION, 37}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceHostQueryResetFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES, VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, VK_EXT_HOST_QUERY_RESET_SPEC_VERSION, 36}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImagelessFramebufferFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES, VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME, VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION, 35}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME, VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION, 34}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInlineUniformBlockFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 33}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLineRasterizationFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 32}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMemoryPriorityFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME, VK_EXT_MEMORY_PRIORITY_SPEC_VERSION, 31}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMeshShaderFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 30}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiviewFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 29}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePerformanceQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 28}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION, 27}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION, 26}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProtectedMemoryFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 25}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR, VK_KHR_RAY_TRACING_EXTENSION_NAME, VK_KHR_RAY_TRACING_SPEC_VERSION, 24}; }
 template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION, 23}; }
 template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSamplerYcbcrConversionFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES, VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME, VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION, 22}; }
 template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceScalarBlockLayoutFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES, VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME, VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION, 21}; }
@@ -280,6 +292,8 @@ static const FeatureStructCreationData featureStructCreationArray[] =
        { createFeatureStructWrapper<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceDepthClipEnableFeaturesEXT>, VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceDescriptorIndexingFeatures>, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>, DECL_NV_DIAGNOSTICS_CONFIG_EXTENSION_NAME, 0 },
        { createFeatureStructWrapper<VkPhysicalDeviceExclusiveScissorFeaturesNV>, VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME, VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION },
@@ -293,8 +307,10 @@ static const FeatureStructCreationData featureStructCreationArray[] =
        { createFeatureStructWrapper<VkPhysicalDeviceMeshShaderFeaturesNV>, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceMultiviewFeatures>, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePerformanceQueryFeaturesKHR>, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT>, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceProtectedMemoryFeatures>, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0 },
+       { createFeatureStructWrapper<VkPhysicalDeviceRayTracingFeaturesKHR>, VK_KHR_RAY_TRACING_EXTENSION_NAME, VK_KHR_RAY_TRACING_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceSamplerYcbcrConversionFeatures>, VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME, VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceScalarBlockLayoutFeatures>, VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME, VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION },
index f91ce80..5f216aa 100644 (file)
@@ -16,6 +16,8 @@ const vk::VkPhysicalDeviceCoverageReductionModeFeaturesNV&                            getCoverageReducti
 const vk::VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&  getDedicatedAllocationImageAliasingFeatures             (void) const;
 const vk::VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                  getDepthClipEnableFeaturesEXT                                   (void) const;
 const vk::VkPhysicalDeviceDescriptorIndexingFeatures&                                  getDescriptorIndexingFeatures                                   (void) const;
+const vk::VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                   getDeviceGeneratedCommandsFeatures                              (void) const;
+const vk::VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                 getDiagnosticsConfigFeatures                                    (void) const;
 const vk::VkPhysicalDeviceExclusiveScissorFeaturesNV&                                  getExclusiveScissorFeatures                                             (void) const;
 const vk::VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                               getFragmentDensityMapFeaturesEXT                                (void) const;
 const vk::VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV&                 getFragmentShaderBarycentricFeatures                    (void) const;
@@ -29,8 +31,10 @@ const vk::VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                 getMemoryPriorityFeatur
 const vk::VkPhysicalDeviceMeshShaderFeaturesNV&                                                        getMeshShaderFeatures                                                   (void) const;
 const vk::VkPhysicalDeviceMultiviewFeatures&                                                   getMultiviewFeatures                                                    (void) const;
 const vk::VkPhysicalDevicePerformanceQueryFeaturesKHR&                                 getPerformanceQueryFeatures                                             (void) const;
+const vk::VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT&             getPipelineCreationCacheControlFeaturesEXT              (void) const;
 const vk::VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&             getPipelineExecutablePropertiesFeatures                 (void) const;
 const vk::VkPhysicalDeviceProtectedMemoryFeatures&                                             getProtectedMemoryFeatures                                              (void) const;
+const vk::VkPhysicalDeviceRayTracingFeaturesKHR&                                               getRayTracingFeatures                                                   (void) const;
 const vk::VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                        getRepresentativeFragmentTestFeatures                   (void) const;
 const vk::VkPhysicalDeviceSamplerYcbcrConversionFeatures&                              getSamplerYcbcrConversionFeatures                               (void) const;
 const vk::VkPhysicalDeviceScalarBlockLayoutFeatures&                                   getScalarBlockLayoutFeatures                                    (void) const;
index 9ff3919..ae013a8 100644 (file)
@@ -16,6 +16,8 @@ const vk::VkPhysicalDeviceCoverageReductionModeFeaturesNV&                            Context::getCovera
 const vk::VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&  Context::getDedicatedAllocationImageAliasingFeatures    (void) const { return m_device->getDedicatedAllocationImageAliasingFeatures();  }
 const vk::VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                  Context::getDepthClipEnableFeaturesEXT                                  (void) const { return m_device->getDepthClipEnableFeaturesEXT();                                }
 const vk::VkPhysicalDeviceDescriptorIndexingFeatures&                                  Context::getDescriptorIndexingFeatures                                  (void) const { return m_device->getDescriptorIndexingFeatures();                                }
+const vk::VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                   Context::getDeviceGeneratedCommandsFeatures                             (void) const { return m_device->getDeviceGeneratedCommandsFeatures();                   }
+const vk::VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                 Context::getDiagnosticsConfigFeatures                                   (void) const { return m_device->getDiagnosticsConfigFeatures();                                 }
 const vk::VkPhysicalDeviceExclusiveScissorFeaturesNV&                                  Context::getExclusiveScissorFeatures                                    (void) const { return m_device->getExclusiveScissorFeatures();                                  }
 const vk::VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                               Context::getFragmentDensityMapFeaturesEXT                               (void) const { return m_device->getFragmentDensityMapFeaturesEXT();                             }
 const vk::VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV&                 Context::getFragmentShaderBarycentricFeatures                   (void) const { return m_device->getFragmentShaderBarycentricFeatures();                 }
@@ -29,8 +31,10 @@ const vk::VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                 Context::getMemoryPrior
 const vk::VkPhysicalDeviceMeshShaderFeaturesNV&                                                        Context::getMeshShaderFeatures                                                  (void) const { return m_device->getMeshShaderFeatures();                                                }
 const vk::VkPhysicalDeviceMultiviewFeatures&                                                   Context::getMultiviewFeatures                                                   (void) const { return m_device->getMultiviewFeatures();                                                 }
 const vk::VkPhysicalDevicePerformanceQueryFeaturesKHR&                                 Context::getPerformanceQueryFeatures                                    (void) const { return m_device->getPerformanceQueryFeatures();                                  }
+const vk::VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT&             Context::getPipelineCreationCacheControlFeaturesEXT             (void) const { return m_device->getPipelineCreationCacheControlFeaturesEXT();   }
 const vk::VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&             Context::getPipelineExecutablePropertiesFeatures                (void) const { return m_device->getPipelineExecutablePropertiesFeatures();              }
 const vk::VkPhysicalDeviceProtectedMemoryFeatures&                                             Context::getProtectedMemoryFeatures                                             (void) const { return m_device->getProtectedMemoryFeatures();                                   }
+const vk::VkPhysicalDeviceRayTracingFeaturesKHR&                                               Context::getRayTracingFeatures                                                  (void) const { return m_device->getRayTracingFeatures();                                                }
 const vk::VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                        Context::getRepresentativeFragmentTestFeatures                  (void) const { return m_device->getRepresentativeFragmentTestFeatures();                }
 const vk::VkPhysicalDeviceSamplerYcbcrConversionFeatures&                              Context::getSamplerYcbcrConversionFeatures                              (void) const { return m_device->getSamplerYcbcrConversionFeatures();                    }
 const vk::VkPhysicalDeviceScalarBlockLayoutFeatures&                                   Context::getScalarBlockLayoutFeatures                                   (void) const { return m_device->getScalarBlockLayoutFeatures();                                 }
index a374c52..f194c61 100644 (file)
@@ -16,6 +16,8 @@ const VkPhysicalDeviceCoverageReductionModeFeaturesNV&                                getCoverageReductionMo
 const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&      getDedicatedAllocationImageAliasingFeatures             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>();    }
 const VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                      getDepthClipEnableFeaturesEXT                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDepthClipEnableFeaturesEXT>();                                    }
 const VkPhysicalDeviceDescriptorIndexingFeatures&                                      getDescriptorIndexingFeatures                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDescriptorIndexingFeatures>();                                    }
+const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                       getDeviceGeneratedCommandsFeatures                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>();                             }
+const VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                     getDiagnosticsConfigFeatures                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>();                                   }
 const VkPhysicalDeviceExclusiveScissorFeaturesNV&                                      getExclusiveScissorFeatures                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExclusiveScissorFeaturesNV>();                                    }
 const VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                           getFragmentDensityMapFeaturesEXT                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>();                                 }
 const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV&                     getFragmentShaderBarycentricFeatures                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>();                   }
@@ -29,8 +31,10 @@ const VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                     getMemoryPriorityFeaturesEX
 const VkPhysicalDeviceMeshShaderFeaturesNV&                                                    getMeshShaderFeatures                                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMeshShaderFeaturesNV>();                                                  }
 const VkPhysicalDeviceMultiviewFeatures&                                                       getMultiviewFeatures                                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMultiviewFeatures>();                                                             }
 const VkPhysicalDevicePerformanceQueryFeaturesKHR&                                     getPerformanceQueryFeatures                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePerformanceQueryFeaturesKHR>();                                   }
+const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT&         getPipelineCreationCacheControlFeaturesEXT              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT>();               }
 const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&         getPipelineExecutablePropertiesFeatures                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>();               }
 const VkPhysicalDeviceProtectedMemoryFeatures&                                         getProtectedMemoryFeatures                                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceProtectedMemoryFeatures>();                                               }
+const VkPhysicalDeviceRayTracingFeaturesKHR&                                           getRayTracingFeatures                                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRayTracingFeaturesKHR>();                                                 }
 const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                    getRepresentativeFragmentTestFeatures                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>();                  }
 const VkPhysicalDeviceSamplerYcbcrConversionFeatures&                          getSamplerYcbcrConversionFeatures                               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSamplerYcbcrConversionFeatures>();                                }
 const VkPhysicalDeviceScalarBlockLayoutFeatures&                                       getScalarBlockLayoutFeatures                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceScalarBlockLayoutFeatures>();                                             }
index c3acddd..b2365e1 100644 (file)
@@ -191,14 +191,6 @@ CmdDrawIndexedIndirectCountAMDFunc                                 cmdDrawIndexedIndirectCountAMD;
 GetShaderInfoAMDFunc                                                           getShaderInfoAMD;
 CmdBeginConditionalRenderingEXTFunc                                    cmdBeginConditionalRenderingEXT;
 CmdEndConditionalRenderingEXTFunc                                      cmdEndConditionalRenderingEXT;
-CmdProcessCommandsNVXFunc                                                      cmdProcessCommandsNVX;
-CmdReserveSpaceForCommandsNVXFunc                                      cmdReserveSpaceForCommandsNVX;
-CreateIndirectCommandsLayoutNVXFunc                                    createIndirectCommandsLayoutNVX;
-DestroyIndirectCommandsLayoutNVXFunc                           destroyIndirectCommandsLayoutNVX;
-CreateObjectTableNVXFunc                                                       createObjectTableNVX;
-DestroyObjectTableNVXFunc                                                      destroyObjectTableNVX;
-RegisterObjectsNVXFunc                                                         registerObjectsNVX;
-UnregisterObjectsNVXFunc                                                       unregisterObjectsNVX;
 CmdSetViewportWScalingNVFunc                                           cmdSetViewportWScalingNV;
 DisplayPowerControlEXTFunc                                                     displayPowerControlEXT;
 RegisterDeviceEventEXTFunc                                                     registerDeviceEventEXT;
@@ -226,15 +218,19 @@ CmdBindShadingRateImageNVFunc                                             cmdBindShadingRateImageNV;
 CmdSetViewportShadingRatePaletteNVFunc                         cmdSetViewportShadingRatePaletteNV;
 CmdSetCoarseSampleOrderNVFunc                                          cmdSetCoarseSampleOrderNV;
 CreateAccelerationStructureNVFunc                                      createAccelerationStructureNV;
+DestroyAccelerationStructureKHRFunc                                    destroyAccelerationStructureKHR;
 DestroyAccelerationStructureNVFunc                                     destroyAccelerationStructureNV;
 GetAccelerationStructureMemoryRequirementsNVFunc       getAccelerationStructureMemoryRequirementsNV;
+BindAccelerationStructureMemoryKHRFunc                         bindAccelerationStructureMemoryKHR;
 BindAccelerationStructureMemoryNVFunc                          bindAccelerationStructureMemoryNV;
 CmdBuildAccelerationStructureNVFunc                                    cmdBuildAccelerationStructureNV;
 CmdCopyAccelerationStructureNVFunc                                     cmdCopyAccelerationStructureNV;
 CmdTraceRaysNVFunc                                                                     cmdTraceRaysNV;
 CreateRayTracingPipelinesNVFunc                                                createRayTracingPipelinesNV;
+GetRayTracingShaderGroupHandlesKHRFunc                         getRayTracingShaderGroupHandlesKHR;
 GetRayTracingShaderGroupHandlesNVFunc                          getRayTracingShaderGroupHandlesNV;
 GetAccelerationStructureHandleNVFunc                           getAccelerationStructureHandleNV;
+CmdWriteAccelerationStructuresPropertiesKHRFunc                cmdWriteAccelerationStructuresPropertiesKHR;
 CmdWriteAccelerationStructuresPropertiesNVFunc         cmdWriteAccelerationStructuresPropertiesNV;
 CompileDeferredNVFunc                                                          compileDeferredNV;
 GetMemoryHostPointerPropertiesEXTFunc                          getMemoryHostPointerPropertiesEXT;
@@ -258,8 +254,37 @@ GetPerformanceParameterINTELFunc                                   getPerformanceParameterINTEL;
 SetLocalDimmingAMDFunc                                                         setLocalDimmingAMD;
 GetBufferDeviceAddressEXTFunc                                          getBufferDeviceAddressEXT;
 CmdSetLineStippleEXTFunc                                                       cmdSetLineStippleEXT;
+GetGeneratedCommandsMemoryRequirementsNVFunc           getGeneratedCommandsMemoryRequirementsNV;
+CmdPreprocessGeneratedCommandsNVFunc                           cmdPreprocessGeneratedCommandsNV;
+CmdExecuteGeneratedCommandsNVFunc                                      cmdExecuteGeneratedCommandsNV;
+CmdBindPipelineShaderGroupNVFunc                                       cmdBindPipelineShaderGroupNV;
+CreateIndirectCommandsLayoutNVFunc                                     createIndirectCommandsLayoutNV;
+DestroyIndirectCommandsLayoutNVFunc                                    destroyIndirectCommandsLayoutNV;
 GetAndroidHardwareBufferPropertiesANDROIDFunc          getAndroidHardwareBufferPropertiesANDROID;
 GetMemoryAndroidHardwareBufferANDROIDFunc                      getMemoryAndroidHardwareBufferANDROID;
+CreateDeferredOperationKHRFunc                                         createDeferredOperationKHR;
+DestroyDeferredOperationKHRFunc                                                destroyDeferredOperationKHR;
+GetDeferredOperationMaxConcurrencyKHRFunc                      getDeferredOperationMaxConcurrencyKHR;
+GetDeferredOperationResultKHRFunc                                      getDeferredOperationResultKHR;
+DeferredOperationJoinKHRFunc                                           deferredOperationJoinKHR;
+CreateAccelerationStructureKHRFunc                                     createAccelerationStructureKHR;
+GetAccelerationStructureMemoryRequirementsKHRFunc      getAccelerationStructureMemoryRequirementsKHR;
+CmdBuildAccelerationStructureKHRFunc                           cmdBuildAccelerationStructureKHR;
+CmdBuildAccelerationStructureIndirectKHRFunc           cmdBuildAccelerationStructureIndirectKHR;
+BuildAccelerationStructureKHRFunc                                      buildAccelerationStructureKHR;
+CopyAccelerationStructureKHRFunc                                       copyAccelerationStructureKHR;
+CopyAccelerationStructureToMemoryKHRFunc                       copyAccelerationStructureToMemoryKHR;
+CopyMemoryToAccelerationStructureKHRFunc                       copyMemoryToAccelerationStructureKHR;
+WriteAccelerationStructuresPropertiesKHRFunc           writeAccelerationStructuresPropertiesKHR;
+CmdCopyAccelerationStructureKHRFunc                                    cmdCopyAccelerationStructureKHR;
+CmdCopyAccelerationStructureToMemoryKHRFunc                    cmdCopyAccelerationStructureToMemoryKHR;
+CmdCopyMemoryToAccelerationStructureKHRFunc                    cmdCopyMemoryToAccelerationStructureKHR;
+CmdTraceRaysKHRFunc                                                                    cmdTraceRaysKHR;
+CreateRayTracingPipelinesKHRFunc                                       createRayTracingPipelinesKHR;
+GetAccelerationStructureDeviceAddressKHRFunc           getAccelerationStructureDeviceAddressKHR;
+GetRayTracingCaptureReplayShaderGroupHandlesKHRFunc    getRayTracingCaptureReplayShaderGroupHandlesKHR;
+CmdTraceRaysIndirectKHRFunc                                                    cmdTraceRaysIndirectKHR;
+GetDeviceAccelerationStructureCompatibilityKHRFunc     getDeviceAccelerationStructureCompatibilityKHR;
 GetMemoryWin32HandleKHRFunc                                                    getMemoryWin32HandleKHR;
 GetMemoryWin32HandlePropertiesKHRFunc                          getMemoryWin32HandlePropertiesKHR;
 ImportSemaphoreWin32HandleKHRFunc                                      importSemaphoreWin32HandleKHR;
index 98ab7d5..58e921f 100644 (file)
@@ -10,6 +10,7 @@ namespace vk
 #define VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME "VK_NV_cooperative_matrix"
 #define VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME "VK_KHR_depth_stencil_resolve"
 #define VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME "VK_EXT_descriptor_indexing"
+#define VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NV_device_generated_commands"
 #define VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME "VK_EXT_discard_rectangles"
 #define DECL_DRIVER_EXTENSION_NAME "not_existent_property"
 #define VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME "VK_EXT_external_memory_host"
@@ -27,6 +28,7 @@ namespace vk
 #define DECL_POINT_CLIPPING_EXTENSION_NAME "not_existent_property"
 #define DECL_PROTECTED_MEMORY_EXTENSION_NAME "not_existent_property"
 #define VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME "VK_KHR_push_descriptor"
+#define VK_KHR_RAY_TRACING_EXTENSION_NAME "VK_KHR_ray_tracing"
 #define VK_NV_RAY_TRACING_EXTENSION_NAME  "VK_NV_ray_tracing"
 #define VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME "VK_EXT_sampler_filter_minmax"
 #define VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME "VK_EXT_sample_locations"
@@ -41,28 +43,30 @@ namespace vk
 #define VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME "VK_EXT_vertex_attribute_divisor"
 
 
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 34); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceConservativeRasterizationPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME, VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION, 33); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCooperativeMatrixPropertiesNV>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 32); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDepthStencilResolveProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES, VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME, VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION, 31); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDescriptorIndexingProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 30); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDiscardRectanglePropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME, VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION, 29); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDriverProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES, DECL_DRIVER_EXTENSION_NAME, 0, 28); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceExternalMemoryHostPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME, VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION, 27); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFloatControlsProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES, VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME, VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION, 26); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 25); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceInlineUniformBlockPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 24); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceLineRasterizationPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 23); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance3Properties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES, VK_KHR_MAINTENANCE3_EXTENSION_NAME, VK_KHR_MAINTENANCE3_SPEC_VERSION, 22); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMemoryProperties2>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2, DECL_2_MEMORY_EXTENSION_NAME, 0, 21); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMemoryBudgetPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT, VK_EXT_MEMORY_BUDGET_EXTENSION_NAME, VK_EXT_MEMORY_BUDGET_SPEC_VERSION, 20); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMeshShaderPropertiesNV>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 19); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 18); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION, 17); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePerformanceQueryPropertiesKHR>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 16); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePointClippingProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES, DECL_POINT_CLIPPING_EXTENSION_NAME, 0, 15); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProtectedMemoryProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 14); }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePushDescriptorPropertiesKHR>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION, 13); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 36); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceConservativeRasterizationPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME, VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION, 35); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCooperativeMatrixPropertiesNV>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 34); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDepthStencilResolveProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES, VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME, VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION, 33); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDescriptorIndexingProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 32); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 31); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDiscardRectanglePropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME, VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION, 30); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDriverProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES, DECL_DRIVER_EXTENSION_NAME, 0, 29); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceExternalMemoryHostPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME, VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION, 28); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFloatControlsProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES, VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME, VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION, 27); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 26); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceInlineUniformBlockPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 25); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceLineRasterizationPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 24); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance3Properties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES, VK_KHR_MAINTENANCE3_EXTENSION_NAME, VK_KHR_MAINTENANCE3_SPEC_VERSION, 23); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMemoryProperties2>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2, DECL_2_MEMORY_EXTENSION_NAME, 0, 22); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMemoryBudgetPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT, VK_EXT_MEMORY_BUDGET_EXTENSION_NAME, VK_EXT_MEMORY_BUDGET_SPEC_VERSION, 21); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMeshShaderPropertiesNV>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 20); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 19); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION, 18); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePerformanceQueryPropertiesKHR>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 17); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePointClippingProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES, DECL_POINT_CLIPPING_EXTENSION_NAME, 0, 16); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProtectedMemoryProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 15); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePushDescriptorPropertiesKHR>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION, 14); }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPropertiesKHR>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR, VK_KHR_RAY_TRACING_EXTENSION_NAME, VK_KHR_RAY_TRACING_SPEC_VERSION, 13); }
 template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPropertiesNV>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV, VK_NV_RAY_TRACING_EXTENSION_NAME, VK_NV_RAY_TRACING_SPEC_VERSION, 12); }
 template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSamplerFilterMinmaxProperties>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES, VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME, VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION, 11); }
 template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSampleLocationsPropertiesEXT>(void) { return PropertyDesc(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT, VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME, VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION, 10); }
@@ -84,6 +88,7 @@ static const PropertyStructMapItem propertyStructCreatorMap[] =
        { createPropertyStructWrapper<VkPhysicalDeviceCooperativeMatrixPropertiesNV>, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceDepthStencilResolveProperties>, VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME, VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceDescriptorIndexingProperties>, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION },
+       { createPropertyStructWrapper<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV>, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceDiscardRectanglePropertiesEXT>, VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME, VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceDriverProperties>, DECL_DRIVER_EXTENSION_NAME, 0 },
        { createPropertyStructWrapper<VkPhysicalDeviceExternalMemoryHostPropertiesEXT>, VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME, VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION },
@@ -101,6 +106,7 @@ static const PropertyStructMapItem propertyStructCreatorMap[] =
        { createPropertyStructWrapper<VkPhysicalDevicePointClippingProperties>, DECL_POINT_CLIPPING_EXTENSION_NAME, 0 },
        { createPropertyStructWrapper<VkPhysicalDeviceProtectedMemoryProperties>, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0 },
        { createPropertyStructWrapper<VkPhysicalDevicePushDescriptorPropertiesKHR>, VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION },
+       { createPropertyStructWrapper<VkPhysicalDeviceRayTracingPropertiesKHR>, VK_KHR_RAY_TRACING_EXTENSION_NAME, VK_KHR_RAY_TRACING_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceRayTracingPropertiesNV>, VK_NV_RAY_TRACING_EXTENSION_NAME, VK_NV_RAY_TRACING_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceSamplerFilterMinmaxProperties>, VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME, VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceSampleLocationsPropertiesEXT>, VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME, VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION },
index 237dca0..0921ba3 100644 (file)
@@ -6,6 +6,7 @@ const vk::VkPhysicalDeviceConservativeRasterizationPropertiesEXT&       getConservativ
 const vk::VkPhysicalDeviceCooperativeMatrixPropertiesNV&                       getCooperativeMatrixProperties                          (void) const;
 const vk::VkPhysicalDeviceDepthStencilResolveProperties&                       getDepthStencilResolveProperties                        (void) const;
 const vk::VkPhysicalDeviceDescriptorIndexingProperties&                                getDescriptorIndexingProperties                         (void) const;
+const vk::VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV&         getDeviceGeneratedCommandsProperties            (void) const;
 const vk::VkPhysicalDeviceDiscardRectanglePropertiesEXT&                       getDiscardRectanglePropertiesEXT                        (void) const;
 const vk::VkPhysicalDeviceDriverProperties&                                                    getDriverProperties                                                     (void) const;
 const vk::VkPhysicalDeviceExternalMemoryHostPropertiesEXT&                     getExternalMemoryHostPropertiesEXT                      (void) const;
@@ -23,7 +24,8 @@ const vk::VkPhysicalDevicePerformanceQueryPropertiesKHR&                      getPerformanceQueryPr
 const vk::VkPhysicalDevicePointClippingProperties&                                     getPointClippingProperties                                      (void) const;
 const vk::VkPhysicalDeviceProtectedMemoryProperties&                           getProtectedMemoryProperties                            (void) const;
 const vk::VkPhysicalDevicePushDescriptorPropertiesKHR&                         getPushDescriptorProperties                                     (void) const;
-const vk::VkPhysicalDeviceRayTracingPropertiesNV&                                      getRayTracingProperties                                         (void) const;
+const vk::VkPhysicalDeviceRayTracingPropertiesKHR&                                     getRayTracingProperties                                         (void) const;
+const vk::VkPhysicalDeviceRayTracingPropertiesNV&                                      getRayTracingPropertiesNV                                       (void) const;
 const vk::VkPhysicalDeviceSamplerFilterMinmaxProperties&                       getSamplerFilterMinmaxProperties                        (void) const;
 const vk::VkPhysicalDeviceSampleLocationsPropertiesEXT&                                getSampleLocationsPropertiesEXT                         (void) const;
 const vk::VkPhysicalDeviceShaderCorePropertiesAMD&                                     getShaderCorePropertiesAMD                                      (void) const;
index 0f048b8..29c6ffd 100644 (file)
@@ -6,6 +6,7 @@ const vk::VkPhysicalDeviceConservativeRasterizationPropertiesEXT&       Context::getCo
 const vk::VkPhysicalDeviceCooperativeMatrixPropertiesNV&                       Context::getCooperativeMatrixProperties                         (void) const { return m_device->getCooperativeMatrixProperties();                               }
 const vk::VkPhysicalDeviceDepthStencilResolveProperties&                       Context::getDepthStencilResolveProperties                       (void) const { return m_device->getDepthStencilResolveProperties();                             }
 const vk::VkPhysicalDeviceDescriptorIndexingProperties&                                Context::getDescriptorIndexingProperties                        (void) const { return m_device->getDescriptorIndexingProperties();                              }
+const vk::VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV&         Context::getDeviceGeneratedCommandsProperties           (void) const { return m_device->getDeviceGeneratedCommandsProperties();                 }
 const vk::VkPhysicalDeviceDiscardRectanglePropertiesEXT&                       Context::getDiscardRectanglePropertiesEXT                       (void) const { return m_device->getDiscardRectanglePropertiesEXT();                             }
 const vk::VkPhysicalDeviceDriverProperties&                                                    Context::getDriverProperties                                            (void) const { return m_device->getDriverProperties();                                                  }
 const vk::VkPhysicalDeviceExternalMemoryHostPropertiesEXT&                     Context::getExternalMemoryHostPropertiesEXT                     (void) const { return m_device->getExternalMemoryHostPropertiesEXT();                   }
@@ -23,7 +24,8 @@ const vk::VkPhysicalDevicePerformanceQueryPropertiesKHR&                      Context::getPerforman
 const vk::VkPhysicalDevicePointClippingProperties&                                     Context::getPointClippingProperties                                     (void) const { return m_device->getPointClippingProperties();                                   }
 const vk::VkPhysicalDeviceProtectedMemoryProperties&                           Context::getProtectedMemoryProperties                           (void) const { return m_device->getProtectedMemoryProperties();                                 }
 const vk::VkPhysicalDevicePushDescriptorPropertiesKHR&                         Context::getPushDescriptorProperties                            (void) const { return m_device->getPushDescriptorProperties();                                  }
-const vk::VkPhysicalDeviceRayTracingPropertiesNV&                                      Context::getRayTracingProperties                                        (void) const { return m_device->getRayTracingProperties();                                              }
+const vk::VkPhysicalDeviceRayTracingPropertiesKHR&                                     Context::getRayTracingProperties                                        (void) const { return m_device->getRayTracingProperties();                                              }
+const vk::VkPhysicalDeviceRayTracingPropertiesNV&                                      Context::getRayTracingPropertiesNV                                      (void) const { return m_device->getRayTracingPropertiesNV();                                    }
 const vk::VkPhysicalDeviceSamplerFilterMinmaxProperties&                       Context::getSamplerFilterMinmaxProperties                       (void) const { return m_device->getSamplerFilterMinmaxProperties();                             }
 const vk::VkPhysicalDeviceSampleLocationsPropertiesEXT&                                Context::getSampleLocationsPropertiesEXT                        (void) const { return m_device->getSampleLocationsPropertiesEXT();                              }
 const vk::VkPhysicalDeviceShaderCorePropertiesAMD&                                     Context::getShaderCorePropertiesAMD                                     (void) const { return m_device->getShaderCorePropertiesAMD();                                   }
index 21c8a39..570b749 100644 (file)
@@ -6,6 +6,7 @@ const VkPhysicalDeviceConservativeRasterizationPropertiesEXT&   getConservativeRas
 const VkPhysicalDeviceCooperativeMatrixPropertiesNV&                   getCooperativeMatrixProperties                          (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceCooperativeMatrixPropertiesNV>();                          }
 const VkPhysicalDeviceDepthStencilResolveProperties&                   getDepthStencilResolveProperties                        (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceDepthStencilResolveProperties>();                          }
 const VkPhysicalDeviceDescriptorIndexingProperties&                            getDescriptorIndexingProperties                         (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceDescriptorIndexingProperties>();                           }
+const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV&             getDeviceGeneratedCommandsProperties            (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV>();            }
 const VkPhysicalDeviceDiscardRectanglePropertiesEXT&                   getDiscardRectanglePropertiesEXT                        (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceDiscardRectanglePropertiesEXT>();                          }
 const VkPhysicalDeviceDriverProperties&                                                        getDriverProperties                                                     (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceDriverProperties>();                                                       }
 const VkPhysicalDeviceExternalMemoryHostPropertiesEXT&                 getExternalMemoryHostPropertiesEXT                      (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceExternalMemoryHostPropertiesEXT>();                        }
@@ -23,7 +24,8 @@ const VkPhysicalDevicePerformanceQueryPropertiesKHR&                  getPerformanceQueryProper
 const VkPhysicalDevicePointClippingProperties&                                 getPointClippingProperties                                      (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDevicePointClippingProperties>();                                        }
 const VkPhysicalDeviceProtectedMemoryProperties&                               getProtectedMemoryProperties                            (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceProtectedMemoryProperties>();                                      }
 const VkPhysicalDevicePushDescriptorPropertiesKHR&                             getPushDescriptorProperties                                     (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDevicePushDescriptorPropertiesKHR>();                            }
-const VkPhysicalDeviceRayTracingPropertiesNV&                                  getRayTracingProperties                                         (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceRayTracingPropertiesNV>();                                         }
+const VkPhysicalDeviceRayTracingPropertiesKHR&                                 getRayTracingProperties                                         (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceRayTracingPropertiesKHR>();                                        }
+const VkPhysicalDeviceRayTracingPropertiesNV&                                  getRayTracingPropertiesNV                                       (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceRayTracingPropertiesNV>();                                         }
 const VkPhysicalDeviceSamplerFilterMinmaxProperties&                   getSamplerFilterMinmaxProperties                        (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceSamplerFilterMinmaxProperties>();                          }
 const VkPhysicalDeviceSampleLocationsPropertiesEXT&                            getSampleLocationsPropertiesEXT                         (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceSampleLocationsPropertiesEXT>();                           }
 const VkPhysicalDeviceShaderCorePropertiesAMD&                                 getShaderCorePropertiesAMD                                      (void) const { return m_devicePropertiesFull.getPropertyType<VkPhysicalDeviceShaderCorePropertiesAMD>();                                        }
index ebbd5ec..5381596 100644 (file)
@@ -269,6 +269,10 @@ void getInstanceExtensionFunctions (deUint32 apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_KHR_shader_non_semantic_info")
+       {
+               return;
+       }
        if (extName == "VK_EXT_debug_report")
        {
                functions.push_back("vkCreateDebugReportCallbackEXT");
@@ -389,11 +393,6 @@ void getInstanceExtensionFunctions (deUint32 apiVersion, ::std::string extName,
        {
                return;
        }
-       if (extName == "VK_NVX_device_generated_commands")
-       {
-               functions.push_back("vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX");
-               return;
-       }
        if (extName == "VK_NV_clip_space_w_scaling")
        {
                return;
@@ -733,14 +732,30 @@ void getInstanceExtensionFunctions (deUint32 apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_NV_device_generated_commands")
+       {
+               return;
+       }
        if (extName == "VK_EXT_texel_buffer_alignment")
        {
                return;
        }
+       if (extName == "VK_QCOM_render_pass_transform")
+       {
+               return;
+       }
        if (extName == "VK_GOOGLE_user_type")
        {
                return;
        }
+       if (extName == "VK_EXT_pipeline_creation_cache_control")
+       {
+               return;
+       }
+       if (extName == "VK_NV_device_diagnostics_config")
+       {
+               return;
+       }
        if (extName == "VK_KHR_android_surface")
        {
                functions.push_back("vkCreateAndroidSurfaceKHR");
@@ -750,6 +765,18 @@ void getInstanceExtensionFunctions (deUint32 apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_KHR_deferred_host_operations")
+       {
+               return;
+       }
+       if (extName == "VK_KHR_pipeline_library")
+       {
+               return;
+       }
+       if (extName == "VK_KHR_ray_tracing")
+       {
+               return;
+       }
        if (extName == "VK_FUCHSIA_imagepipe_surface")
        {
                functions.push_back("vkCreateImagePipeSurfaceFUCHSIA");
@@ -1133,6 +1160,10 @@ void getDeviceExtensionFunctions (deUint32 apiVersion, ::std::string extName, ::
                functions.push_back("vkGetPipelineExecutableInternalRepresentationsKHR");
                return;
        }
+       if (extName == "VK_KHR_shader_non_semantic_info")
+       {
+               return;
+       }
        if (extName == "VK_EXT_debug_report")
        {
                return;
@@ -1266,18 +1297,6 @@ void getDeviceExtensionFunctions (deUint32 apiVersion, ::std::string extName, ::
                functions.push_back("vkCmdEndConditionalRenderingEXT");
                return;
        }
-       if (extName == "VK_NVX_device_generated_commands")
-       {
-               functions.push_back("vkCmdProcessCommandsNVX");
-               functions.push_back("vkCmdReserveSpaceForCommandsNVX");
-               functions.push_back("vkCreateIndirectCommandsLayoutNVX");
-               functions.push_back("vkDestroyIndirectCommandsLayoutNVX");
-               functions.push_back("vkCreateObjectTableNVX");
-               functions.push_back("vkDestroyObjectTableNVX");
-               functions.push_back("vkRegisterObjectsNVX");
-               functions.push_back("vkUnregisterObjectsNVX");
-               return;
-       }
        if (extName == "VK_NV_clip_space_w_scaling")
        {
                functions.push_back("vkCmdSetViewportWScalingNV");
@@ -1451,15 +1470,19 @@ void getDeviceExtensionFunctions (deUint32 apiVersion, ::std::string extName, ::
        if (extName == "VK_NV_ray_tracing")
        {
                functions.push_back("vkCreateAccelerationStructureNV");
+               functions.push_back("vkDestroyAccelerationStructureKHR");
                functions.push_back("vkDestroyAccelerationStructureNV");
                functions.push_back("vkGetAccelerationStructureMemoryRequirementsNV");
+               functions.push_back("vkBindAccelerationStructureMemoryKHR");
                functions.push_back("vkBindAccelerationStructureMemoryNV");
                functions.push_back("vkCmdBuildAccelerationStructureNV");
                functions.push_back("vkCmdCopyAccelerationStructureNV");
                functions.push_back("vkCmdTraceRaysNV");
                functions.push_back("vkCreateRayTracingPipelinesNV");
+               functions.push_back("vkGetRayTracingShaderGroupHandlesKHR");
                functions.push_back("vkGetRayTracingShaderGroupHandlesNV");
                functions.push_back("vkGetAccelerationStructureHandleNV");
+               functions.push_back("vkCmdWriteAccelerationStructuresPropertiesKHR");
                functions.push_back("vkCmdWriteAccelerationStructuresPropertiesNV");
                functions.push_back("vkCompileDeferredNV");
                return;
@@ -1666,14 +1689,36 @@ void getDeviceExtensionFunctions (deUint32 apiVersion, ::std::string extName, ::
        {
                return;
        }
+       if (extName == "VK_NV_device_generated_commands")
+       {
+               functions.push_back("vkGetGeneratedCommandsMemoryRequirementsNV");
+               functions.push_back("vkCmdPreprocessGeneratedCommandsNV");
+               functions.push_back("vkCmdExecuteGeneratedCommandsNV");
+               functions.push_back("vkCmdBindPipelineShaderGroupNV");
+               functions.push_back("vkCreateIndirectCommandsLayoutNV");
+               functions.push_back("vkDestroyIndirectCommandsLayoutNV");
+               return;
+       }
        if (extName == "VK_EXT_texel_buffer_alignment")
        {
                return;
        }
+       if (extName == "VK_QCOM_render_pass_transform")
+       {
+               return;
+       }
        if (extName == "VK_GOOGLE_user_type")
        {
                return;
        }
+       if (extName == "VK_EXT_pipeline_creation_cache_control")
+       {
+               return;
+       }
+       if (extName == "VK_NV_device_diagnostics_config")
+       {
+               return;
+       }
        if (extName == "VK_KHR_android_surface")
        {
                return;
@@ -1684,6 +1729,41 @@ void getDeviceExtensionFunctions (deUint32 apiVersion, ::std::string extName, ::
                functions.push_back("vkGetMemoryAndroidHardwareBufferANDROID");
                return;
        }
+       if (extName == "VK_KHR_deferred_host_operations")
+       {
+               functions.push_back("vkCreateDeferredOperationKHR");
+               functions.push_back("vkDestroyDeferredOperationKHR");
+               functions.push_back("vkGetDeferredOperationMaxConcurrencyKHR");
+               functions.push_back("vkGetDeferredOperationResultKHR");
+               functions.push_back("vkDeferredOperationJoinKHR");
+               return;
+       }
+       if (extName == "VK_KHR_pipeline_library")
+       {
+               return;
+       }
+       if (extName == "VK_KHR_ray_tracing")
+       {
+               functions.push_back("vkCreateAccelerationStructureKHR");
+               functions.push_back("vkGetAccelerationStructureMemoryRequirementsKHR");
+               functions.push_back("vkCmdBuildAccelerationStructureKHR");
+               functions.push_back("vkCmdBuildAccelerationStructureIndirectKHR");
+               functions.push_back("vkBuildAccelerationStructureKHR");
+               functions.push_back("vkCopyAccelerationStructureKHR");
+               functions.push_back("vkCopyAccelerationStructureToMemoryKHR");
+               functions.push_back("vkCopyMemoryToAccelerationStructureKHR");
+               functions.push_back("vkWriteAccelerationStructuresPropertiesKHR");
+               functions.push_back("vkCmdCopyAccelerationStructureKHR");
+               functions.push_back("vkCmdCopyAccelerationStructureToMemoryKHR");
+               functions.push_back("vkCmdCopyMemoryToAccelerationStructureKHR");
+               functions.push_back("vkCmdTraceRaysKHR");
+               functions.push_back("vkCreateRayTracingPipelinesKHR");
+               functions.push_back("vkGetAccelerationStructureDeviceAddressKHR");
+               functions.push_back("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
+               functions.push_back("vkCmdTraceRaysIndirectKHR");
+               functions.push_back("vkGetDeviceAccelerationStructureCompatibilityKHR");
+               return;
+       }
        if (extName == "VK_FUCHSIA_imagepipe_surface")
        {
                return;
@@ -1836,7 +1916,6 @@ void getDeviceExtensionFunctions (deUint32 apiVersion, ::std::string extName, ::
        "VK_AMD_draw_indirect_count",
        "VK_AMD_shader_info",
        "VK_EXT_conditional_rendering",
-       "VK_NVX_device_generated_commands",
        "VK_NV_clip_space_w_scaling",
        "VK_EXT_display_control",
        "VK_GOOGLE_display_timing",
@@ -1858,7 +1937,10 @@ void getDeviceExtensionFunctions (deUint32 apiVersion, ::std::string extName, ::
        "VK_EXT_buffer_device_address",
        "VK_EXT_line_rasterization",
        "VK_EXT_host_query_reset",
+       "VK_NV_device_generated_commands",
        "VK_ANDROID_external_memory_android_hardware_buffer",
+       "VK_KHR_deferred_host_operations",
+       "VK_KHR_ray_tracing",
        "VK_KHR_external_memory_win32",
        "VK_KHR_external_semaphore_win32",
        "VK_KHR_external_fence_win32",
index ab0894b..05f08e2 100644 (file)
@@ -282,15 +282,6 @@ typedef VKAPI_ATTR VkResult                                (VKAPI_CALL* GetShaderInfoAMDFunc)                                                                                                      (V
 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 void                                        (VKAPI_CALL* CmdBeginConditionalRenderingEXTFunc)                                                                       (VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdEndConditionalRenderingEXTFunc)                                                                         (VkCommandBuffer commandBuffer);
-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* CmdSetViewportWScalingNVFunc)                                                                                      (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewportWScalingNV* pViewportWScalings);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* ReleaseDisplayEXTFunc)                                                                                                     (VkPhysicalDevice physicalDevice, VkDisplayKHR display);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetPhysicalDeviceSurfaceCapabilities2EXTFunc)                                                      (VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities);
@@ -324,16 +315,20 @@ typedef VKAPI_ATTR void                                   (VKAPI_CALL* CmdBindShadingRateImageNVFunc)
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSetViewportShadingRatePaletteNVFunc)                                                            (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkShadingRatePaletteNV* pShadingRatePalettes);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSetCoarseSampleOrderNVFunc)                                                                                     (VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, deUint32 customSampleOrderCount, const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateAccelerationStructureNVFunc)                                                                         (VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyAccelerationStructureKHRFunc)                                                                       (VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyAccelerationStructureNVFunc)                                                                        (VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetAccelerationStructureMemoryRequirementsNVFunc)                                          (VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* BindAccelerationStructureMemoryNVFunc)                                                                     (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdBuildAccelerationStructureNVFunc)                                                                       (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdCopyAccelerationStructureNVFunc)                                                                        (VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeNV mode);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* BindAccelerationStructureMemoryKHRFunc)                                                            (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* BindAccelerationStructureMemoryNVFunc)                                                                     (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdBuildAccelerationStructureNVFunc)                                                                       (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdCopyAccelerationStructureNVFunc)                                                                        (VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdTraceRaysNVFunc)                                                                                                        (VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, deUint32 width, deUint32 height, deUint32 depth);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateRayTracingPipelinesNVFunc)                                                                           (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetRayTracingShaderGroupHandlesKHRFunc)                                                            (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetRayTracingShaderGroupHandlesNVFunc)                                                                     (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData);
-typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetAccelerationStructureHandleNVFunc)                                                                      (VkDevice device, VkAccelerationStructureNV accelerationStructure, deUintptr dataSize, void* pData);
-typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdWriteAccelerationStructuresPropertiesNVFunc)                                            (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetAccelerationStructureHandleNVFunc)                                                                      (VkDevice device, VkAccelerationStructureKHR accelerationStructure, deUintptr dataSize, void* pData);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdWriteAccelerationStructuresPropertiesKHRFunc)                                           (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdWriteAccelerationStructuresPropertiesNVFunc)                                            (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CompileDeferredNVFunc)                                                                                                     (VkDevice device, VkPipeline pipeline, deUint32 shader);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetMemoryHostPointerPropertiesEXTFunc)                                                                     (VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdWriteBufferMarkerAMDFunc)                                                                                       (VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, deUint32 marker);
@@ -362,9 +357,38 @@ typedef VKAPI_ATTR VkResult                                (VKAPI_CALL* GetPhysicalDeviceSupportedFramebuffe
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateHeadlessSurfaceEXTFunc)                                                                                      (VkInstance instance, const VkHeadlessSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSetLineStippleEXTFunc)                                                                                          (VkCommandBuffer commandBuffer, deUint32 lineStippleFactor, deUint16 lineStipplePattern);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* ResetQueryPoolEXTFunc)                                                                                                     (VkDevice device, VkQueryPool queryPool, deUint32 firstQuery, deUint32 queryCount);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetGeneratedCommandsMemoryRequirementsNVFunc)                                                      (VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdPreprocessGeneratedCommandsNVFunc)                                                                      (VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdExecuteGeneratedCommandsNVFunc)                                                                         (VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdBindPipelineShaderGroupNVFunc)                                                                          (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, deUint32 groupIndex);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateIndirectCommandsLayoutNVFunc)                                                                        (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyIndirectCommandsLayoutNVFunc)                                                                       (VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateAndroidSurfaceKHRFunc)                                                                                       (VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetAndroidHardwareBufferPropertiesANDROIDFunc)                                                     (VkDevice device, const struct pt::AndroidHardwareBufferPtr buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetMemoryAndroidHardwareBufferANDROIDFunc)                                                         (VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct pt::AndroidHardwareBufferPtr* pBuffer);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateDeferredOperationKHRFunc)                                                                            (VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyDeferredOperationKHRFunc)                                                                           (VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator);
+typedef VKAPI_ATTR uint32_t                            (VKAPI_CALL* GetDeferredOperationMaxConcurrencyKHRFunc)                                                         (VkDevice device, VkDeferredOperationKHR operation);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetDeferredOperationResultKHRFunc)                                                                         (VkDevice device, VkDeferredOperationKHR operation);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* DeferredOperationJoinKHRFunc)                                                                                      (VkDevice device, VkDeferredOperationKHR operation);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateAccelerationStructureKHRFunc)                                                                        (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetAccelerationStructureMemoryRequirementsKHRFunc)                                         (VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdBuildAccelerationStructureKHRFunc)                                                                      (VkCommandBuffer commandBuffer, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdBuildAccelerationStructureIndirectKHRFunc)                                                      (VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, deUint32 indirectStride);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* BuildAccelerationStructureKHRFunc)                                                                         (VkDevice device, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CopyAccelerationStructureKHRFunc)                                                                          (VkDevice device, const VkCopyAccelerationStructureInfoKHR* pInfo);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CopyAccelerationStructureToMemoryKHRFunc)                                                          (VkDevice device, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CopyMemoryToAccelerationStructureKHRFunc)                                                          (VkDevice device, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* WriteAccelerationStructuresPropertiesKHRFunc)                                                      (VkDevice device, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, deUintptr dataSize, void* pData, deUintptr stride);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdCopyAccelerationStructureKHRFunc)                                                                       (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdCopyAccelerationStructureToMemoryKHRFunc)                                                       (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdCopyMemoryToAccelerationStructureKHRFunc)                                                       (VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdTraceRaysKHRFunc)                                                                                                       (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, deUint32 width, deUint32 height, deUint32 depth);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateRayTracingPipelinesKHRFunc)                                                                          (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
+typedef VKAPI_ATTR VkDeviceAddress             (VKAPI_CALL* GetAccelerationStructureDeviceAddressKHRFunc)                                                      (VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetRayTracingCaptureReplayShaderGroupHandlesKHRFunc)                                       (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdTraceRaysIndirectKHRFunc)                                                                                       (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, VkBuffer buffer, VkDeviceSize offset);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetDeviceAccelerationStructureCompatibilityKHRFunc)                                        (VkDevice device, const VkAccelerationStructureVersionKHR* version);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateImagePipeSurfaceFUCHSIAFunc)                                                                         (VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateStreamDescriptorSurfaceGGPFunc)                                                                      (VkInstance instance, const VkStreamDescriptorSurfaceCreateInfoGGP* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateIOSSurfaceMVKFunc)                                                                                           (VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
index deb36cf..ddfad99 100644 (file)
@@ -1146,36 +1146,6 @@ template<> VkStructureType getStructureType<VkCommandBufferInheritanceConditiona
        return VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT;
 }
 
-template<> VkStructureType getStructureType<VkDeviceGeneratedCommandsFeaturesNVX> (void)
-{
-       return VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX;
-}
-
-template<> VkStructureType getStructureType<VkDeviceGeneratedCommandsLimitsNVX> (void)
-{
-       return VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX;
-}
-
-template<> VkStructureType getStructureType<VkIndirectCommandsLayoutCreateInfoNVX> (void)
-{
-       return VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX;
-}
-
-template<> VkStructureType getStructureType<VkCmdProcessCommandsInfoNVX> (void)
-{
-       return VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX;
-}
-
-template<> VkStructureType getStructureType<VkCmdReserveSpaceForCommandsInfoNVX> (void)
-{
-       return VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX;
-}
-
-template<> VkStructureType getStructureType<VkObjectTableCreateInfoNVX> (void)
-{
-       return VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX;
-}
-
 template<> VkStructureType getStructureType<VkPipelineViewportWScalingStateCreateInfoNV> (void)
 {
        return VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV;
@@ -1451,14 +1421,14 @@ template<> VkStructureType getStructureType<VkAccelerationStructureCreateInfoNV>
        return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV;
 }
 
-template<> VkStructureType getStructureType<VkBindAccelerationStructureMemoryInfoNV> (void)
+template<> VkStructureType getStructureType<VkBindAccelerationStructureMemoryInfoKHR> (void)
 {
-       return VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV;
+       return VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR;
 }
 
-template<> VkStructureType getStructureType<VkWriteDescriptorSetAccelerationStructureNV> (void)
+template<> VkStructureType getStructureType<VkWriteDescriptorSetAccelerationStructureKHR> (void)
 {
-       return VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV;
+       return VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR;
 }
 
 template<> VkStructureType getStructureType<VkAccelerationStructureMemoryRequirementsInfoNV> (void)
@@ -1606,9 +1576,9 @@ template<> VkStructureType getStructureType<VkInitializePerformanceApiInfoINTEL>
        return VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL;
 }
 
-template<> VkStructureType getStructureType<VkQueryPoolCreateInfoINTEL> (void)
+template<> VkStructureType getStructureType<VkQueryPoolPerformanceQueryCreateInfoINTEL> (void)
 {
-       return VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL;
+       return VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL;
 }
 
 template<> VkStructureType getStructureType<VkPerformanceMarkerInfoINTEL> (void)
@@ -1796,6 +1766,46 @@ template<> VkStructureType getStructureType<VkPhysicalDeviceShaderDemoteToHelper
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT;
 }
 
+template<> VkStructureType getStructureType<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV;
+}
+
+template<> VkStructureType getStructureType<VkGraphicsShaderGroupCreateInfoNV> (void)
+{
+       return VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV;
+}
+
+template<> VkStructureType getStructureType<VkGraphicsPipelineShaderGroupsCreateInfoNV> (void)
+{
+       return VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV;
+}
+
+template<> VkStructureType getStructureType<VkIndirectCommandsLayoutTokenNV> (void)
+{
+       return VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV;
+}
+
+template<> VkStructureType getStructureType<VkIndirectCommandsLayoutCreateInfoNV> (void)
+{
+       return VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV;
+}
+
+template<> VkStructureType getStructureType<VkGeneratedCommandsInfoNV> (void)
+{
+       return VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV;
+}
+
+template<> VkStructureType getStructureType<VkGeneratedCommandsMemoryRequirementsInfoNV> (void)
+{
+       return VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV;
+}
+
 template<> VkStructureType getStructureType<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT> (void)
 {
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT;
@@ -1806,6 +1816,31 @@ template<> VkStructureType getStructureType<VkPhysicalDeviceTexelBufferAlignment
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT;
 }
 
+template<> VkStructureType getStructureType<VkRenderPassTransformBeginInfoQCOM> (void)
+{
+       return VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM;
+}
+
+template<> VkStructureType getStructureType<VkCommandBufferInheritanceRenderPassTransformInfoQCOM> (void)
+{
+       return VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceDiagnosticsConfigFeaturesNV> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV;
+}
+
+template<> VkStructureType getStructureType<VkDeviceDiagnosticsConfigCreateInfoNV> (void)
+{
+       return VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV;
+}
+
 template<> VkStructureType getStructureType<VkAndroidSurfaceCreateInfoKHR> (void)
 {
        return VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR;
@@ -1841,6 +1876,106 @@ template<> VkStructureType getStructureType<VkExternalFormatANDROID> (void)
        return VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID;
 }
 
+template<> VkStructureType getStructureType<VkDeferredOperationInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkPipelineLibraryCreateInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkRayTracingShaderGroupCreateInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkRayTracingPipelineInterfaceCreateInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkRayTracingPipelineCreateInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureGeometryTrianglesDataKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureGeometryAabbsDataKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureGeometryInstancesDataKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureGeometryKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureBuildGeometryInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureCreateGeometryTypeInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureCreateInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureMemoryRequirementsInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceRayTracingFeaturesKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceRayTracingPropertiesKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureDeviceAddressInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureVersionKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR;
+}
+
+template<> VkStructureType getStructureType<VkCopyAccelerationStructureToMemoryInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkCopyMemoryToAccelerationStructureInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR;
+}
+
+template<> VkStructureType getStructureType<VkCopyAccelerationStructureInfoKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR;
+}
+
 template<> VkStructureType getStructureType<VkImagePipeSurfaceCreateInfoFUCHSIA> (void)
 {
        return VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA;
index 3075693..c66d833 100644 (file)
@@ -35,12 +35,15 @@ enum HandleType
        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_DEBUG_UTILS_MESSENGER_EXT,
        HANDLE_TYPE_VALIDATION_CACHE_EXT,
-       HANDLE_TYPE_ACCELERATION_STRUCTURE_NV,
+       HANDLE_TYPE_ACCELERATION_STRUCTURE_KHR,
        HANDLE_TYPE_PERFORMANCE_CONFIGURATION_INTEL,
-       HANDLE_TYPE_LAST                                                                = HANDLE_TYPE_PERFORMANCE_CONFIGURATION_INTEL + 1
+       HANDLE_TYPE_INDIRECT_COMMANDS_LAYOUT_NV,
+       HANDLE_TYPE_DEFERRED_OPERATION_KHR,
+       HANDLE_TYPE_ACCELERATION_STRUCTURE_NV,
+       HANDLE_TYPE_SAMPLER_YCBCR_CONVERSION_KHR                = HANDLE_TYPE_SAMPLER_YCBCR_CONVERSION,
+       HANDLE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR              = HANDLE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
+       HANDLE_TYPE_LAST                                                                = HANDLE_TYPE_ACCELERATION_STRUCTURE_NV + 1
 };
 
index cf1c172..5d4fd4f 100644 (file)
@@ -247,14 +247,6 @@ m_vk.cmdDrawIndexedIndirectCountAMD                                                = (CmdDrawIndexedIndirectCountAMDFunc)
 m_vk.getShaderInfoAMD                                                                  = (GetShaderInfoAMDFunc)                                                                GET_PROC_ADDR("vkGetShaderInfoAMD");
 m_vk.cmdBeginConditionalRenderingEXT                                   = (CmdBeginConditionalRenderingEXTFunc)                                 GET_PROC_ADDR("vkCmdBeginConditionalRenderingEXT");
 m_vk.cmdEndConditionalRenderingEXT                                             = (CmdEndConditionalRenderingEXTFunc)                                   GET_PROC_ADDR("vkCmdEndConditionalRenderingEXT");
-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.cmdSetViewportWScalingNV                                                  = (CmdSetViewportWScalingNVFunc)                                                GET_PROC_ADDR("vkCmdSetViewportWScalingNV");
 m_vk.displayPowerControlEXT                                                            = (DisplayPowerControlEXTFunc)                                                  GET_PROC_ADDR("vkDisplayPowerControlEXT");
 m_vk.registerDeviceEventEXT                                                            = (RegisterDeviceEventEXTFunc)                                                  GET_PROC_ADDR("vkRegisterDeviceEventEXT");
@@ -282,15 +274,19 @@ m_vk.cmdBindShadingRateImageNV                                                    = (CmdBindShadingRateImageNVFunc)                                               GET_
 m_vk.cmdSetViewportShadingRatePaletteNV                                        = (CmdSetViewportShadingRatePaletteNVFunc)                              GET_PROC_ADDR("vkCmdSetViewportShadingRatePaletteNV");
 m_vk.cmdSetCoarseSampleOrderNV                                                 = (CmdSetCoarseSampleOrderNVFunc)                                               GET_PROC_ADDR("vkCmdSetCoarseSampleOrderNV");
 m_vk.createAccelerationStructureNV                                             = (CreateAccelerationStructureNVFunc)                                   GET_PROC_ADDR("vkCreateAccelerationStructureNV");
+m_vk.destroyAccelerationStructureKHR                                   = (DestroyAccelerationStructureKHRFunc)                                 GET_PROC_ADDR("vkDestroyAccelerationStructureKHR");
 m_vk.destroyAccelerationStructureNV                                            = (DestroyAccelerationStructureNVFunc)                                  GET_PROC_ADDR("vkDestroyAccelerationStructureNV");
 m_vk.getAccelerationStructureMemoryRequirementsNV              = (GetAccelerationStructureMemoryRequirementsNVFunc)    GET_PROC_ADDR("vkGetAccelerationStructureMemoryRequirementsNV");
+m_vk.bindAccelerationStructureMemoryKHR                                        = (BindAccelerationStructureMemoryKHRFunc)                              GET_PROC_ADDR("vkBindAccelerationStructureMemoryKHR");
 m_vk.bindAccelerationStructureMemoryNV                                 = (BindAccelerationStructureMemoryNVFunc)                               GET_PROC_ADDR("vkBindAccelerationStructureMemoryNV");
 m_vk.cmdBuildAccelerationStructureNV                                   = (CmdBuildAccelerationStructureNVFunc)                                 GET_PROC_ADDR("vkCmdBuildAccelerationStructureNV");
 m_vk.cmdCopyAccelerationStructureNV                                            = (CmdCopyAccelerationStructureNVFunc)                                  GET_PROC_ADDR("vkCmdCopyAccelerationStructureNV");
 m_vk.cmdTraceRaysNV                                                                            = (CmdTraceRaysNVFunc)                                                                  GET_PROC_ADDR("vkCmdTraceRaysNV");
 m_vk.createRayTracingPipelinesNV                                               = (CreateRayTracingPipelinesNVFunc)                                             GET_PROC_ADDR("vkCreateRayTracingPipelinesNV");
+m_vk.getRayTracingShaderGroupHandlesKHR                                        = (GetRayTracingShaderGroupHandlesKHRFunc)                              GET_PROC_ADDR("vkGetRayTracingShaderGroupHandlesKHR");
 m_vk.getRayTracingShaderGroupHandlesNV                                 = (GetRayTracingShaderGroupHandlesNVFunc)                               GET_PROC_ADDR("vkGetRayTracingShaderGroupHandlesNV");
 m_vk.getAccelerationStructureHandleNV                                  = (GetAccelerationStructureHandleNVFunc)                                GET_PROC_ADDR("vkGetAccelerationStructureHandleNV");
+m_vk.cmdWriteAccelerationStructuresPropertiesKHR               = (CmdWriteAccelerationStructuresPropertiesKHRFunc)             GET_PROC_ADDR("vkCmdWriteAccelerationStructuresPropertiesKHR");
 m_vk.cmdWriteAccelerationStructuresPropertiesNV                        = (CmdWriteAccelerationStructuresPropertiesNVFunc)              GET_PROC_ADDR("vkCmdWriteAccelerationStructuresPropertiesNV");
 m_vk.compileDeferredNV                                                                 = (CompileDeferredNVFunc)                                                               GET_PROC_ADDR("vkCompileDeferredNV");
 m_vk.getMemoryHostPointerPropertiesEXT                                 = (GetMemoryHostPointerPropertiesEXTFunc)                               GET_PROC_ADDR("vkGetMemoryHostPointerPropertiesEXT");
@@ -314,8 +310,37 @@ m_vk.getPerformanceParameterINTEL                                          = (GetPerformanceParameterINTELFunc)
 m_vk.setLocalDimmingAMD                                                                        = (SetLocalDimmingAMDFunc)                                                              GET_PROC_ADDR("vkSetLocalDimmingAMD");
 m_vk.getBufferDeviceAddressEXT                                                 = (GetBufferDeviceAddressEXTFunc)                                               GET_PROC_ADDR("vkGetBufferDeviceAddressEXT");
 m_vk.cmdSetLineStippleEXT                                                              = (CmdSetLineStippleEXTFunc)                                                    GET_PROC_ADDR("vkCmdSetLineStippleEXT");
+m_vk.getGeneratedCommandsMemoryRequirementsNV                  = (GetGeneratedCommandsMemoryRequirementsNVFunc)                GET_PROC_ADDR("vkGetGeneratedCommandsMemoryRequirementsNV");
+m_vk.cmdPreprocessGeneratedCommandsNV                                  = (CmdPreprocessGeneratedCommandsNVFunc)                                GET_PROC_ADDR("vkCmdPreprocessGeneratedCommandsNV");
+m_vk.cmdExecuteGeneratedCommandsNV                                             = (CmdExecuteGeneratedCommandsNVFunc)                                   GET_PROC_ADDR("vkCmdExecuteGeneratedCommandsNV");
+m_vk.cmdBindPipelineShaderGroupNV                                              = (CmdBindPipelineShaderGroupNVFunc)                                    GET_PROC_ADDR("vkCmdBindPipelineShaderGroupNV");
+m_vk.createIndirectCommandsLayoutNV                                            = (CreateIndirectCommandsLayoutNVFunc)                                  GET_PROC_ADDR("vkCreateIndirectCommandsLayoutNV");
+m_vk.destroyIndirectCommandsLayoutNV                                   = (DestroyIndirectCommandsLayoutNVFunc)                                 GET_PROC_ADDR("vkDestroyIndirectCommandsLayoutNV");
 m_vk.getAndroidHardwareBufferPropertiesANDROID                 = (GetAndroidHardwareBufferPropertiesANDROIDFunc)               GET_PROC_ADDR("vkGetAndroidHardwareBufferPropertiesANDROID");
 m_vk.getMemoryAndroidHardwareBufferANDROID                             = (GetMemoryAndroidHardwareBufferANDROIDFunc)                   GET_PROC_ADDR("vkGetMemoryAndroidHardwareBufferANDROID");
+m_vk.createDeferredOperationKHR                                                        = (CreateDeferredOperationKHRFunc)                                              GET_PROC_ADDR("vkCreateDeferredOperationKHR");
+m_vk.destroyDeferredOperationKHR                                               = (DestroyDeferredOperationKHRFunc)                                             GET_PROC_ADDR("vkDestroyDeferredOperationKHR");
+m_vk.getDeferredOperationMaxConcurrencyKHR                             = (GetDeferredOperationMaxConcurrencyKHRFunc)                   GET_PROC_ADDR("vkGetDeferredOperationMaxConcurrencyKHR");
+m_vk.getDeferredOperationResultKHR                                             = (GetDeferredOperationResultKHRFunc)                                   GET_PROC_ADDR("vkGetDeferredOperationResultKHR");
+m_vk.deferredOperationJoinKHR                                                  = (DeferredOperationJoinKHRFunc)                                                GET_PROC_ADDR("vkDeferredOperationJoinKHR");
+m_vk.createAccelerationStructureKHR                                            = (CreateAccelerationStructureKHRFunc)                                  GET_PROC_ADDR("vkCreateAccelerationStructureKHR");
+m_vk.getAccelerationStructureMemoryRequirementsKHR             = (GetAccelerationStructureMemoryRequirementsKHRFunc)   GET_PROC_ADDR("vkGetAccelerationStructureMemoryRequirementsKHR");
+m_vk.cmdBuildAccelerationStructureKHR                                  = (CmdBuildAccelerationStructureKHRFunc)                                GET_PROC_ADDR("vkCmdBuildAccelerationStructureKHR");
+m_vk.cmdBuildAccelerationStructureIndirectKHR                  = (CmdBuildAccelerationStructureIndirectKHRFunc)                GET_PROC_ADDR("vkCmdBuildAccelerationStructureIndirectKHR");
+m_vk.buildAccelerationStructureKHR                                             = (BuildAccelerationStructureKHRFunc)                                   GET_PROC_ADDR("vkBuildAccelerationStructureKHR");
+m_vk.copyAccelerationStructureKHR                                              = (CopyAccelerationStructureKHRFunc)                                    GET_PROC_ADDR("vkCopyAccelerationStructureKHR");
+m_vk.copyAccelerationStructureToMemoryKHR                              = (CopyAccelerationStructureToMemoryKHRFunc)                    GET_PROC_ADDR("vkCopyAccelerationStructureToMemoryKHR");
+m_vk.copyMemoryToAccelerationStructureKHR                              = (CopyMemoryToAccelerationStructureKHRFunc)                    GET_PROC_ADDR("vkCopyMemoryToAccelerationStructureKHR");
+m_vk.writeAccelerationStructuresPropertiesKHR                  = (WriteAccelerationStructuresPropertiesKHRFunc)                GET_PROC_ADDR("vkWriteAccelerationStructuresPropertiesKHR");
+m_vk.cmdCopyAccelerationStructureKHR                                   = (CmdCopyAccelerationStructureKHRFunc)                                 GET_PROC_ADDR("vkCmdCopyAccelerationStructureKHR");
+m_vk.cmdCopyAccelerationStructureToMemoryKHR                   = (CmdCopyAccelerationStructureToMemoryKHRFunc)                 GET_PROC_ADDR("vkCmdCopyAccelerationStructureToMemoryKHR");
+m_vk.cmdCopyMemoryToAccelerationStructureKHR                   = (CmdCopyMemoryToAccelerationStructureKHRFunc)                 GET_PROC_ADDR("vkCmdCopyMemoryToAccelerationStructureKHR");
+m_vk.cmdTraceRaysKHR                                                                   = (CmdTraceRaysKHRFunc)                                                                 GET_PROC_ADDR("vkCmdTraceRaysKHR");
+m_vk.createRayTracingPipelinesKHR                                              = (CreateRayTracingPipelinesKHRFunc)                                    GET_PROC_ADDR("vkCreateRayTracingPipelinesKHR");
+m_vk.getAccelerationStructureDeviceAddressKHR                  = (GetAccelerationStructureDeviceAddressKHRFunc)                GET_PROC_ADDR("vkGetAccelerationStructureDeviceAddressKHR");
+m_vk.getRayTracingCaptureReplayShaderGroupHandlesKHR   = (GetRayTracingCaptureReplayShaderGroupHandlesKHRFunc) GET_PROC_ADDR("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
+m_vk.cmdTraceRaysIndirectKHR                                                   = (CmdTraceRaysIndirectKHRFunc)                                                 GET_PROC_ADDR("vkCmdTraceRaysIndirectKHR");
+m_vk.getDeviceAccelerationStructureCompatibilityKHR            = (GetDeviceAccelerationStructureCompatibilityKHRFunc)  GET_PROC_ADDR("vkGetDeviceAccelerationStructureCompatibilityKHR");
 m_vk.getMemoryWin32HandleKHR                                                   = (GetMemoryWin32HandleKHRFunc)                                                 GET_PROC_ADDR("vkGetMemoryWin32HandleKHR");
 m_vk.getMemoryWin32HandlePropertiesKHR                                 = (GetMemoryWin32HandlePropertiesKHRFunc)                               GET_PROC_ADDR("vkGetMemoryWin32HandlePropertiesKHR");
 m_vk.importSemaphoreWin32HandleKHR                                             = (ImportSemaphoreWin32HandleKHRFunc)                                   GET_PROC_ADDR("vkImportSemaphoreWin32HandleKHR");
index 41b9e29..dc1e66a 100644 (file)
@@ -81,7 +81,6 @@ m_vk.createDebugReportCallbackEXT                                                                             = (CreateDebugReportCallbackEXTFunc)
 m_vk.destroyDebugReportCallbackEXT                                                                             = (DestroyDebugReportCallbackEXTFunc)                                                                   GET_PROC_ADDR("vkDestroyDebugReportCallbackEXT");
 m_vk.debugReportMessageEXT                                                                                             = (DebugReportMessageEXTFunc)                                                                                   GET_PROC_ADDR("vkDebugReportMessageEXT");
 m_vk.getPhysicalDeviceExternalImageFormatPropertiesNV                                  = (GetPhysicalDeviceExternalImageFormatPropertiesNVFunc)                                GET_PROC_ADDR("vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
-m_vk.getPhysicalDeviceGeneratedCommandsPropertiesNVX                                   = (GetPhysicalDeviceGeneratedCommandsPropertiesNVXFunc)                                 GET_PROC_ADDR("vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX");
 m_vk.releaseDisplayEXT                                                                                                 = (ReleaseDisplayEXTFunc)                                                                                               GET_PROC_ADDR("vkReleaseDisplayEXT");
 m_vk.getPhysicalDeviceSurfaceCapabilities2EXT                                                  = (GetPhysicalDeviceSurfaceCapabilities2EXTFunc)                                                GET_PROC_ADDR("vkGetPhysicalDeviceSurfaceCapabilities2EXT");
 m_vk.createDebugUtilsMessengerEXT                                                                              = (CreateDebugUtilsMessengerEXTFunc)                                                                    GET_PROC_ADDR("vkCreateDebugUtilsMessengerEXT");
index 1e5af6c..e2656c2 100644 (file)
@@ -292,11 +292,6 @@ VkResult InstanceDriver::getPhysicalDeviceExternalImageFormatPropertiesNV (VkPhy
        return m_vk.getPhysicalDeviceExternalImageFormatPropertiesNV(physicalDevice, format, type, tiling, usage, flags, externalHandleType, pExternalImageFormatProperties);
 }
 
-void InstanceDriver::getPhysicalDeviceGeneratedCommandsPropertiesNVX (VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits) const
-{
-       m_vk.getPhysicalDeviceGeneratedCommandsPropertiesNVX(physicalDevice, pFeatures, pLimits);
-}
-
 VkResult InstanceDriver::releaseDisplayEXT (VkPhysicalDevice physicalDevice, VkDisplayKHR display) const
 {
        return m_vk.releaseDisplayEXT(physicalDevice, display);
index 3c14f23..562668a 100644 (file)
@@ -59,7 +59,6 @@ CreateDebugReportCallbackEXTFunc                                                                      createDebugReportCallbackEXT;
 DestroyDebugReportCallbackEXTFunc                                                                      destroyDebugReportCallbackEXT;
 DebugReportMessageEXTFunc                                                                                      debugReportMessageEXT;
 GetPhysicalDeviceExternalImageFormatPropertiesNVFunc                           getPhysicalDeviceExternalImageFormatPropertiesNV;
-GetPhysicalDeviceGeneratedCommandsPropertiesNVXFunc                                    getPhysicalDeviceGeneratedCommandsPropertiesNVX;
 ReleaseDisplayEXTFunc                                                                                          releaseDisplayEXT;
 GetPhysicalDeviceSurfaceCapabilities2EXTFunc                                           getPhysicalDeviceSurfaceCapabilities2EXT;
 CreateDebugUtilsMessengerEXTFunc                                                                       createDebugUtilsMessengerEXT;
index 8b6f6ee..4c7a98d 100644 (file)
@@ -112,6 +112,31 @@ Handle allocateHandle (const CreateInfo* pCreateInfo, const VkAllocationCallback
        return reinterpret_cast<Handle>(obj);
 }
 
+template<typename Object, typename Handle, typename Parent>
+Handle allocateHandle (Parent parent, const VkAllocationCallbacks* pAllocator)
+{
+       Object* obj = DE_NULL;
+
+       if (pAllocator)
+       {
+               void* mem = allocateSystemMem<Object>(pAllocator, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
+               try
+               {
+                       obj = new (mem) Object(parent);
+                       DE_ASSERT(obj == mem);
+               }
+               catch (...)
+               {
+                       pAllocator->pfnFree(pAllocator->pUserData, mem);
+                       throw;
+               }
+       }
+       else
+               obj = new Object(parent);
+
+       return reinterpret_cast<Handle>(obj);
+}
+
 template<typename Object, typename Handle>
 void freeHandle (Handle handle, const VkAllocationCallbacks* pAllocator)
 {
@@ -139,6 +164,13 @@ Handle allocateNonDispHandle (Parent parent, const CreateInfo* pCreateInfo, cons
        return allocateNonDispHandle<Object, Object, Handle, Parent, CreateInfo>(parent, pCreateInfo, pAllocator);
 }
 
+template<typename Object, typename Handle, typename Parent>
+Handle allocateNonDispHandle (Parent parent, const VkAllocationCallbacks* pAllocator)
+{
+       Object* const   obj             = allocateHandle<Object, Object*>(parent, pAllocator);
+       return Handle((deUint64)(deUintptr)obj);
+}
+
 template<typename Object, typename Handle>
 void freeNonDispHandle (Handle handle, const VkAllocationCallbacks* pAllocator)
 {
@@ -244,6 +276,7 @@ public:
        Pipeline (VkDevice, const VkGraphicsPipelineCreateInfo*) {}
        Pipeline (VkDevice, const VkComputePipelineCreateInfo*) {}
        Pipeline (VkDevice, const VkRayTracingPipelineCreateInfoNV*) {}
+       Pipeline (VkDevice, const VkRayTracingPipelineCreateInfoKHR*) {}
 };
 
 class RenderPass
@@ -477,31 +510,38 @@ private:
 };
 #endif // defined(USE_ANDROID_O_HARDWARE_BUFFER)
 
-class IndirectCommandsLayoutNVX
+class IndirectCommandsLayoutNV
 {
 public:
-                                               IndirectCommandsLayoutNVX       (VkDevice, const VkIndirectCommandsLayoutCreateInfoNVX*)
+                                               IndirectCommandsLayoutNV        (VkDevice, const VkIndirectCommandsLayoutCreateInfoNV*)
                                                {}
 };
 
-class ObjectTableNVX
+class DebugUtilsMessengerEXT
 {
 public:
-                                               ObjectTableNVX                          (VkDevice, const VkObjectTableCreateInfoNVX*)
+                                               DebugUtilsMessengerEXT          (VkInstance, const VkDebugUtilsMessengerCreateInfoEXT*)
                                                {}
 };
 
-class DebugUtilsMessengerEXT
+class AccelerationStructureNV
 {
 public:
-                                               DebugUtilsMessengerEXT          (VkInstance, const VkDebugUtilsMessengerCreateInfoEXT*)
+                                               AccelerationStructureNV         (VkDevice, const VkAccelerationStructureCreateInfoNV*)
                                                {}
 };
 
-class AccelerationStructureNV
+class AccelerationStructureKHR
 {
 public:
-                                               AccelerationStructureNV         (VkDevice, const VkAccelerationStructureCreateInfoNV*)
+                                               AccelerationStructureKHR        (VkDevice, const VkAccelerationStructureCreateInfoKHR*)
+                                               {}
+};
+
+class DeferredOperationKHR
+{
+public:
+                                               DeferredOperationKHR            (VkDevice)
                                                {}
 };
 
@@ -722,7 +762,33 @@ VKAPI_ATTR VkResult VKAPI_CALL createComputePipelines (VkDevice device, VkPipeli
        }
 }
 
-VKAPI_ATTR VkResult VKAPI_CALL createRayTracingPipelinesNV (VkDevice device, VkPipelineCache, deUint32 count, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines)
+VKAPI_ATTR VkResult VKAPI_CALL createRayTracingPipelinesNV (VkDevice device, VkPipelineCache, deUint32 count, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines)
+{
+       deUint32 allocNdx;
+       try
+       {
+               for (allocNdx = 0; allocNdx < count; allocNdx++)
+                       pPipelines[allocNdx] = allocateNonDispHandle<Pipeline, VkPipeline>(device, pCreateInfos+allocNdx, pAllocator);
+
+               return VK_SUCCESS;
+       }
+       catch (const std::bad_alloc&)
+       {
+               for (deUint32 freeNdx = 0; freeNdx < allocNdx; freeNdx++)
+                       freeNonDispHandle<Pipeline, VkPipeline>(pPipelines[freeNdx], pAllocator);
+
+               return VK_ERROR_OUT_OF_HOST_MEMORY;
+       }
+       catch (VkResult err)
+       {
+               for (deUint32 freeNdx = 0; freeNdx < allocNdx; freeNdx++)
+                       freeNonDispHandle<Pipeline, VkPipeline>(pPipelines[freeNdx], pAllocator);
+
+               return err;
+       }
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL createRayTracingPipelinesKHR (VkDevice device, VkPipelineCache, deUint32 count, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines)
 {
        deUint32 allocNdx;
        try
index efb4765..89f71cf 100644 (file)
@@ -151,18 +151,6 @@ VKAPI_ATTR VkResult VKAPI_CALL createDebugReportCallbackEXT (VkInstance instance
        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)
-{
-       DE_UNREF(pAllocator);
-       VK_NULL_RETURN((*pObjectTable = allocateNonDispHandle<ObjectTableNVX, VkObjectTableNVX>(device, pCreateInfo, pAllocator)));
-}
-
 VKAPI_ATTR VkResult VKAPI_CALL createDebugUtilsMessengerEXT (VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugUtilsMessengerEXT* pMessenger)
 {
        DE_UNREF(pAllocator);
@@ -187,12 +175,30 @@ VKAPI_ATTR VkResult VKAPI_CALL createHeadlessSurfaceEXT (VkInstance instance, co
        VK_NULL_RETURN((*pSurface = allocateNonDispHandle<SurfaceKHR, VkSurfaceKHR>(instance, pCreateInfo, pAllocator)));
 }
 
+VKAPI_ATTR VkResult VKAPI_CALL createIndirectCommandsLayoutNV (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout)
+{
+       DE_UNREF(pAllocator);
+       VK_NULL_RETURN((*pIndirectCommandsLayout = allocateNonDispHandle<IndirectCommandsLayoutNV, VkIndirectCommandsLayoutNV>(device, pCreateInfo, pAllocator)));
+}
+
 VKAPI_ATTR VkResult VKAPI_CALL createAndroidSurfaceKHR (VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface)
 {
        DE_UNREF(pAllocator);
        VK_NULL_RETURN((*pSurface = allocateNonDispHandle<SurfaceKHR, VkSurfaceKHR>(instance, pCreateInfo, pAllocator)));
 }
 
+VKAPI_ATTR VkResult VKAPI_CALL createDeferredOperationKHR (VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation)
+{
+       DE_UNREF(pAllocator);
+       VK_NULL_RETURN((*pDeferredOperation = allocateNonDispHandle<DeferredOperationKHR, VkDeferredOperationKHR>(device, pAllocator)));
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL createAccelerationStructureKHR (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure)
+{
+       DE_UNREF(pAllocator);
+       VK_NULL_RETURN((*pAccelerationStructure = allocateNonDispHandle<AccelerationStructureKHR, VkAccelerationStructureKHR>(device, pCreateInfo, pAllocator)));
+}
+
 VKAPI_ATTR VkResult VKAPI_CALL createImagePipeSurfaceFUCHSIA (VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface)
 {
        DE_UNREF(pAllocator);
@@ -407,34 +413,40 @@ VKAPI_ATTR void VKAPI_CALL destroyDebugReportCallbackEXT (VkInstance instance, V
        freeNonDispHandle<DebugReportCallbackEXT, VkDebugReportCallbackEXT>(callback, pAllocator);
 }
 
-VKAPI_ATTR void VKAPI_CALL destroyIndirectCommandsLayoutNVX (VkDevice device, VkIndirectCommandsLayoutNVX indirectCommandsLayout, const VkAllocationCallbacks* pAllocator)
+VKAPI_ATTR void VKAPI_CALL destroyDebugUtilsMessengerEXT (VkInstance instance, VkDebugUtilsMessengerEXT messenger, const VkAllocationCallbacks* pAllocator)
+{
+       DE_UNREF(instance);
+       freeNonDispHandle<DebugUtilsMessengerEXT, VkDebugUtilsMessengerEXT>(messenger, pAllocator);
+}
+
+VKAPI_ATTR void VKAPI_CALL destroyValidationCacheEXT (VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator)
 {
        DE_UNREF(device);
-       freeNonDispHandle<IndirectCommandsLayoutNVX, VkIndirectCommandsLayoutNVX>(indirectCommandsLayout, pAllocator);
+       freeNonDispHandle<ValidationCacheEXT, VkValidationCacheEXT>(validationCache, pAllocator);
 }
 
-VKAPI_ATTR void VKAPI_CALL destroyObjectTableNVX (VkDevice device, VkObjectTableNVX objectTable, const VkAllocationCallbacks* pAllocator)
+VKAPI_ATTR void VKAPI_CALL destroyAccelerationStructureKHR (VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator)
 {
        DE_UNREF(device);
-       freeNonDispHandle<ObjectTableNVX, VkObjectTableNVX>(objectTable, pAllocator);
+       freeNonDispHandle<AccelerationStructureKHR, VkAccelerationStructureKHR>(accelerationStructure, pAllocator);
 }
 
-VKAPI_ATTR void VKAPI_CALL destroyDebugUtilsMessengerEXT (VkInstance instance, VkDebugUtilsMessengerEXT messenger, const VkAllocationCallbacks* pAllocator)
+VKAPI_ATTR void VKAPI_CALL destroyAccelerationStructureNV (VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator)
 {
-       DE_UNREF(instance);
-       freeNonDispHandle<DebugUtilsMessengerEXT, VkDebugUtilsMessengerEXT>(messenger, pAllocator);
+       DE_UNREF(device);
+       freeNonDispHandle<AccelerationStructureNV, VkAccelerationStructureNV>(accelerationStructure, pAllocator);
 }
 
-VKAPI_ATTR void VKAPI_CALL destroyValidationCacheEXT (VkDevice device, VkValidationCacheEXT validationCache, const VkAllocationCallbacks* pAllocator)
+VKAPI_ATTR void VKAPI_CALL destroyIndirectCommandsLayoutNV (VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator)
 {
        DE_UNREF(device);
-       freeNonDispHandle<ValidationCacheEXT, VkValidationCacheEXT>(validationCache, pAllocator);
+       freeNonDispHandle<IndirectCommandsLayoutNV, VkIndirectCommandsLayoutNV>(indirectCommandsLayout, pAllocator);
 }
 
-VKAPI_ATTR void VKAPI_CALL destroyAccelerationStructureNV (VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator)
+VKAPI_ATTR void VKAPI_CALL destroyDeferredOperationKHR (VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator)
 {
        DE_UNREF(device);
-       freeNonDispHandle<AccelerationStructureNV, VkAccelerationStructureNV>(accelerationStructure, pAllocator);
+       freeNonDispHandle<DeferredOperationKHR, VkDeferredOperationKHR>(operation, pAllocator);
 }
 
 VKAPI_ATTR VkResult VKAPI_CALL enumerateInstanceLayerProperties (deUint32* pPropertyCount, VkLayerProperties* pProperties)
@@ -1804,45 +1816,6 @@ VKAPI_ATTR void VKAPI_CALL cmdEndConditionalRenderingEXT (VkCommandBuffer comman
        DE_UNREF(commandBuffer);
 }
 
-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 cmdSetViewportWScalingNV (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewportWScalingNV* pViewportWScalings)
 {
        DE_UNREF(commandBuffer);
@@ -2060,7 +2033,15 @@ VKAPI_ATTR void VKAPI_CALL getAccelerationStructureMemoryRequirementsNV (VkDevic
        DE_UNREF(pMemoryRequirements);
 }
 
-VKAPI_ATTR VkResult VKAPI_CALL bindAccelerationStructureMemoryNV (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos)
+VKAPI_ATTR VkResult VKAPI_CALL bindAccelerationStructureMemoryKHR (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos)
+{
+       DE_UNREF(device);
+       DE_UNREF(bindInfoCount);
+       DE_UNREF(pBindInfos);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL bindAccelerationStructureMemoryNV (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos)
 {
        DE_UNREF(device);
        DE_UNREF(bindInfoCount);
@@ -2068,7 +2049,7 @@ VKAPI_ATTR VkResult VKAPI_CALL bindAccelerationStructureMemoryNV (VkDevice devic
        return VK_SUCCESS;
 }
 
-VKAPI_ATTR void VKAPI_CALL cmdBuildAccelerationStructureNV (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset)
+VKAPI_ATTR void VKAPI_CALL cmdBuildAccelerationStructureNV (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset)
 {
        DE_UNREF(commandBuffer);
        DE_UNREF(pInfo);
@@ -2081,7 +2062,7 @@ VKAPI_ATTR void VKAPI_CALL cmdBuildAccelerationStructureNV (VkCommandBuffer comm
        DE_UNREF(scratchOffset);
 }
 
-VKAPI_ATTR void VKAPI_CALL cmdCopyAccelerationStructureNV (VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeNV mode)
+VKAPI_ATTR void VKAPI_CALL cmdCopyAccelerationStructureNV (VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode)
 {
        DE_UNREF(commandBuffer);
        DE_UNREF(dst);
@@ -2108,6 +2089,17 @@ VKAPI_ATTR void VKAPI_CALL cmdTraceRaysNV (VkCommandBuffer commandBuffer, VkBuff
        DE_UNREF(depth);
 }
 
+VKAPI_ATTR VkResult VKAPI_CALL getRayTracingShaderGroupHandlesKHR (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData)
+{
+       DE_UNREF(device);
+       DE_UNREF(pipeline);
+       DE_UNREF(firstGroup);
+       DE_UNREF(groupCount);
+       DE_UNREF(dataSize);
+       DE_UNREF(pData);
+       return VK_SUCCESS;
+}
+
 VKAPI_ATTR VkResult VKAPI_CALL getRayTracingShaderGroupHandlesNV (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData)
 {
        DE_UNREF(device);
@@ -2119,7 +2111,7 @@ VKAPI_ATTR VkResult VKAPI_CALL getRayTracingShaderGroupHandlesNV (VkDevice devic
        return VK_SUCCESS;
 }
 
-VKAPI_ATTR VkResult VKAPI_CALL getAccelerationStructureHandleNV (VkDevice device, VkAccelerationStructureNV accelerationStructure, deUintptr dataSize, void* pData)
+VKAPI_ATTR VkResult VKAPI_CALL getAccelerationStructureHandleNV (VkDevice device, VkAccelerationStructureKHR accelerationStructure, deUintptr dataSize, void* pData)
 {
        DE_UNREF(device);
        DE_UNREF(accelerationStructure);
@@ -2128,7 +2120,17 @@ VKAPI_ATTR VkResult VKAPI_CALL getAccelerationStructureHandleNV (VkDevice device
        return VK_SUCCESS;
 }
 
-VKAPI_ATTR void VKAPI_CALL cmdWriteAccelerationStructuresPropertiesNV (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery)
+VKAPI_ATTR void VKAPI_CALL cmdWriteAccelerationStructuresPropertiesKHR (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(accelerationStructureCount);
+       DE_UNREF(pAccelerationStructures);
+       DE_UNREF(queryType);
+       DE_UNREF(queryPool);
+       DE_UNREF(firstQuery);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdWriteAccelerationStructuresPropertiesNV (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery)
 {
        DE_UNREF(commandBuffer);
        DE_UNREF(accelerationStructureCount);
@@ -2338,6 +2340,34 @@ VKAPI_ATTR void VKAPI_CALL cmdSetLineStippleEXT (VkCommandBuffer commandBuffer,
        DE_UNREF(lineStipplePattern);
 }
 
+VKAPI_ATTR void VKAPI_CALL getGeneratedCommandsMemoryRequirementsNV (VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements)
+{
+       DE_UNREF(device);
+       DE_UNREF(pInfo);
+       DE_UNREF(pMemoryRequirements);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdPreprocessGeneratedCommandsNV (VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pGeneratedCommandsInfo);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdExecuteGeneratedCommandsNV (VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(isPreprocessed);
+       DE_UNREF(pGeneratedCommandsInfo);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdBindPipelineShaderGroupNV (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, deUint32 groupIndex)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pipelineBindPoint);
+       DE_UNREF(pipeline);
+       DE_UNREF(groupIndex);
+}
+
 VKAPI_ATTR VkResult VKAPI_CALL getAndroidHardwareBufferPropertiesANDROID (VkDevice device, const struct pt::AndroidHardwareBufferPtr buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties)
 {
        DE_UNREF(device);
@@ -2346,6 +2376,159 @@ VKAPI_ATTR VkResult VKAPI_CALL getAndroidHardwareBufferPropertiesANDROID (VkDevi
        return VK_SUCCESS;
 }
 
+VKAPI_ATTR uint32_t VKAPI_CALL getDeferredOperationMaxConcurrencyKHR (VkDevice device, VkDeferredOperationKHR operation)
+{
+       DE_UNREF(device);
+       DE_UNREF(operation);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL getDeferredOperationResultKHR (VkDevice device, VkDeferredOperationKHR operation)
+{
+       DE_UNREF(device);
+       DE_UNREF(operation);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL deferredOperationJoinKHR (VkDevice device, VkDeferredOperationKHR operation)
+{
+       DE_UNREF(device);
+       DE_UNREF(operation);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL getAccelerationStructureMemoryRequirementsKHR (VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements)
+{
+       DE_UNREF(device);
+       DE_UNREF(pInfo);
+       DE_UNREF(pMemoryRequirements);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdBuildAccelerationStructureKHR (VkCommandBuffer commandBuffer, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(infoCount);
+       DE_UNREF(pInfos);
+       DE_UNREF(ppOffsetInfos);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdBuildAccelerationStructureIndirectKHR (VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, deUint32 indirectStride)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pInfo);
+       DE_UNREF(indirectBuffer);
+       DE_UNREF(indirectOffset);
+       DE_UNREF(indirectStride);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL buildAccelerationStructureKHR (VkDevice device, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos)
+{
+       DE_UNREF(device);
+       DE_UNREF(infoCount);
+       DE_UNREF(pInfos);
+       DE_UNREF(ppOffsetInfos);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL copyAccelerationStructureKHR (VkDevice device, const VkCopyAccelerationStructureInfoKHR* pInfo)
+{
+       DE_UNREF(device);
+       DE_UNREF(pInfo);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL copyAccelerationStructureToMemoryKHR (VkDevice device, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo)
+{
+       DE_UNREF(device);
+       DE_UNREF(pInfo);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL copyMemoryToAccelerationStructureKHR (VkDevice device, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo)
+{
+       DE_UNREF(device);
+       DE_UNREF(pInfo);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL writeAccelerationStructuresPropertiesKHR (VkDevice device, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, deUintptr dataSize, void* pData, deUintptr stride)
+{
+       DE_UNREF(device);
+       DE_UNREF(accelerationStructureCount);
+       DE_UNREF(pAccelerationStructures);
+       DE_UNREF(queryType);
+       DE_UNREF(dataSize);
+       DE_UNREF(pData);
+       DE_UNREF(stride);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdCopyAccelerationStructureKHR (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pInfo);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdCopyAccelerationStructureToMemoryKHR (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pInfo);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdCopyMemoryToAccelerationStructureKHR (VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pInfo);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdTraceRaysKHR (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, deUint32 width, deUint32 height, deUint32 depth)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pRaygenShaderBindingTable);
+       DE_UNREF(pMissShaderBindingTable);
+       DE_UNREF(pHitShaderBindingTable);
+       DE_UNREF(pCallableShaderBindingTable);
+       DE_UNREF(width);
+       DE_UNREF(height);
+       DE_UNREF(depth);
+}
+
+VKAPI_ATTR VkDeviceAddress VKAPI_CALL getAccelerationStructureDeviceAddressKHR (VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo)
+{
+       DE_UNREF(device);
+       DE_UNREF(pInfo);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL getRayTracingCaptureReplayShaderGroupHandlesKHR (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData)
+{
+       DE_UNREF(device);
+       DE_UNREF(pipeline);
+       DE_UNREF(firstGroup);
+       DE_UNREF(groupCount);
+       DE_UNREF(dataSize);
+       DE_UNREF(pData);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdTraceRaysIndirectKHR (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, VkBuffer buffer, VkDeviceSize offset)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(pRaygenShaderBindingTable);
+       DE_UNREF(pMissShaderBindingTable);
+       DE_UNREF(pHitShaderBindingTable);
+       DE_UNREF(pCallableShaderBindingTable);
+       DE_UNREF(buffer);
+       DE_UNREF(offset);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL getDeviceAccelerationStructureCompatibilityKHR (VkDevice device, const VkAccelerationStructureVersionKHR* version)
+{
+       DE_UNREF(device);
+       DE_UNREF(version);
+       return VK_SUCCESS;
+}
+
 VKAPI_ATTR VkBool32 VKAPI_CALL getPhysicalDeviceWaylandPresentationSupportKHR (VkPhysicalDevice physicalDevice, deUint32 queueFamilyIndex, pt::WaylandDisplayPtr display)
 {
        DE_UNREF(physicalDevice);
@@ -2553,7 +2736,6 @@ static const tcu::StaticFunctionLibrary::Entry s_instanceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkDestroyDebugReportCallbackEXT,                                                                             destroyDebugReportCallbackEXT),
        VK_NULL_FUNC_ENTRY(vkDebugReportMessageEXT,                                                                                             debugReportMessageEXT),
        VK_NULL_FUNC_ENTRY(vkGetPhysicalDeviceExternalImageFormatPropertiesNV,                                  getPhysicalDeviceExternalImageFormatPropertiesNV),
-       VK_NULL_FUNC_ENTRY(vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX,                                   getPhysicalDeviceGeneratedCommandsPropertiesNVX),
        VK_NULL_FUNC_ENTRY(vkReleaseDisplayEXT,                                                                                                 releaseDisplayEXT),
        VK_NULL_FUNC_ENTRY(vkGetPhysicalDeviceSurfaceCapabilities2EXT,                                                  getPhysicalDeviceSurfaceCapabilities2EXT),
        VK_NULL_FUNC_ENTRY(vkCreateDebugUtilsMessengerEXT,                                                                              createDebugUtilsMessengerEXT),
@@ -2804,14 +2986,6 @@ static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkGetShaderInfoAMD,                                                                  getShaderInfoAMD),
        VK_NULL_FUNC_ENTRY(vkCmdBeginConditionalRenderingEXT,                                   cmdBeginConditionalRenderingEXT),
        VK_NULL_FUNC_ENTRY(vkCmdEndConditionalRenderingEXT,                                             cmdEndConditionalRenderingEXT),
-       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(vkCmdSetViewportWScalingNV,                                                  cmdSetViewportWScalingNV),
        VK_NULL_FUNC_ENTRY(vkDisplayPowerControlEXT,                                                    displayPowerControlEXT),
        VK_NULL_FUNC_ENTRY(vkRegisterDeviceEventEXT,                                                    registerDeviceEventEXT),
@@ -2839,15 +3013,19 @@ static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkCmdSetViewportShadingRatePaletteNV,                                cmdSetViewportShadingRatePaletteNV),
        VK_NULL_FUNC_ENTRY(vkCmdSetCoarseSampleOrderNV,                                                 cmdSetCoarseSampleOrderNV),
        VK_NULL_FUNC_ENTRY(vkCreateAccelerationStructureNV,                                             createAccelerationStructureNV),
+       VK_NULL_FUNC_ENTRY(vkDestroyAccelerationStructureKHR,                                   destroyAccelerationStructureKHR),
        VK_NULL_FUNC_ENTRY(vkDestroyAccelerationStructureNV,                                    destroyAccelerationStructureNV),
        VK_NULL_FUNC_ENTRY(vkGetAccelerationStructureMemoryRequirementsNV,              getAccelerationStructureMemoryRequirementsNV),
+       VK_NULL_FUNC_ENTRY(vkBindAccelerationStructureMemoryKHR,                                bindAccelerationStructureMemoryKHR),
        VK_NULL_FUNC_ENTRY(vkBindAccelerationStructureMemoryNV,                                 bindAccelerationStructureMemoryNV),
        VK_NULL_FUNC_ENTRY(vkCmdBuildAccelerationStructureNV,                                   cmdBuildAccelerationStructureNV),
        VK_NULL_FUNC_ENTRY(vkCmdCopyAccelerationStructureNV,                                    cmdCopyAccelerationStructureNV),
        VK_NULL_FUNC_ENTRY(vkCmdTraceRaysNV,                                                                    cmdTraceRaysNV),
        VK_NULL_FUNC_ENTRY(vkCreateRayTracingPipelinesNV,                                               createRayTracingPipelinesNV),
+       VK_NULL_FUNC_ENTRY(vkGetRayTracingShaderGroupHandlesKHR,                                getRayTracingShaderGroupHandlesKHR),
        VK_NULL_FUNC_ENTRY(vkGetRayTracingShaderGroupHandlesNV,                                 getRayTracingShaderGroupHandlesNV),
        VK_NULL_FUNC_ENTRY(vkGetAccelerationStructureHandleNV,                                  getAccelerationStructureHandleNV),
+       VK_NULL_FUNC_ENTRY(vkCmdWriteAccelerationStructuresPropertiesKHR,               cmdWriteAccelerationStructuresPropertiesKHR),
        VK_NULL_FUNC_ENTRY(vkCmdWriteAccelerationStructuresPropertiesNV,                cmdWriteAccelerationStructuresPropertiesNV),
        VK_NULL_FUNC_ENTRY(vkCompileDeferredNV,                                                                 compileDeferredNV),
        VK_NULL_FUNC_ENTRY(vkGetMemoryHostPointerPropertiesEXT,                                 getMemoryHostPointerPropertiesEXT),
@@ -2872,8 +3050,37 @@ static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkGetBufferDeviceAddressEXT,                                                 getBufferDeviceAddressEXT),
        VK_NULL_FUNC_ENTRY(vkCmdSetLineStippleEXT,                                                              cmdSetLineStippleEXT),
        VK_NULL_FUNC_ENTRY(vkResetQueryPoolEXT,                                                                 resetQueryPool),
+       VK_NULL_FUNC_ENTRY(vkGetGeneratedCommandsMemoryRequirementsNV,                  getGeneratedCommandsMemoryRequirementsNV),
+       VK_NULL_FUNC_ENTRY(vkCmdPreprocessGeneratedCommandsNV,                                  cmdPreprocessGeneratedCommandsNV),
+       VK_NULL_FUNC_ENTRY(vkCmdExecuteGeneratedCommandsNV,                                             cmdExecuteGeneratedCommandsNV),
+       VK_NULL_FUNC_ENTRY(vkCmdBindPipelineShaderGroupNV,                                              cmdBindPipelineShaderGroupNV),
+       VK_NULL_FUNC_ENTRY(vkCreateIndirectCommandsLayoutNV,                                    createIndirectCommandsLayoutNV),
+       VK_NULL_FUNC_ENTRY(vkDestroyIndirectCommandsLayoutNV,                                   destroyIndirectCommandsLayoutNV),
        VK_NULL_FUNC_ENTRY(vkGetAndroidHardwareBufferPropertiesANDROID,                 getAndroidHardwareBufferPropertiesANDROID),
        VK_NULL_FUNC_ENTRY(vkGetMemoryAndroidHardwareBufferANDROID,                             getMemoryAndroidHardwareBufferANDROID),
+       VK_NULL_FUNC_ENTRY(vkCreateDeferredOperationKHR,                                                createDeferredOperationKHR),
+       VK_NULL_FUNC_ENTRY(vkDestroyDeferredOperationKHR,                                               destroyDeferredOperationKHR),
+       VK_NULL_FUNC_ENTRY(vkGetDeferredOperationMaxConcurrencyKHR,                             getDeferredOperationMaxConcurrencyKHR),
+       VK_NULL_FUNC_ENTRY(vkGetDeferredOperationResultKHR,                                             getDeferredOperationResultKHR),
+       VK_NULL_FUNC_ENTRY(vkDeferredOperationJoinKHR,                                                  deferredOperationJoinKHR),
+       VK_NULL_FUNC_ENTRY(vkCreateAccelerationStructureKHR,                                    createAccelerationStructureKHR),
+       VK_NULL_FUNC_ENTRY(vkGetAccelerationStructureMemoryRequirementsKHR,             getAccelerationStructureMemoryRequirementsKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdBuildAccelerationStructureKHR,                                  cmdBuildAccelerationStructureKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdBuildAccelerationStructureIndirectKHR,                  cmdBuildAccelerationStructureIndirectKHR),
+       VK_NULL_FUNC_ENTRY(vkBuildAccelerationStructureKHR,                                             buildAccelerationStructureKHR),
+       VK_NULL_FUNC_ENTRY(vkCopyAccelerationStructureKHR,                                              copyAccelerationStructureKHR),
+       VK_NULL_FUNC_ENTRY(vkCopyAccelerationStructureToMemoryKHR,                              copyAccelerationStructureToMemoryKHR),
+       VK_NULL_FUNC_ENTRY(vkCopyMemoryToAccelerationStructureKHR,                              copyMemoryToAccelerationStructureKHR),
+       VK_NULL_FUNC_ENTRY(vkWriteAccelerationStructuresPropertiesKHR,                  writeAccelerationStructuresPropertiesKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdCopyAccelerationStructureKHR,                                   cmdCopyAccelerationStructureKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdCopyAccelerationStructureToMemoryKHR,                   cmdCopyAccelerationStructureToMemoryKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdCopyMemoryToAccelerationStructureKHR,                   cmdCopyMemoryToAccelerationStructureKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdTraceRaysKHR,                                                                   cmdTraceRaysKHR),
+       VK_NULL_FUNC_ENTRY(vkCreateRayTracingPipelinesKHR,                                              createRayTracingPipelinesKHR),
+       VK_NULL_FUNC_ENTRY(vkGetAccelerationStructureDeviceAddressKHR,                  getAccelerationStructureDeviceAddressKHR),
+       VK_NULL_FUNC_ENTRY(vkGetRayTracingCaptureReplayShaderGroupHandlesKHR,   getRayTracingCaptureReplayShaderGroupHandlesKHR),
+       VK_NULL_FUNC_ENTRY(vkCmdTraceRaysIndirectKHR,                                                   cmdTraceRaysIndirectKHR),
+       VK_NULL_FUNC_ENTRY(vkGetDeviceAccelerationStructureCompatibilityKHR,    getDeviceAccelerationStructureCompatibilityKHR),
        VK_NULL_FUNC_ENTRY(vkGetMemoryWin32HandleKHR,                                                   getMemoryWin32HandleKHR),
        VK_NULL_FUNC_ENTRY(vkGetMemoryWin32HandlePropertiesKHR,                                 getMemoryWin32HandlePropertiesKHR),
        VK_NULL_FUNC_ENTRY(vkImportSemaphoreWin32HandleKHR,                                             importSemaphoreWin32HandleKHR),
index 921adc7..ba5b708 100644 (file)
@@ -28,13 +28,14 @@ Move<VkSwapchainKHR>                                createSwapchainKHR                                      (const DeviceInterface& vk, VkDev
 Move<VkSurfaceKHR>                                     createDisplayPlaneSurfaceKHR            (const InstanceInterface& vk, VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkSwapchainKHR>                           createSharedSwapchainsKHR                       (const DeviceInterface& vk, VkDevice device, deUint32 swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, 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<VkDebugUtilsMessengerEXT>         createDebugUtilsMessengerEXT            (const InstanceInterface& vk, VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkValidationCacheEXT>                     createValidationCacheEXT                        (const DeviceInterface& vk, VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkAccelerationStructureNV>                createAccelerationStructureNV           (const DeviceInterface& vk, VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkSurfaceKHR>                                     createHeadlessSurfaceEXT                        (const InstanceInterface& vk, VkInstance instance, const VkHeadlessSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
+Move<VkIndirectCommandsLayoutNV>       createIndirectCommandsLayoutNV          (const DeviceInterface& vk, VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkSurfaceKHR>                                     createAndroidSurfaceKHR                         (const InstanceInterface& vk, VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
+Move<VkDeferredOperationKHR>           createDeferredOperationKHR                      (const DeviceInterface& vk, VkDevice device, const VkAllocationCallbacks* pAllocator = DE_NULL);
+Move<VkAccelerationStructureKHR>       createAccelerationStructureKHR          (const DeviceInterface& vk, VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkSurfaceKHR>                                     createImagePipeSurfaceFUCHSIA           (const InstanceInterface& vk, VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkSurfaceKHR>                                     createStreamDescriptorSurfaceGGP        (const InstanceInterface& vk, VkInstance instance, const VkStreamDescriptorSurfaceCreateInfoGGP* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
 Move<VkSurfaceKHR>                                     createIOSSurfaceMVK                                     (const InstanceInterface& vk, VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
index 6eb0c48..2ae43fc 100644 (file)
@@ -137,27 +137,33 @@ void Deleter<VkSwapchainKHR>::operator() (VkSwapchainKHR obj) const
 }
 
 template<>
-void Deleter<VkIndirectCommandsLayoutNVX>::operator() (VkIndirectCommandsLayoutNVX obj) const
+void Deleter<VkValidationCacheEXT>::operator() (VkValidationCacheEXT obj) const
 {
-       m_deviceIface->destroyIndirectCommandsLayoutNVX(m_device, obj, m_allocator);
+       m_deviceIface->destroyValidationCacheEXT(m_device, obj, m_allocator);
 }
 
 template<>
-void Deleter<VkObjectTableNVX>::operator() (VkObjectTableNVX obj) const
+void Deleter<VkAccelerationStructureKHR>::operator() (VkAccelerationStructureKHR obj) const
 {
-       m_deviceIface->destroyObjectTableNVX(m_device, obj, m_allocator);
+       m_deviceIface->destroyAccelerationStructureKHR(m_device, obj, m_allocator);
 }
 
 template<>
-void Deleter<VkValidationCacheEXT>::operator() (VkValidationCacheEXT obj) const
+void Deleter<VkAccelerationStructureNV>::operator() (VkAccelerationStructureNV obj) const
 {
-       m_deviceIface->destroyValidationCacheEXT(m_device, obj, m_allocator);
+       m_deviceIface->destroyAccelerationStructureNV(m_device, obj, m_allocator);
 }
 
 template<>
-void Deleter<VkAccelerationStructureNV>::operator() (VkAccelerationStructureNV obj) const
+void Deleter<VkIndirectCommandsLayoutNV>::operator() (VkIndirectCommandsLayoutNV obj) const
 {
-       m_deviceIface->destroyAccelerationStructureNV(m_device, obj, m_allocator);
+       m_deviceIface->destroyIndirectCommandsLayoutNV(m_device, obj, m_allocator);
+}
+
+template<>
+void Deleter<VkDeferredOperationKHR>::operator() (VkDeferredOperationKHR obj) const
+{
+       m_deviceIface->destroyDeferredOperationKHR(m_device, obj, m_allocator);
 }
 
 } // refdetails
@@ -351,20 +357,6 @@ Move<VkDebugReportCallbackEXT> createDebugReportCallbackEXT (const InstanceInter
        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<VkDebugUtilsMessengerEXT> createDebugUtilsMessengerEXT (const InstanceInterface& vk, VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
 {
        VkDebugUtilsMessengerEXT object = 0;
@@ -393,6 +385,13 @@ Move<VkSurfaceKHR> createHeadlessSurfaceEXT (const InstanceInterface& vk, VkInst
        return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
 }
 
+Move<VkIndirectCommandsLayoutNV> createIndirectCommandsLayoutNV (const DeviceInterface& vk, VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator)
+{
+       VkIndirectCommandsLayoutNV object = 0;
+       VK_CHECK(vk.createIndirectCommandsLayoutNV(device, pCreateInfo, pAllocator, &object));
+       return Move<VkIndirectCommandsLayoutNV>(check<VkIndirectCommandsLayoutNV>(object), Deleter<VkIndirectCommandsLayoutNV>(vk, device, pAllocator));
+}
+
 Move<VkSurfaceKHR> createAndroidSurfaceKHR (const InstanceInterface& vk, VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
 {
        VkSurfaceKHR object = 0;
@@ -400,6 +399,20 @@ Move<VkSurfaceKHR> createAndroidSurfaceKHR (const InstanceInterface& vk, VkInsta
        return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
 }
 
+Move<VkDeferredOperationKHR> createDeferredOperationKHR (const DeviceInterface& vk, VkDevice device, const VkAllocationCallbacks* pAllocator)
+{
+       VkDeferredOperationKHR object = 0;
+       VK_CHECK(vk.createDeferredOperationKHR(device, pAllocator, &object));
+       return Move<VkDeferredOperationKHR>(check<VkDeferredOperationKHR>(object), Deleter<VkDeferredOperationKHR>(vk, device, pAllocator));
+}
+
+Move<VkAccelerationStructureKHR> createAccelerationStructureKHR (const DeviceInterface& vk, VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
+{
+       VkAccelerationStructureKHR object = 0;
+       VK_CHECK(vk.createAccelerationStructureKHR(device, pCreateInfo, pAllocator, &object));
+       return Move<VkAccelerationStructureKHR>(check<VkAccelerationStructureKHR>(object), Deleter<VkAccelerationStructureKHR>(vk, device, pAllocator));
+}
+
 Move<VkSurfaceKHR> createImagePipeSurfaceFUCHSIA (const InstanceInterface& vk, VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator)
 {
        VkSurfaceKHR object = 0;
index 295a019..0e380ec 100644 (file)
@@ -58,8 +58,6 @@ const char*   getDebugReportObjectTypeEXTName                                                 (VkDebugReportObjectTypeEXT va
 const char*    getRasterizationOrderAMDName                                                    (VkRasterizationOrderAMD value);
 const char*    getShaderInfoTypeAMDName                                                                (VkShaderInfoTypeAMD value);
 const char*    getValidationCheckEXTName                                                               (VkValidationCheckEXT value);
-const char*    getIndirectCommandsTokenTypeNVXName                                             (VkIndirectCommandsTokenTypeNVX value);
-const char*    getObjectEntryTypeNVXName                                                               (VkObjectEntryTypeNVX value);
 const char*    getDisplayPowerStateEXTName                                                             (VkDisplayPowerStateEXT value);
 const char*    getDeviceEventTypeEXTName                                                               (VkDeviceEventTypeEXT value);
 const char*    getDisplayEventTypeEXTName                                                              (VkDisplayEventTypeEXT value);
@@ -71,11 +69,11 @@ const char* getCoverageModulationModeNVName                                                 (VkCoverageModulationModeNV va
 const char*    getValidationCacheHeaderVersionEXTName                                  (VkValidationCacheHeaderVersionEXT value);
 const char*    getShadingRatePaletteEntryNVName                                                (VkShadingRatePaletteEntryNV value);
 const char*    getCoarseSampleOrderTypeNVName                                                  (VkCoarseSampleOrderTypeNV value);
-const char*    getAccelerationStructureTypeNVName                                              (VkAccelerationStructureTypeNV value);
-const char*    getRayTracingShaderGroupTypeNVName                                              (VkRayTracingShaderGroupTypeNV value);
-const char*    getGeometryTypeNVName                                                                   (VkGeometryTypeNV value);
-const char*    getCopyAccelerationStructureModeNVName                                  (VkCopyAccelerationStructureModeNV value);
-const char*    getAccelerationStructureMemoryRequirementsTypeNVName    (VkAccelerationStructureMemoryRequirementsTypeNV value);
+const char*    getRayTracingShaderGroupTypeKHRName                                             (VkRayTracingShaderGroupTypeKHR value);
+const char*    getGeometryTypeKHRName                                                                  (VkGeometryTypeKHR value);
+const char*    getAccelerationStructureTypeKHRName                                             (VkAccelerationStructureTypeKHR value);
+const char*    getCopyAccelerationStructureModeKHRName                                 (VkCopyAccelerationStructureModeKHR value);
+const char*    getAccelerationStructureMemoryRequirementsTypeKHRName   (VkAccelerationStructureMemoryRequirementsTypeKHR value);
 const char*    getQueueGlobalPriorityEXTName                                                   (VkQueueGlobalPriorityEXT value);
 const char*    getTimeDomainEXTName                                                                    (VkTimeDomainEXT value);
 const char*    getMemoryOverallocationBehaviorAMDName                                  (VkMemoryOverallocationBehaviorAMD value);
@@ -90,98 +88,100 @@ const char*        getComponentTypeNVName                                                                  (VkComponentTypeNV value);
 const char*    getScopeNVName                                                                                  (VkScopeNV value);
 const char*    getCoverageReductionModeNVName                                                  (VkCoverageReductionModeNV value);
 const char*    getLineRasterizationModeEXTName                                                 (VkLineRasterizationModeEXT value);
+const char*    getIndirectCommandsTokenTypeNVName                                              (VkIndirectCommandsTokenTypeNV value);
+const char*    getAccelerationStructureBuildTypeKHRName                                (VkAccelerationStructureBuildTypeKHR value);
 const char*    getFullScreenExclusiveEXTName                                                   (VkFullScreenExclusiveEXT 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);                                                                                                                                                                     }
-inline tcu::Format::Enum<VkStructureType>                                                                      getStructureTypeStr                                                                     (VkStructureType value)                                                                 { return tcu::Format::Enum<VkStructureType>(getStructureTypeName, value);                                                                                                                                       }
-inline tcu::Format::Enum<VkSystemAllocationScope>                                                      getSystemAllocationScopeStr                                                     (VkSystemAllocationScope value)                                                 { return tcu::Format::Enum<VkSystemAllocationScope>(getSystemAllocationScopeName, value);                                                                                                       }
-inline tcu::Format::Enum<VkInternalAllocationType>                                                     getInternalAllocationTypeStr                                            (VkInternalAllocationType value)                                                { return tcu::Format::Enum<VkInternalAllocationType>(getInternalAllocationTypeName, value);                                                                                                     }
-inline tcu::Format::Enum<VkFormat>                                                                                     getFormatStr                                                                            (VkFormat value)                                                                                { return tcu::Format::Enum<VkFormat>(getFormatName, value);                                                                                                                                                                     }
-inline tcu::Format::Enum<VkImageType>                                                                          getImageTypeStr                                                                         (VkImageType value)                                                                             { return tcu::Format::Enum<VkImageType>(getImageTypeName, value);                                                                                                                                                       }
-inline tcu::Format::Enum<VkImageTiling>                                                                                getImageTilingStr                                                                       (VkImageTiling value)                                                                   { return tcu::Format::Enum<VkImageTiling>(getImageTilingName, value);                                                                                                                                           }
-inline tcu::Format::Enum<VkPhysicalDeviceType>                                                         getPhysicalDeviceTypeStr                                                        (VkPhysicalDeviceType value)                                                    { return tcu::Format::Enum<VkPhysicalDeviceType>(getPhysicalDeviceTypeName, value);                                                                                                                     }
-inline tcu::Format::Enum<VkQueryType>                                                                          getQueryTypeStr                                                                         (VkQueryType value)                                                                             { return tcu::Format::Enum<VkQueryType>(getQueryTypeName, value);                                                                                                                                                       }
-inline tcu::Format::Enum<VkSharingMode>                                                                                getSharingModeStr                                                                       (VkSharingMode value)                                                                   { return tcu::Format::Enum<VkSharingMode>(getSharingModeName, value);                                                                                                                                           }
-inline tcu::Format::Enum<VkImageLayout>                                                                                getImageLayoutStr                                                                       (VkImageLayout value)                                                                   { return tcu::Format::Enum<VkImageLayout>(getImageLayoutName, value);                                                                                                                                           }
-inline tcu::Format::Enum<VkImageViewType>                                                                      getImageViewTypeStr                                                                     (VkImageViewType value)                                                                 { return tcu::Format::Enum<VkImageViewType>(getImageViewTypeName, value);                                                                                                                                       }
-inline tcu::Format::Enum<VkComponentSwizzle>                                                           getComponentSwizzleStr                                                          (VkComponentSwizzle value)                                                              { return tcu::Format::Enum<VkComponentSwizzle>(getComponentSwizzleName, value);                                                                                                                         }
-inline tcu::Format::Enum<VkVertexInputRate>                                                                    getVertexInputRateStr                                                           (VkVertexInputRate value)                                                               { return tcu::Format::Enum<VkVertexInputRate>(getVertexInputRateName, value);                                                                                                                           }
-inline tcu::Format::Enum<VkPrimitiveTopology>                                                          getPrimitiveTopologyStr                                                         (VkPrimitiveTopology value)                                                             { return tcu::Format::Enum<VkPrimitiveTopology>(getPrimitiveTopologyName, value);                                                                                                                       }
-inline tcu::Format::Enum<VkPolygonMode>                                                                                getPolygonModeStr                                                                       (VkPolygonMode value)                                                                   { return tcu::Format::Enum<VkPolygonMode>(getPolygonModeName, value);                                                                                                                                           }
-inline tcu::Format::Enum<VkFrontFace>                                                                          getFrontFaceStr                                                                         (VkFrontFace value)                                                                             { return tcu::Format::Enum<VkFrontFace>(getFrontFaceName, value);                                                                                                                                                       }
-inline tcu::Format::Enum<VkCompareOp>                                                                          getCompareOpStr                                                                         (VkCompareOp value)                                                                             { return tcu::Format::Enum<VkCompareOp>(getCompareOpName, value);                                                                                                                                                       }
-inline tcu::Format::Enum<VkStencilOp>                                                                          getStencilOpStr                                                                         (VkStencilOp value)                                                                             { return tcu::Format::Enum<VkStencilOp>(getStencilOpName, value);                                                                                                                                                       }
-inline tcu::Format::Enum<VkLogicOp>                                                                                    getLogicOpStr                                                                           (VkLogicOp value)                                                                               { return tcu::Format::Enum<VkLogicOp>(getLogicOpName, value);                                                                                                                                                           }
-inline tcu::Format::Enum<VkBlendFactor>                                                                                getBlendFactorStr                                                                       (VkBlendFactor value)                                                                   { return tcu::Format::Enum<VkBlendFactor>(getBlendFactorName, value);                                                                                                                                           }
-inline tcu::Format::Enum<VkBlendOp>                                                                                    getBlendOpStr                                                                           (VkBlendOp value)                                                                               { return tcu::Format::Enum<VkBlendOp>(getBlendOpName, value);                                                                                                                                                           }
-inline tcu::Format::Enum<VkDynamicState>                                                                       getDynamicStateStr                                                                      (VkDynamicState value)                                                                  { return tcu::Format::Enum<VkDynamicState>(getDynamicStateName, value);                                                                                                                                         }
-inline tcu::Format::Enum<VkFilter>                                                                                     getFilterStr                                                                            (VkFilter value)                                                                                { return tcu::Format::Enum<VkFilter>(getFilterName, value);                                                                                                                                                                     }
-inline tcu::Format::Enum<VkSamplerMipmapMode>                                                          getSamplerMipmapModeStr                                                         (VkSamplerMipmapMode value)                                                             { return tcu::Format::Enum<VkSamplerMipmapMode>(getSamplerMipmapModeName, value);                                                                                                                       }
-inline tcu::Format::Enum<VkSamplerAddressMode>                                                         getSamplerAddressModeStr                                                        (VkSamplerAddressMode value)                                                    { return tcu::Format::Enum<VkSamplerAddressMode>(getSamplerAddressModeName, value);                                                                                                                     }
-inline tcu::Format::Enum<VkBorderColor>                                                                                getBorderColorStr                                                                       (VkBorderColor value)                                                                   { return tcu::Format::Enum<VkBorderColor>(getBorderColorName, value);                                                                                                                                           }
-inline tcu::Format::Enum<VkDescriptorType>                                                                     getDescriptorTypeStr                                                            (VkDescriptorType value)                                                                { return tcu::Format::Enum<VkDescriptorType>(getDescriptorTypeName, value);                                                                                                                                     }
-inline tcu::Format::Enum<VkAttachmentLoadOp>                                                           getAttachmentLoadOpStr                                                          (VkAttachmentLoadOp value)                                                              { return tcu::Format::Enum<VkAttachmentLoadOp>(getAttachmentLoadOpName, value);                                                                                                                         }
-inline tcu::Format::Enum<VkAttachmentStoreOp>                                                          getAttachmentStoreOpStr                                                         (VkAttachmentStoreOp value)                                                             { return tcu::Format::Enum<VkAttachmentStoreOp>(getAttachmentStoreOpName, value);                                                                                                                       }
-inline tcu::Format::Enum<VkPipelineBindPoint>                                                          getPipelineBindPointStr                                                         (VkPipelineBindPoint value)                                                             { return tcu::Format::Enum<VkPipelineBindPoint>(getPipelineBindPointName, value);                                                                                                                       }
-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<VkVendorId>                                                                           getVendorIdStr                                                                          (VkVendorId value)                                                                              { return tcu::Format::Enum<VkVendorId>(getVendorIdName, value);                                                                                                                                                         }
-inline tcu::Format::Enum<VkPointClippingBehavior>                                                      getPointClippingBehaviorStr                                                     (VkPointClippingBehavior value)                                                 { return tcu::Format::Enum<VkPointClippingBehavior>(getPointClippingBehaviorName, value);                                                                                                       }
-inline tcu::Format::Enum<VkTessellationDomainOrigin>                                           getTessellationDomainOriginStr                                          (VkTessellationDomainOrigin value)                                              { return tcu::Format::Enum<VkTessellationDomainOrigin>(getTessellationDomainOriginName, value);                                                                                         }
-inline tcu::Format::Enum<VkSamplerYcbcrModelConversion>                                                getSamplerYcbcrModelConversionStr                                       (VkSamplerYcbcrModelConversion value)                                   { return tcu::Format::Enum<VkSamplerYcbcrModelConversion>(getSamplerYcbcrModelConversionName, value);                                                                           }
-inline tcu::Format::Enum<VkSamplerYcbcrRange>                                                          getSamplerYcbcrRangeStr                                                         (VkSamplerYcbcrRange value)                                                             { return tcu::Format::Enum<VkSamplerYcbcrRange>(getSamplerYcbcrRangeName, value);                                                                                                                       }
-inline tcu::Format::Enum<VkChromaLocation>                                                                     getChromaLocationStr                                                            (VkChromaLocation value)                                                                { return tcu::Format::Enum<VkChromaLocation>(getChromaLocationName, value);                                                                                                                                     }
-inline tcu::Format::Enum<VkDescriptorUpdateTemplateType>                                       getDescriptorUpdateTemplateTypeStr                                      (VkDescriptorUpdateTemplateType value)                                  { return tcu::Format::Enum<VkDescriptorUpdateTemplateType>(getDescriptorUpdateTemplateTypeName, value);                                                                         }
-inline tcu::Format::Enum<VkDriverId>                                                                           getDriverIdStr                                                                          (VkDriverId value)                                                                              { return tcu::Format::Enum<VkDriverId>(getDriverIdName, value);                                                                                                                                                         }
-inline tcu::Format::Enum<VkShaderFloatControlsIndependence>                                    getShaderFloatControlsIndependenceStr                           (VkShaderFloatControlsIndependence value)                               { return tcu::Format::Enum<VkShaderFloatControlsIndependence>(getShaderFloatControlsIndependenceName, value);                                                           }
-inline tcu::Format::Enum<VkSamplerReductionMode>                                                       getSamplerReductionModeStr                                                      (VkSamplerReductionMode value)                                                  { return tcu::Format::Enum<VkSamplerReductionMode>(getSamplerReductionModeName, value);                                                                                                         }
-inline tcu::Format::Enum<VkSemaphoreType>                                                                      getSemaphoreTypeStr                                                                     (VkSemaphoreType value)                                                                 { return tcu::Format::Enum<VkSemaphoreType>(getSemaphoreTypeName, 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<VkPerformanceCounterUnitKHR>                                          getPerformanceCounterUnitKHRStr                                         (VkPerformanceCounterUnitKHR value)                                             { return tcu::Format::Enum<VkPerformanceCounterUnitKHR>(getPerformanceCounterUnitKHRName, value);                                                                                       }
-inline tcu::Format::Enum<VkPerformanceCounterScopeKHR>                                         getPerformanceCounterScopeKHRStr                                        (VkPerformanceCounterScopeKHR value)                                    { return tcu::Format::Enum<VkPerformanceCounterScopeKHR>(getPerformanceCounterScopeKHRName, value);                                                                                     }
-inline tcu::Format::Enum<VkPerformanceCounterStorageKHR>                                       getPerformanceCounterStorageKHRStr                                      (VkPerformanceCounterStorageKHR value)                                  { return tcu::Format::Enum<VkPerformanceCounterStorageKHR>(getPerformanceCounterStorageKHRName, value);                                                                         }
-inline tcu::Format::Enum<VkPipelineExecutableStatisticFormatKHR>                       getPipelineExecutableStatisticFormatKHRStr                      (VkPipelineExecutableStatisticFormatKHR value)                  { return tcu::Format::Enum<VkPipelineExecutableStatisticFormatKHR>(getPipelineExecutableStatisticFormatKHRName, value);                                         }
-inline tcu::Format::Enum<VkDebugReportObjectTypeEXT>                                           getDebugReportObjectTypeEXTStr                                          (VkDebugReportObjectTypeEXT value)                                              { return tcu::Format::Enum<VkDebugReportObjectTypeEXT>(getDebugReportObjectTypeEXTName, value);                                                                                         }
-inline tcu::Format::Enum<VkRasterizationOrderAMD>                                                      getRasterizationOrderAMDStr                                                     (VkRasterizationOrderAMD value)                                                 { return tcu::Format::Enum<VkRasterizationOrderAMD>(getRasterizationOrderAMDName, value);                                                                                                       }
-inline tcu::Format::Enum<VkShaderInfoTypeAMD>                                                          getShaderInfoTypeAMDStr                                                         (VkShaderInfoTypeAMD value)                                                             { return tcu::Format::Enum<VkShaderInfoTypeAMD>(getShaderInfoTypeAMDName, 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<VkDisplayPowerStateEXT>                                                       getDisplayPowerStateEXTStr                                                      (VkDisplayPowerStateEXT value)                                                  { return tcu::Format::Enum<VkDisplayPowerStateEXT>(getDisplayPowerStateEXTName, value);                                                                                                         }
-inline tcu::Format::Enum<VkDeviceEventTypeEXT>                                                         getDeviceEventTypeEXTStr                                                        (VkDeviceEventTypeEXT value)                                                    { return tcu::Format::Enum<VkDeviceEventTypeEXT>(getDeviceEventTypeEXTName, value);                                                                                                                     }
-inline tcu::Format::Enum<VkDisplayEventTypeEXT>                                                                getDisplayEventTypeEXTStr                                                       (VkDisplayEventTypeEXT value)                                                   { return tcu::Format::Enum<VkDisplayEventTypeEXT>(getDisplayEventTypeEXTName, value);                                                                                                           }
-inline tcu::Format::Enum<VkViewportCoordinateSwizzleNV>                                                getViewportCoordinateSwizzleNVStr                                       (VkViewportCoordinateSwizzleNV value)                                   { return tcu::Format::Enum<VkViewportCoordinateSwizzleNV>(getViewportCoordinateSwizzleNVName, value);                                                                           }
-inline tcu::Format::Enum<VkDiscardRectangleModeEXT>                                                    getDiscardRectangleModeEXTStr                                           (VkDiscardRectangleModeEXT value)                                               { return tcu::Format::Enum<VkDiscardRectangleModeEXT>(getDiscardRectangleModeEXTName, value);                                                                                           }
-inline tcu::Format::Enum<VkConservativeRasterizationModeEXT>                           getConservativeRasterizationModeEXTStr                          (VkConservativeRasterizationModeEXT value)                              { return tcu::Format::Enum<VkConservativeRasterizationModeEXT>(getConservativeRasterizationModeEXTName, value);                                                         }
-inline tcu::Format::Enum<VkBlendOverlapEXT>                                                                    getBlendOverlapEXTStr                                                           (VkBlendOverlapEXT value)                                                               { return tcu::Format::Enum<VkBlendOverlapEXT>(getBlendOverlapEXTName, value);                                                                                                                           }
-inline tcu::Format::Enum<VkCoverageModulationModeNV>                                           getCoverageModulationModeNVStr                                          (VkCoverageModulationModeNV value)                                              { return tcu::Format::Enum<VkCoverageModulationModeNV>(getCoverageModulationModeNVName, value);                                                                                         }
-inline tcu::Format::Enum<VkValidationCacheHeaderVersionEXT>                                    getValidationCacheHeaderVersionEXTStr                           (VkValidationCacheHeaderVersionEXT value)                               { return tcu::Format::Enum<VkValidationCacheHeaderVersionEXT>(getValidationCacheHeaderVersionEXTName, value);                                                           }
-inline tcu::Format::Enum<VkShadingRatePaletteEntryNV>                                          getShadingRatePaletteEntryNVStr                                         (VkShadingRatePaletteEntryNV value)                                             { return tcu::Format::Enum<VkShadingRatePaletteEntryNV>(getShadingRatePaletteEntryNVName, value);                                                                                       }
-inline tcu::Format::Enum<VkCoarseSampleOrderTypeNV>                                                    getCoarseSampleOrderTypeNVStr                                           (VkCoarseSampleOrderTypeNV value)                                               { return tcu::Format::Enum<VkCoarseSampleOrderTypeNV>(getCoarseSampleOrderTypeNVName, value);                                                                                           }
-inline tcu::Format::Enum<VkAccelerationStructureTypeNV>                                                getAccelerationStructureTypeNVStr                                       (VkAccelerationStructureTypeNV value)                                   { return tcu::Format::Enum<VkAccelerationStructureTypeNV>(getAccelerationStructureTypeNVName, value);                                                                           }
-inline tcu::Format::Enum<VkRayTracingShaderGroupTypeNV>                                                getRayTracingShaderGroupTypeNVStr                                       (VkRayTracingShaderGroupTypeNV value)                                   { return tcu::Format::Enum<VkRayTracingShaderGroupTypeNV>(getRayTracingShaderGroupTypeNVName, value);                                                                           }
-inline tcu::Format::Enum<VkGeometryTypeNV>                                                                     getGeometryTypeNVStr                                                            (VkGeometryTypeNV value)                                                                { return tcu::Format::Enum<VkGeometryTypeNV>(getGeometryTypeNVName, value);                                                                                                                                     }
-inline tcu::Format::Enum<VkCopyAccelerationStructureModeNV>                                    getCopyAccelerationStructureModeNVStr                           (VkCopyAccelerationStructureModeNV value)                               { return tcu::Format::Enum<VkCopyAccelerationStructureModeNV>(getCopyAccelerationStructureModeNVName, value);                                                           }
-inline tcu::Format::Enum<VkAccelerationStructureMemoryRequirementsTypeNV>      getAccelerationStructureMemoryRequirementsTypeNVStr     (VkAccelerationStructureMemoryRequirementsTypeNV value) { return tcu::Format::Enum<VkAccelerationStructureMemoryRequirementsTypeNV>(getAccelerationStructureMemoryRequirementsTypeNVName, value);       }
-inline tcu::Format::Enum<VkQueueGlobalPriorityEXT>                                                     getQueueGlobalPriorityEXTStr                                            (VkQueueGlobalPriorityEXT value)                                                { return tcu::Format::Enum<VkQueueGlobalPriorityEXT>(getQueueGlobalPriorityEXTName, value);                                                                                                     }
-inline tcu::Format::Enum<VkTimeDomainEXT>                                                                      getTimeDomainEXTStr                                                                     (VkTimeDomainEXT value)                                                                 { return tcu::Format::Enum<VkTimeDomainEXT>(getTimeDomainEXTName, value);                                                                                                                                       }
-inline tcu::Format::Enum<VkMemoryOverallocationBehaviorAMD>                                    getMemoryOverallocationBehaviorAMDStr                           (VkMemoryOverallocationBehaviorAMD value)                               { return tcu::Format::Enum<VkMemoryOverallocationBehaviorAMD>(getMemoryOverallocationBehaviorAMDName, value);                                                           }
-inline tcu::Format::Enum<VkPerformanceConfigurationTypeINTEL>                          getPerformanceConfigurationTypeINTELStr                         (VkPerformanceConfigurationTypeINTEL value)                             { return tcu::Format::Enum<VkPerformanceConfigurationTypeINTEL>(getPerformanceConfigurationTypeINTELName, value);                                                       }
-inline tcu::Format::Enum<VkQueryPoolSamplingModeINTEL>                                         getQueryPoolSamplingModeINTELStr                                        (VkQueryPoolSamplingModeINTEL value)                                    { return tcu::Format::Enum<VkQueryPoolSamplingModeINTEL>(getQueryPoolSamplingModeINTELName, value);                                                                                     }
-inline tcu::Format::Enum<VkPerformanceOverrideTypeINTEL>                                       getPerformanceOverrideTypeINTELStr                                      (VkPerformanceOverrideTypeINTEL value)                                  { return tcu::Format::Enum<VkPerformanceOverrideTypeINTEL>(getPerformanceOverrideTypeINTELName, value);                                                                         }
-inline tcu::Format::Enum<VkPerformanceParameterTypeINTEL>                                      getPerformanceParameterTypeINTELStr                                     (VkPerformanceParameterTypeINTEL value)                                 { return tcu::Format::Enum<VkPerformanceParameterTypeINTEL>(getPerformanceParameterTypeINTELName, value);                                                                       }
-inline tcu::Format::Enum<VkPerformanceValueTypeINTEL>                                          getPerformanceValueTypeINTELStr                                         (VkPerformanceValueTypeINTEL value)                                             { return tcu::Format::Enum<VkPerformanceValueTypeINTEL>(getPerformanceValueTypeINTELName, value);                                                                                       }
-inline tcu::Format::Enum<VkValidationFeatureEnableEXT>                                         getValidationFeatureEnableEXTStr                                        (VkValidationFeatureEnableEXT value)                                    { return tcu::Format::Enum<VkValidationFeatureEnableEXT>(getValidationFeatureEnableEXTName, value);                                                                                     }
-inline tcu::Format::Enum<VkValidationFeatureDisableEXT>                                                getValidationFeatureDisableEXTStr                                       (VkValidationFeatureDisableEXT value)                                   { return tcu::Format::Enum<VkValidationFeatureDisableEXT>(getValidationFeatureDisableEXTName, value);                                                                           }
-inline tcu::Format::Enum<VkComponentTypeNV>                                                                    getComponentTypeNVStr                                                           (VkComponentTypeNV value)                                                               { return tcu::Format::Enum<VkComponentTypeNV>(getComponentTypeNVName, value);                                                                                                                           }
-inline tcu::Format::Enum<VkScopeNV>                                                                                    getScopeNVStr                                                                           (VkScopeNV value)                                                                               { return tcu::Format::Enum<VkScopeNV>(getScopeNVName, value);                                                                                                                                                           }
-inline tcu::Format::Enum<VkCoverageReductionModeNV>                                                    getCoverageReductionModeNVStr                                           (VkCoverageReductionModeNV value)                                               { return tcu::Format::Enum<VkCoverageReductionModeNV>(getCoverageReductionModeNVName, value);                                                                                           }
-inline tcu::Format::Enum<VkLineRasterizationModeEXT>                                           getLineRasterizationModeEXTStr                                          (VkLineRasterizationModeEXT value)                                              { return tcu::Format::Enum<VkLineRasterizationModeEXT>(getLineRasterizationModeEXTName, value);                                                                                         }
-inline tcu::Format::Enum<VkFullScreenExclusiveEXT>                                                     getFullScreenExclusiveEXTStr                                            (VkFullScreenExclusiveEXT value)                                                { return tcu::Format::Enum<VkFullScreenExclusiveEXT>(getFullScreenExclusiveEXTName, 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);                                                                                                                                                                     }
+inline tcu::Format::Enum<VkStructureType>                                                                      getStructureTypeStr                                                                             (VkStructureType value)                                                                         { return tcu::Format::Enum<VkStructureType>(getStructureTypeName, value);                                                                                                                                       }
+inline tcu::Format::Enum<VkSystemAllocationScope>                                                      getSystemAllocationScopeStr                                                             (VkSystemAllocationScope value)                                                         { return tcu::Format::Enum<VkSystemAllocationScope>(getSystemAllocationScopeName, value);                                                                                                       }
+inline tcu::Format::Enum<VkInternalAllocationType>                                                     getInternalAllocationTypeStr                                                    (VkInternalAllocationType value)                                                        { return tcu::Format::Enum<VkInternalAllocationType>(getInternalAllocationTypeName, value);                                                                                                     }
+inline tcu::Format::Enum<VkFormat>                                                                                     getFormatStr                                                                                    (VkFormat value)                                                                                        { return tcu::Format::Enum<VkFormat>(getFormatName, value);                                                                                                                                                                     }
+inline tcu::Format::Enum<VkImageType>                                                                          getImageTypeStr                                                                                 (VkImageType value)                                                                                     { return tcu::Format::Enum<VkImageType>(getImageTypeName, value);                                                                                                                                                       }
+inline tcu::Format::Enum<VkImageTiling>                                                                                getImageTilingStr                                                                               (VkImageTiling value)                                                                           { return tcu::Format::Enum<VkImageTiling>(getImageTilingName, value);                                                                                                                                           }
+inline tcu::Format::Enum<VkPhysicalDeviceType>                                                         getPhysicalDeviceTypeStr                                                                (VkPhysicalDeviceType value)                                                            { return tcu::Format::Enum<VkPhysicalDeviceType>(getPhysicalDeviceTypeName, value);                                                                                                                     }
+inline tcu::Format::Enum<VkQueryType>                                                                          getQueryTypeStr                                                                                 (VkQueryType value)                                                                                     { return tcu::Format::Enum<VkQueryType>(getQueryTypeName, value);                                                                                                                                                       }
+inline tcu::Format::Enum<VkSharingMode>                                                                                getSharingModeStr                                                                               (VkSharingMode value)                                                                           { return tcu::Format::Enum<VkSharingMode>(getSharingModeName, value);                                                                                                                                           }
+inline tcu::Format::Enum<VkImageLayout>                                                                                getImageLayoutStr                                                                               (VkImageLayout value)                                                                           { return tcu::Format::Enum<VkImageLayout>(getImageLayoutName, value);                                                                                                                                           }
+inline tcu::Format::Enum<VkImageViewType>                                                                      getImageViewTypeStr                                                                             (VkImageViewType value)                                                                         { return tcu::Format::Enum<VkImageViewType>(getImageViewTypeName, value);                                                                                                                                       }
+inline tcu::Format::Enum<VkComponentSwizzle>                                                           getComponentSwizzleStr                                                                  (VkComponentSwizzle value)                                                                      { return tcu::Format::Enum<VkComponentSwizzle>(getComponentSwizzleName, value);                                                                                                                         }
+inline tcu::Format::Enum<VkVertexInputRate>                                                                    getVertexInputRateStr                                                                   (VkVertexInputRate value)                                                                       { return tcu::Format::Enum<VkVertexInputRate>(getVertexInputRateName, value);                                                                                                                           }
+inline tcu::Format::Enum<VkPrimitiveTopology>                                                          getPrimitiveTopologyStr                                                                 (VkPrimitiveTopology value)                                                                     { return tcu::Format::Enum<VkPrimitiveTopology>(getPrimitiveTopologyName, value);                                                                                                                       }
+inline tcu::Format::Enum<VkPolygonMode>                                                                                getPolygonModeStr                                                                               (VkPolygonMode value)                                                                           { return tcu::Format::Enum<VkPolygonMode>(getPolygonModeName, value);                                                                                                                                           }
+inline tcu::Format::Enum<VkFrontFace>                                                                          getFrontFaceStr                                                                                 (VkFrontFace value)                                                                                     { return tcu::Format::Enum<VkFrontFace>(getFrontFaceName, value);                                                                                                                                                       }
+inline tcu::Format::Enum<VkCompareOp>                                                                          getCompareOpStr                                                                                 (VkCompareOp value)                                                                                     { return tcu::Format::Enum<VkCompareOp>(getCompareOpName, value);                                                                                                                                                       }
+inline tcu::Format::Enum<VkStencilOp>                                                                          getStencilOpStr                                                                                 (VkStencilOp value)                                                                                     { return tcu::Format::Enum<VkStencilOp>(getStencilOpName, value);                                                                                                                                                       }
+inline tcu::Format::Enum<VkLogicOp>                                                                                    getLogicOpStr                                                                                   (VkLogicOp value)                                                                                       { return tcu::Format::Enum<VkLogicOp>(getLogicOpName, value);                                                                                                                                                           }
+inline tcu::Format::Enum<VkBlendFactor>                                                                                getBlendFactorStr                                                                               (VkBlendFactor value)                                                                           { return tcu::Format::Enum<VkBlendFactor>(getBlendFactorName, value);                                                                                                                                           }
+inline tcu::Format::Enum<VkBlendOp>                                                                                    getBlendOpStr                                                                                   (VkBlendOp value)                                                                                       { return tcu::Format::Enum<VkBlendOp>(getBlendOpName, value);                                                                                                                                                           }
+inline tcu::Format::Enum<VkDynamicState>                                                                       getDynamicStateStr                                                                              (VkDynamicState value)                                                                          { return tcu::Format::Enum<VkDynamicState>(getDynamicStateName, value);                                                                                                                                         }
+inline tcu::Format::Enum<VkFilter>                                                                                     getFilterStr                                                                                    (VkFilter value)                                                                                        { return tcu::Format::Enum<VkFilter>(getFilterName, value);                                                                                                                                                                     }
+inline tcu::Format::Enum<VkSamplerMipmapMode>                                                          getSamplerMipmapModeStr                                                                 (VkSamplerMipmapMode value)                                                                     { return tcu::Format::Enum<VkSamplerMipmapMode>(getSamplerMipmapModeName, value);                                                                                                                       }
+inline tcu::Format::Enum<VkSamplerAddressMode>                                                         getSamplerAddressModeStr                                                                (VkSamplerAddressMode value)                                                            { return tcu::Format::Enum<VkSamplerAddressMode>(getSamplerAddressModeName, value);                                                                                                                     }
+inline tcu::Format::Enum<VkBorderColor>                                                                                getBorderColorStr                                                                               (VkBorderColor value)                                                                           { return tcu::Format::Enum<VkBorderColor>(getBorderColorName, value);                                                                                                                                           }
+inline tcu::Format::Enum<VkDescriptorType>                                                                     getDescriptorTypeStr                                                                    (VkDescriptorType value)                                                                        { return tcu::Format::Enum<VkDescriptorType>(getDescriptorTypeName, value);                                                                                                                                     }
+inline tcu::Format::Enum<VkAttachmentLoadOp>                                                           getAttachmentLoadOpStr                                                                  (VkAttachmentLoadOp value)                                                                      { return tcu::Format::Enum<VkAttachmentLoadOp>(getAttachmentLoadOpName, value);                                                                                                                         }
+inline tcu::Format::Enum<VkAttachmentStoreOp>                                                          getAttachmentStoreOpStr                                                                 (VkAttachmentStoreOp value)                                                                     { return tcu::Format::Enum<VkAttachmentStoreOp>(getAttachmentStoreOpName, value);                                                                                                                       }
+inline tcu::Format::Enum<VkPipelineBindPoint>                                                          getPipelineBindPointStr                                                                 (VkPipelineBindPoint value)                                                                     { return tcu::Format::Enum<VkPipelineBindPoint>(getPipelineBindPointName, value);                                                                                                                       }
+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<VkVendorId>                                                                           getVendorIdStr                                                                                  (VkVendorId value)                                                                                      { return tcu::Format::Enum<VkVendorId>(getVendorIdName, value);                                                                                                                                                         }
+inline tcu::Format::Enum<VkPointClippingBehavior>                                                      getPointClippingBehaviorStr                                                             (VkPointClippingBehavior value)                                                         { return tcu::Format::Enum<VkPointClippingBehavior>(getPointClippingBehaviorName, value);                                                                                                       }
+inline tcu::Format::Enum<VkTessellationDomainOrigin>                                           getTessellationDomainOriginStr                                                  (VkTessellationDomainOrigin value)                                                      { return tcu::Format::Enum<VkTessellationDomainOrigin>(getTessellationDomainOriginName, value);                                                                                         }
+inline tcu::Format::Enum<VkSamplerYcbcrModelConversion>                                                getSamplerYcbcrModelConversionStr                                               (VkSamplerYcbcrModelConversion value)                                           { return tcu::Format::Enum<VkSamplerYcbcrModelConversion>(getSamplerYcbcrModelConversionName, value);                                                                           }
+inline tcu::Format::Enum<VkSamplerYcbcrRange>                                                          getSamplerYcbcrRangeStr                                                                 (VkSamplerYcbcrRange value)                                                                     { return tcu::Format::Enum<VkSamplerYcbcrRange>(getSamplerYcbcrRangeName, value);                                                                                                                       }
+inline tcu::Format::Enum<VkChromaLocation>                                                                     getChromaLocationStr                                                                    (VkChromaLocation value)                                                                        { return tcu::Format::Enum<VkChromaLocation>(getChromaLocationName, value);                                                                                                                                     }
+inline tcu::Format::Enum<VkDescriptorUpdateTemplateType>                                       getDescriptorUpdateTemplateTypeStr                                              (VkDescriptorUpdateTemplateType value)                                          { return tcu::Format::Enum<VkDescriptorUpdateTemplateType>(getDescriptorUpdateTemplateTypeName, value);                                                                         }
+inline tcu::Format::Enum<VkDriverId>                                                                           getDriverIdStr                                                                                  (VkDriverId value)                                                                                      { return tcu::Format::Enum<VkDriverId>(getDriverIdName, value);                                                                                                                                                         }
+inline tcu::Format::Enum<VkShaderFloatControlsIndependence>                                    getShaderFloatControlsIndependenceStr                                   (VkShaderFloatControlsIndependence value)                                       { return tcu::Format::Enum<VkShaderFloatControlsIndependence>(getShaderFloatControlsIndependenceName, value);                                                           }
+inline tcu::Format::Enum<VkSamplerReductionMode>                                                       getSamplerReductionModeStr                                                              (VkSamplerReductionMode value)                                                          { return tcu::Format::Enum<VkSamplerReductionMode>(getSamplerReductionModeName, value);                                                                                                         }
+inline tcu::Format::Enum<VkSemaphoreType>                                                                      getSemaphoreTypeStr                                                                             (VkSemaphoreType value)                                                                         { return tcu::Format::Enum<VkSemaphoreType>(getSemaphoreTypeName, 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<VkPerformanceCounterUnitKHR>                                          getPerformanceCounterUnitKHRStr                                                 (VkPerformanceCounterUnitKHR value)                                                     { return tcu::Format::Enum<VkPerformanceCounterUnitKHR>(getPerformanceCounterUnitKHRName, value);                                                                                       }
+inline tcu::Format::Enum<VkPerformanceCounterScopeKHR>                                         getPerformanceCounterScopeKHRStr                                                (VkPerformanceCounterScopeKHR value)                                            { return tcu::Format::Enum<VkPerformanceCounterScopeKHR>(getPerformanceCounterScopeKHRName, value);                                                                                     }
+inline tcu::Format::Enum<VkPerformanceCounterStorageKHR>                                       getPerformanceCounterStorageKHRStr                                              (VkPerformanceCounterStorageKHR value)                                          { return tcu::Format::Enum<VkPerformanceCounterStorageKHR>(getPerformanceCounterStorageKHRName, value);                                                                         }
+inline tcu::Format::Enum<VkPipelineExecutableStatisticFormatKHR>                       getPipelineExecutableStatisticFormatKHRStr                              (VkPipelineExecutableStatisticFormatKHR value)                          { return tcu::Format::Enum<VkPipelineExecutableStatisticFormatKHR>(getPipelineExecutableStatisticFormatKHRName, value);                                         }
+inline tcu::Format::Enum<VkDebugReportObjectTypeEXT>                                           getDebugReportObjectTypeEXTStr                                                  (VkDebugReportObjectTypeEXT value)                                                      { return tcu::Format::Enum<VkDebugReportObjectTypeEXT>(getDebugReportObjectTypeEXTName, value);                                                                                         }
+inline tcu::Format::Enum<VkRasterizationOrderAMD>                                                      getRasterizationOrderAMDStr                                                             (VkRasterizationOrderAMD value)                                                         { return tcu::Format::Enum<VkRasterizationOrderAMD>(getRasterizationOrderAMDName, value);                                                                                                       }
+inline tcu::Format::Enum<VkShaderInfoTypeAMD>                                                          getShaderInfoTypeAMDStr                                                                 (VkShaderInfoTypeAMD value)                                                                     { return tcu::Format::Enum<VkShaderInfoTypeAMD>(getShaderInfoTypeAMDName, value);                                                                                                                       }
+inline tcu::Format::Enum<VkValidationCheckEXT>                                                         getValidationCheckEXTStr                                                                (VkValidationCheckEXT value)                                                            { return tcu::Format::Enum<VkValidationCheckEXT>(getValidationCheckEXTName, value);                                                                                                                     }
+inline tcu::Format::Enum<VkDisplayPowerStateEXT>                                                       getDisplayPowerStateEXTStr                                                              (VkDisplayPowerStateEXT value)                                                          { return tcu::Format::Enum<VkDisplayPowerStateEXT>(getDisplayPowerStateEXTName, value);                                                                                                         }
+inline tcu::Format::Enum<VkDeviceEventTypeEXT>                                                         getDeviceEventTypeEXTStr                                                                (VkDeviceEventTypeEXT value)                                                            { return tcu::Format::Enum<VkDeviceEventTypeEXT>(getDeviceEventTypeEXTName, value);                                                                                                                     }
+inline tcu::Format::Enum<VkDisplayEventTypeEXT>                                                                getDisplayEventTypeEXTStr                                                               (VkDisplayEventTypeEXT value)                                                           { return tcu::Format::Enum<VkDisplayEventTypeEXT>(getDisplayEventTypeEXTName, value);                                                                                                           }
+inline tcu::Format::Enum<VkViewportCoordinateSwizzleNV>                                                getViewportCoordinateSwizzleNVStr                                               (VkViewportCoordinateSwizzleNV value)                                           { return tcu::Format::Enum<VkViewportCoordinateSwizzleNV>(getViewportCoordinateSwizzleNVName, value);                                                                           }
+inline tcu::Format::Enum<VkDiscardRectangleModeEXT>                                                    getDiscardRectangleModeEXTStr                                                   (VkDiscardRectangleModeEXT value)                                                       { return tcu::Format::Enum<VkDiscardRectangleModeEXT>(getDiscardRectangleModeEXTName, value);                                                                                           }
+inline tcu::Format::Enum<VkConservativeRasterizationModeEXT>                           getConservativeRasterizationModeEXTStr                                  (VkConservativeRasterizationModeEXT value)                                      { return tcu::Format::Enum<VkConservativeRasterizationModeEXT>(getConservativeRasterizationModeEXTName, value);                                                         }
+inline tcu::Format::Enum<VkBlendOverlapEXT>                                                                    getBlendOverlapEXTStr                                                                   (VkBlendOverlapEXT value)                                                                       { return tcu::Format::Enum<VkBlendOverlapEXT>(getBlendOverlapEXTName, value);                                                                                                                           }
+inline tcu::Format::Enum<VkCoverageModulationModeNV>                                           getCoverageModulationModeNVStr                                                  (VkCoverageModulationModeNV value)                                                      { return tcu::Format::Enum<VkCoverageModulationModeNV>(getCoverageModulationModeNVName, value);                                                                                         }
+inline tcu::Format::Enum<VkValidationCacheHeaderVersionEXT>                                    getValidationCacheHeaderVersionEXTStr                                   (VkValidationCacheHeaderVersionEXT value)                                       { return tcu::Format::Enum<VkValidationCacheHeaderVersionEXT>(getValidationCacheHeaderVersionEXTName, value);                                                           }
+inline tcu::Format::Enum<VkShadingRatePaletteEntryNV>                                          getShadingRatePaletteEntryNVStr                                                 (VkShadingRatePaletteEntryNV value)                                                     { return tcu::Format::Enum<VkShadingRatePaletteEntryNV>(getShadingRatePaletteEntryNVName, value);                                                                                       }
+inline tcu::Format::Enum<VkCoarseSampleOrderTypeNV>                                                    getCoarseSampleOrderTypeNVStr                                                   (VkCoarseSampleOrderTypeNV value)                                                       { return tcu::Format::Enum<VkCoarseSampleOrderTypeNV>(getCoarseSampleOrderTypeNVName, value);                                                                                           }
+inline tcu::Format::Enum<VkRayTracingShaderGroupTypeKHR>                                       getRayTracingShaderGroupTypeKHRStr                                              (VkRayTracingShaderGroupTypeKHR value)                                          { return tcu::Format::Enum<VkRayTracingShaderGroupTypeKHR>(getRayTracingShaderGroupTypeKHRName, value);                                                                         }
+inline tcu::Format::Enum<VkGeometryTypeKHR>                                                                    getGeometryTypeKHRStr                                                                   (VkGeometryTypeKHR value)                                                                       { return tcu::Format::Enum<VkGeometryTypeKHR>(getGeometryTypeKHRName, value);                                                                                                                           }
+inline tcu::Format::Enum<VkAccelerationStructureTypeKHR>                                       getAccelerationStructureTypeKHRStr                                              (VkAccelerationStructureTypeKHR value)                                          { return tcu::Format::Enum<VkAccelerationStructureTypeKHR>(getAccelerationStructureTypeKHRName, value);                                                                         }
+inline tcu::Format::Enum<VkCopyAccelerationStructureModeKHR>                           getCopyAccelerationStructureModeKHRStr                                  (VkCopyAccelerationStructureModeKHR value)                                      { return tcu::Format::Enum<VkCopyAccelerationStructureModeKHR>(getCopyAccelerationStructureModeKHRName, value);                                                         }
+inline tcu::Format::Enum<VkAccelerationStructureMemoryRequirementsTypeKHR>     getAccelerationStructureMemoryRequirementsTypeKHRStr    (VkAccelerationStructureMemoryRequirementsTypeKHR value)        { return tcu::Format::Enum<VkAccelerationStructureMemoryRequirementsTypeKHR>(getAccelerationStructureMemoryRequirementsTypeKHRName, value);     }
+inline tcu::Format::Enum<VkQueueGlobalPriorityEXT>                                                     getQueueGlobalPriorityEXTStr                                                    (VkQueueGlobalPriorityEXT value)                                                        { return tcu::Format::Enum<VkQueueGlobalPriorityEXT>(getQueueGlobalPriorityEXTName, value);                                                                                                     }
+inline tcu::Format::Enum<VkTimeDomainEXT>                                                                      getTimeDomainEXTStr                                                                             (VkTimeDomainEXT value)                                                                         { return tcu::Format::Enum<VkTimeDomainEXT>(getTimeDomainEXTName, value);                                                                                                                                       }
+inline tcu::Format::Enum<VkMemoryOverallocationBehaviorAMD>                                    getMemoryOverallocationBehaviorAMDStr                                   (VkMemoryOverallocationBehaviorAMD value)                                       { return tcu::Format::Enum<VkMemoryOverallocationBehaviorAMD>(getMemoryOverallocationBehaviorAMDName, value);                                                           }
+inline tcu::Format::Enum<VkPerformanceConfigurationTypeINTEL>                          getPerformanceConfigurationTypeINTELStr                                 (VkPerformanceConfigurationTypeINTEL value)                                     { return tcu::Format::Enum<VkPerformanceConfigurationTypeINTEL>(getPerformanceConfigurationTypeINTELName, value);                                                       }
+inline tcu::Format::Enum<VkQueryPoolSamplingModeINTEL>                                         getQueryPoolSamplingModeINTELStr                                                (VkQueryPoolSamplingModeINTEL value)                                            { return tcu::Format::Enum<VkQueryPoolSamplingModeINTEL>(getQueryPoolSamplingModeINTELName, value);                                                                                     }
+inline tcu::Format::Enum<VkPerformanceOverrideTypeINTEL>                                       getPerformanceOverrideTypeINTELStr                                              (VkPerformanceOverrideTypeINTEL value)                                          { return tcu::Format::Enum<VkPerformanceOverrideTypeINTEL>(getPerformanceOverrideTypeINTELName, value);                                                                         }
+inline tcu::Format::Enum<VkPerformanceParameterTypeINTEL>                                      getPerformanceParameterTypeINTELStr                                             (VkPerformanceParameterTypeINTEL value)                                         { return tcu::Format::Enum<VkPerformanceParameterTypeINTEL>(getPerformanceParameterTypeINTELName, value);                                                                       }
+inline tcu::Format::Enum<VkPerformanceValueTypeINTEL>                                          getPerformanceValueTypeINTELStr                                                 (VkPerformanceValueTypeINTEL value)                                                     { return tcu::Format::Enum<VkPerformanceValueTypeINTEL>(getPerformanceValueTypeINTELName, value);                                                                                       }
+inline tcu::Format::Enum<VkValidationFeatureEnableEXT>                                         getValidationFeatureEnableEXTStr                                                (VkValidationFeatureEnableEXT value)                                            { return tcu::Format::Enum<VkValidationFeatureEnableEXT>(getValidationFeatureEnableEXTName, value);                                                                                     }
+inline tcu::Format::Enum<VkValidationFeatureDisableEXT>                                                getValidationFeatureDisableEXTStr                                               (VkValidationFeatureDisableEXT value)                                           { return tcu::Format::Enum<VkValidationFeatureDisableEXT>(getValidationFeatureDisableEXTName, value);                                                                           }
+inline tcu::Format::Enum<VkComponentTypeNV>                                                                    getComponentTypeNVStr                                                                   (VkComponentTypeNV value)                                                                       { return tcu::Format::Enum<VkComponentTypeNV>(getComponentTypeNVName, value);                                                                                                                           }
+inline tcu::Format::Enum<VkScopeNV>                                                                                    getScopeNVStr                                                                                   (VkScopeNV value)                                                                                       { return tcu::Format::Enum<VkScopeNV>(getScopeNVName, value);                                                                                                                                                           }
+inline tcu::Format::Enum<VkCoverageReductionModeNV>                                                    getCoverageReductionModeNVStr                                                   (VkCoverageReductionModeNV value)                                                       { return tcu::Format::Enum<VkCoverageReductionModeNV>(getCoverageReductionModeNVName, value);                                                                                           }
+inline tcu::Format::Enum<VkLineRasterizationModeEXT>                                           getLineRasterizationModeEXTStr                                                  (VkLineRasterizationModeEXT value)                                                      { return tcu::Format::Enum<VkLineRasterizationModeEXT>(getLineRasterizationModeEXTName, value);                                                                                         }
+inline tcu::Format::Enum<VkIndirectCommandsTokenTypeNV>                                                getIndirectCommandsTokenTypeNVStr                                               (VkIndirectCommandsTokenTypeNV value)                                           { return tcu::Format::Enum<VkIndirectCommandsTokenTypeNV>(getIndirectCommandsTokenTypeNVName, value);                                                                           }
+inline tcu::Format::Enum<VkAccelerationStructureBuildTypeKHR>                          getAccelerationStructureBuildTypeKHRStr                                 (VkAccelerationStructureBuildTypeKHR value)                                     { return tcu::Format::Enum<VkAccelerationStructureBuildTypeKHR>(getAccelerationStructureBuildTypeKHRName, value);                                                       }
+inline tcu::Format::Enum<VkFullScreenExclusiveEXT>                                                     getFullScreenExclusiveEXTStr                                                    (VkFullScreenExclusiveEXT value)                                                        { return tcu::Format::Enum<VkFullScreenExclusiveEXT>(getFullScreenExclusiveEXTName, 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);                                                                                      }
@@ -240,8 +240,6 @@ inline std::ostream&        operator<<      (std::ostream& s, VkDebugReportObjectTypeEXT val
 inline std::ostream&   operator<<      (std::ostream& s, VkRasterizationOrderAMD value)                                                        { return s << getRasterizationOrderAMDStr(value);                                                       }
 inline std::ostream&   operator<<      (std::ostream& s, VkShaderInfoTypeAMD value)                                                            { return s << getShaderInfoTypeAMDStr(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, VkDisplayPowerStateEXT value)                                                         { return s << getDisplayPowerStateEXTStr(value);                                                        }
 inline std::ostream&   operator<<      (std::ostream& s, VkDeviceEventTypeEXT value)                                                           { return s << getDeviceEventTypeEXTStr(value);                                                          }
 inline std::ostream&   operator<<      (std::ostream& s, VkDisplayEventTypeEXT value)                                                          { return s << getDisplayEventTypeEXTStr(value);                                                         }
@@ -253,11 +251,11 @@ inline std::ostream&      operator<<      (std::ostream& s, VkCoverageModulationModeNV val
 inline std::ostream&   operator<<      (std::ostream& s, VkValidationCacheHeaderVersionEXT value)                                      { return s << getValidationCacheHeaderVersionEXTStr(value);                                     }
 inline std::ostream&   operator<<      (std::ostream& s, VkShadingRatePaletteEntryNV value)                                            { return s << getShadingRatePaletteEntryNVStr(value);                                           }
 inline std::ostream&   operator<<      (std::ostream& s, VkCoarseSampleOrderTypeNV value)                                                      { return s << getCoarseSampleOrderTypeNVStr(value);                                                     }
-inline std::ostream&   operator<<      (std::ostream& s, VkAccelerationStructureTypeNV value)                                          { return s << getAccelerationStructureTypeNVStr(value);                                         }
-inline std::ostream&   operator<<      (std::ostream& s, VkRayTracingShaderGroupTypeNV value)                                          { return s << getRayTracingShaderGroupTypeNVStr(value);                                         }
-inline std::ostream&   operator<<      (std::ostream& s, VkGeometryTypeNV value)                                                                       { return s << getGeometryTypeNVStr(value);                                                                      }
-inline std::ostream&   operator<<      (std::ostream& s, VkCopyAccelerationStructureModeNV value)                                      { return s << getCopyAccelerationStructureModeNVStr(value);                                     }
-inline std::ostream&   operator<<      (std::ostream& s, VkAccelerationStructureMemoryRequirementsTypeNV value)        { return s << getAccelerationStructureMemoryRequirementsTypeNVStr(value);       }
+inline std::ostream&   operator<<      (std::ostream& s, VkRayTracingShaderGroupTypeKHR value)                                         { return s << getRayTracingShaderGroupTypeKHRStr(value);                                        }
+inline std::ostream&   operator<<      (std::ostream& s, VkGeometryTypeKHR value)                                                                      { return s << getGeometryTypeKHRStr(value);                                                                     }
+inline std::ostream&   operator<<      (std::ostream& s, VkAccelerationStructureTypeKHR value)                                         { return s << getAccelerationStructureTypeKHRStr(value);                                        }
+inline std::ostream&   operator<<      (std::ostream& s, VkCopyAccelerationStructureModeKHR value)                                     { return s << getCopyAccelerationStructureModeKHRStr(value);                            }
+inline std::ostream&   operator<<      (std::ostream& s, VkAccelerationStructureMemoryRequirementsTypeKHR value)       { return s << getAccelerationStructureMemoryRequirementsTypeKHRStr(value);      }
 inline std::ostream&   operator<<      (std::ostream& s, VkQueueGlobalPriorityEXT value)                                                       { return s << getQueueGlobalPriorityEXTStr(value);                                                      }
 inline std::ostream&   operator<<      (std::ostream& s, VkTimeDomainEXT value)                                                                        { return s << getTimeDomainEXTStr(value);                                                                       }
 inline std::ostream&   operator<<      (std::ostream& s, VkMemoryOverallocationBehaviorAMD value)                                      { return s << getMemoryOverallocationBehaviorAMDStr(value);                                     }
@@ -272,6 +270,8 @@ inline std::ostream&        operator<<      (std::ostream& s, VkComponentTypeNV value)
 inline std::ostream&   operator<<      (std::ostream& s, VkScopeNV value)                                                                                      { return s << getScopeNVStr(value);                                                                                     }
 inline std::ostream&   operator<<      (std::ostream& s, VkCoverageReductionModeNV value)                                                      { return s << getCoverageReductionModeNVStr(value);                                                     }
 inline std::ostream&   operator<<      (std::ostream& s, VkLineRasterizationModeEXT value)                                                     { return s << getLineRasterizationModeEXTStr(value);                                            }
+inline std::ostream&   operator<<      (std::ostream& s, VkIndirectCommandsTokenTypeNV value)                                          { return s << getIndirectCommandsTokenTypeNVStr(value);                                         }
+inline std::ostream&   operator<<      (std::ostream& s, VkAccelerationStructureBuildTypeKHR value)                            { return s << getAccelerationStructureBuildTypeKHRStr(value);                           }
 inline std::ostream&   operator<<      (std::ostream& s, VkFullScreenExclusiveEXT value)                                                       { return s << getFullScreenExclusiveEXTStr(value);                                                      }
 
 tcu::Format::Bitfield<32>      getFormatFeatureFlagsStr                                                                        (VkFormatFeatureFlags value);
@@ -293,6 +293,7 @@ tcu::Format::Bitfield<32>   getBufferCreateFlagsStr                                                                         (VkBufferCreateFlags
 tcu::Format::Bitfield<32>      getBufferUsageFlagsStr                                                                          (VkBufferUsageFlags value);
 tcu::Format::Bitfield<32>      getImageViewCreateFlagsStr                                                                      (VkImageViewCreateFlags value);
 tcu::Format::Bitfield<32>      getShaderModuleCreateFlagsStr                                                           (VkShaderModuleCreateFlags value);
+tcu::Format::Bitfield<32>      getPipelineCacheCreateFlagsStr                                                          (VkPipelineCacheCreateFlags value);
 tcu::Format::Bitfield<32>      getPipelineCreateFlagsStr                                                                       (VkPipelineCreateFlags value);
 tcu::Format::Bitfield<32>      getPipelineShaderStageCreateFlagsStr                                            (VkPipelineShaderStageCreateFlags value);
 tcu::Format::Bitfield<32>      getShaderStageFlagsStr                                                                          (VkShaderStageFlags value);
@@ -338,18 +339,19 @@ tcu::Format::Bitfield<32> getDebugReportFlagsEXTStr                                                                       (VkDebugReportFlagsE
 tcu::Format::Bitfield<32>      getExternalMemoryHandleTypeFlagsNVStr                                           (VkExternalMemoryHandleTypeFlagsNV value);
 tcu::Format::Bitfield<32>      getExternalMemoryFeatureFlagsNVStr                                                      (VkExternalMemoryFeatureFlagsNV value);
 tcu::Format::Bitfield<32>      getConditionalRenderingFlagsEXTStr                                                      (VkConditionalRenderingFlagsEXT value);
-tcu::Format::Bitfield<32>      getIndirectCommandsLayoutUsageFlagsNVXStr                                       (VkIndirectCommandsLayoutUsageFlagsNVX value);
-tcu::Format::Bitfield<32>      getObjectEntryUsageFlagsNVXStr                                                          (VkObjectEntryUsageFlagsNVX value);
 tcu::Format::Bitfield<32>      getSurfaceCounterFlagsEXTStr                                                            (VkSurfaceCounterFlagsEXT value);
 tcu::Format::Bitfield<32>      getDebugUtilsMessageSeverityFlagsEXTStr                                         (VkDebugUtilsMessageSeverityFlagsEXT value);
 tcu::Format::Bitfield<32>      getDebugUtilsMessageTypeFlagsEXTStr                                                     (VkDebugUtilsMessageTypeFlagsEXT value);
-tcu::Format::Bitfield<32>      getGeometryFlagsNVStr                                                                           (VkGeometryFlagsNV value);
-tcu::Format::Bitfield<32>      getGeometryInstanceFlagsNVStr                                                           (VkGeometryInstanceFlagsNV value);
-tcu::Format::Bitfield<32>      getBuildAccelerationStructureFlagsNVStr                                         (VkBuildAccelerationStructureFlagsNV value);
+tcu::Format::Bitfield<32>      getGeometryFlagsKHRStr                                                                          (VkGeometryFlagsKHR value);
+tcu::Format::Bitfield<32>      getGeometryInstanceFlagsKHRStr                                                          (VkGeometryInstanceFlagsKHR value);
+tcu::Format::Bitfield<32>      getBuildAccelerationStructureFlagsKHRStr                                        (VkBuildAccelerationStructureFlagsKHR value);
 tcu::Format::Bitfield<32>      getPipelineCompilerControlFlagsAMDStr                                           (VkPipelineCompilerControlFlagsAMD value);
 tcu::Format::Bitfield<32>      getPipelineCreationFeedbackFlagsEXTStr                                          (VkPipelineCreationFeedbackFlagsEXT value);
 tcu::Format::Bitfield<32>      getShaderCorePropertiesFlagsAMDStr                                                      (VkShaderCorePropertiesFlagsAMD value);
 tcu::Format::Bitfield<32>      getToolPurposeFlagsEXTStr                                                                       (VkToolPurposeFlagsEXT value);
+tcu::Format::Bitfield<32>      getIndirectStateFlagsNVStr                                                                      (VkIndirectStateFlagsNV value);
+tcu::Format::Bitfield<32>      getIndirectCommandsLayoutUsageFlagsNVStr                                        (VkIndirectCommandsLayoutUsageFlagsNV value);
+tcu::Format::Bitfield<32>      getDeviceDiagnosticsConfigFlagsNVStr                                            (VkDeviceDiagnosticsConfigFlagsNV value);
 tcu::Format::Bitfield<32>      getInstanceCreateFlagsStr                                                                       (VkInstanceCreateFlags value);
 tcu::Format::Bitfield<32>      getDeviceCreateFlagsStr                                                                         (VkDeviceCreateFlags value);
 tcu::Format::Bitfield<32>      getMemoryMapFlagsStr                                                                            (VkMemoryMapFlags value);
@@ -357,7 +359,6 @@ tcu::Format::Bitfield<32>   getSemaphoreCreateFlagsStr                                                                      (VkSemaphoreCreateF
 tcu::Format::Bitfield<32>      getEventCreateFlagsStr                                                                          (VkEventCreateFlags value);
 tcu::Format::Bitfield<32>      getQueryPoolCreateFlagsStr                                                                      (VkQueryPoolCreateFlags value);
 tcu::Format::Bitfield<32>      getBufferViewCreateFlagsStr                                                                     (VkBufferViewCreateFlags value);
-tcu::Format::Bitfield<32>      getPipelineCacheCreateFlagsStr                                                          (VkPipelineCacheCreateFlags value);
 tcu::Format::Bitfield<32>      getPipelineVertexInputStateCreateFlagsStr                                       (VkPipelineVertexInputStateCreateFlags value);
 tcu::Format::Bitfield<32>      getPipelineInputAssemblyStateCreateFlagsStr                                     (VkPipelineInputAssemblyStateCreateFlags value);
 tcu::Format::Bitfield<32>      getPipelineTessellationStateCreateFlagsStr                                      (VkPipelineTessellationStateCreateFlags value);
@@ -396,6 +397,7 @@ tcu::Format::Bitfield<32>   getWaylandSurfaceCreateFlagsKHRStr                                                      (VkWaylandSur
 tcu::Format::Bitfield<32>      getWin32SurfaceCreateFlagsKHRStr                                                        (VkWin32SurfaceCreateFlagsKHR value);
 tcu::Format::Bitfield<32>      getXcbSurfaceCreateFlagsKHRStr                                                          (VkXcbSurfaceCreateFlagsKHR value);
 tcu::Format::Bitfield<32>      getXlibSurfaceCreateFlagsKHRStr                                                         (VkXlibSurfaceCreateFlagsKHR value);
+tcu::Format::Bitfield<32>      getBuildAccelerationStructureFlagsNVStr                                         (VkBuildAccelerationStructureFlagsNV value);
 
 std::ostream&  operator<<      (std::ostream& s, const VkApplicationInfo& value);
 std::ostream&  operator<<      (std::ostream& s, const VkInstanceCreateInfo& value);
@@ -706,20 +708,6 @@ std::ostream&      operator<<      (std::ostream& s, const VkPhysicalDeviceASTCDecodeFeatu
 std::ostream&  operator<<      (std::ostream& s, const VkConditionalRenderingBeginInfoEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceConditionalRenderingFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkCommandBufferInheritanceConditionalRenderingInfoEXT& 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 VkViewportWScalingNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPipelineViewportWScalingStateCreateInfoNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkSurfaceCapabilities2EXT& value);
@@ -789,10 +777,13 @@ std::ostream&     operator<<      (std::ostream& s, const VkGeometryDataNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkGeometryNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureInfoNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureCreateInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkBindAccelerationStructureMemoryInfoNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkWriteDescriptorSetAccelerationStructureNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkBindAccelerationStructureMemoryInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkWriteDescriptorSetAccelerationStructureKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureMemoryRequirementsInfoNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceRayTracingPropertiesNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkTransformMatrixKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAabbPositionsKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureInstanceKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPipelineRepresentativeFragmentTestStateCreateInfoNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceImageViewImageFormatInfoEXT& value);
@@ -825,7 +816,7 @@ std::ostream&       operator<<      (std::ostream& s, const VkPhysicalDeviceShaderIntegerFu
 std::ostream&  operator<<      (std::ostream& s, const VkPerformanceValueDataINTEL& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPerformanceValueINTEL& value);
 std::ostream&  operator<<      (std::ostream& s, const VkInitializePerformanceApiInfoINTEL& value);
-std::ostream&  operator<<      (std::ostream& s, const VkQueryPoolCreateInfoINTEL& value);
+std::ostream&  operator<<      (std::ostream& s, const VkQueryPoolPerformanceQueryCreateInfoINTEL& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPerformanceMarkerInfoINTEL& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPerformanceStreamMarkerInfoINTEL& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPerformanceOverrideInfoINTEL& value);
@@ -863,8 +854,26 @@ std::ostream&      operator<<      (std::ostream& s, const VkPhysicalDeviceLineRasterizati
 std::ostream&  operator<<      (std::ostream& s, const VkPipelineRasterizationLineStateCreateInfoEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceIndexTypeUint8FeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkGraphicsShaderGroupCreateInfoNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkGraphicsPipelineShaderGroupsCreateInfoNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkBindShaderGroupIndirectCommandNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkBindIndexBufferIndirectCommandNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkBindVertexBufferIndirectCommandNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkSetStateFlagsIndirectCommandNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkIndirectCommandsStreamNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkIndirectCommandsLayoutTokenNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkIndirectCommandsLayoutCreateInfoNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkGeneratedCommandsInfoNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkGeneratedCommandsMemoryRequirementsInfoNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRenderPassTransformBeginInfoQCOM& value);
+std::ostream&  operator<<      (std::ostream& s, const VkCommandBufferInheritanceRenderPassTransformInfoQCOM& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceDiagnosticsConfigFeaturesNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkDeviceDiagnosticsConfigCreateInfoNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkAndroidSurfaceCreateInfoKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkAndroidHardwareBufferUsageANDROID& value);
 std::ostream&  operator<<      (std::ostream& s, const VkAndroidHardwareBufferPropertiesANDROID& value);
@@ -872,6 +881,32 @@ std::ostream&      operator<<      (std::ostream& s, const VkAndroidHardwareBufferFormatPr
 std::ostream&  operator<<      (std::ostream& s, const VkImportAndroidHardwareBufferInfoANDROID& value);
 std::ostream&  operator<<      (std::ostream& s, const VkMemoryGetAndroidHardwareBufferInfoANDROID& value);
 std::ostream&  operator<<      (std::ostream& s, const VkExternalFormatANDROID& value);
+std::ostream&  operator<<      (std::ostream& s, const VkDeferredOperationInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPipelineLibraryCreateInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkDeviceOrHostAddressKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkDeviceOrHostAddressConstKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureBuildOffsetInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRayTracingShaderGroupCreateInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRayTracingPipelineInterfaceCreateInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRayTracingPipelineCreateInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureGeometryTrianglesDataKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureGeometryAabbsDataKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureGeometryInstancesDataKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureGeometryDataKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureGeometryKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureBuildGeometryInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureCreateGeometryTypeInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureCreateInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureMemoryRequirementsInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceRayTracingFeaturesKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceRayTracingPropertiesKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureDeviceAddressInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureVersionKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkStridedBufferRegionKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkTraceRaysIndirectCommandKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkCopyAccelerationStructureToMemoryInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkCopyMemoryToAccelerationStructureInfoKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkCopyAccelerationStructureInfoKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkImagePipeSurfaceCreateInfoFUCHSIA& value);
 std::ostream&  operator<<      (std::ostream& s, const VkStreamDescriptorSurfaceCreateInfoGGP& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPresentFrameTokenGGP& value);
index 51a536b..1bc5ec2 100644 (file)
@@ -33,12 +33,13 @@ template<> const char*      getTypeName<VkSwapchainKHR>                                             (void) { return "VkSwapc
 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<VkDebugUtilsMessengerEXT>                   (void) { return "VkDebugUtilsMessengerEXT";                     }
 template<> const char* getTypeName<VkValidationCacheEXT>                               (void) { return "VkValidationCacheEXT";                         }
-template<> const char* getTypeName<VkAccelerationStructureNV>                  (void) { return "VkAccelerationStructureNV";            }
+template<> const char* getTypeName<VkAccelerationStructureKHR>                 (void) { return "VkAccelerationStructureKHR";           }
 template<> const char* getTypeName<VkPerformanceConfigurationINTEL>    (void) { return "VkPerformanceConfigurationINTEL";      }
+template<> const char* getTypeName<VkIndirectCommandsLayoutNV>                 (void) { return "VkIndirectCommandsLayoutNV";           }
+template<> const char* getTypeName<VkDeferredOperationKHR>                             (void) { return "VkDeferredOperationKHR";                       }
+template<> const char* getTypeName<VkAccelerationStructureNV>                  (void) { return "VkAccelerationStructureNV";            }
 
 namespace pt
 {
@@ -111,9 +112,15 @@ const char* getResultName (VkResult value)
                case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR:                                         return "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR";
                case VK_ERROR_VALIDATION_FAILED_EXT:                                            return "VK_ERROR_VALIDATION_FAILED_EXT";
                case VK_ERROR_INVALID_SHADER_NV:                                                        return "VK_ERROR_INVALID_SHADER_NV";
+               case VK_ERROR_INCOMPATIBLE_VERSION_KHR:                                         return "VK_ERROR_INCOMPATIBLE_VERSION_KHR";
                case VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT:     return "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT";
                case VK_ERROR_NOT_PERMITTED_EXT:                                                        return "VK_ERROR_NOT_PERMITTED_EXT";
                case VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT:                      return "VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT";
+               case VK_THREAD_IDLE_KHR:                                                                        return "VK_THREAD_IDLE_KHR";
+               case VK_THREAD_DONE_KHR:                                                                        return "VK_THREAD_DONE_KHR";
+               case VK_OPERATION_DEFERRED_KHR:                                                         return "VK_OPERATION_DEFERRED_KHR";
+               case VK_OPERATION_NOT_DEFERRED_KHR:                                                     return "VK_OPERATION_NOT_DEFERRED_KHR";
+               case VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT:                            return "VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT";
                case VK_RESULT_MAX_ENUM:                                                                        return "VK_RESULT_MAX_ENUM";
                default:                                                                                                        return DE_NULL;
        }
@@ -347,12 +354,6 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT:                              return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT:                                                    return "VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT";
                case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:                                                                                             return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_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_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV:                                return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV";
                case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT:                                                                              return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT";
                case VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT:                                                                                  return "VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT";
@@ -416,6 +417,27 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:                 return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT";
                case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:                             return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT";
                case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV:                                 return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV";
+               case VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR:                                             return "VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR";
+               case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:                                 return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR:                                  return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR:                    return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR:                                  return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR:                                  return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR:                              return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR:                              return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR:                                                             return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_KHR:                                                                 return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR:                             return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR:                                                              return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR";
+               case VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR:                                                    return "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR:                                  return "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR";
+               case VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR:                                  return "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR:                                                return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR:                                              return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR";
+               case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR:                                                    return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR:                                                return "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR:                                                  return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR:                                  return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR";
                case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV:                               return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV:                                  return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV:                                return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV";
@@ -436,8 +458,6 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_GEOMETRY_NV:                                                                                                             return "VK_STRUCTURE_TYPE_GEOMETRY_NV";
                case VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV:                                                                                   return "VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV";
                case VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV:                                                                                                return "VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV";
-               case VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV:                                              return "VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV";
-               case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV:                                  return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV";
                case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV:                              return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV:                                               return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV";
                case VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV:                                                 return "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV";
@@ -514,6 +534,7 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT:                               return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:                               return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT:                                   return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR:                                                                             return "VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:             return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR";
                case VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR:                                                                                               return "VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR";
                case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR:                                                              return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR";
@@ -521,8 +542,22 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR:                                                               return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR";
                case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR:                                 return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV:                 return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV";
+               case VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV:                                                    return "VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV";
+               case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV:                                  return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV";
+               case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV:                                                               return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV";
+               case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV:                                                 return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV";
+               case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV:                                                                              return "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV";
+               case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV:                                  return "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV:                   return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:                             return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT:                   return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT";
+               case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM:              return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM";
+               case VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM:                                                   return "VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM";
+               case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR:                                                                return "VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT:    return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV:                                  return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV";
+               case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV:                                                return "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV";
                case VK_STRUCTURE_TYPE_MAX_ENUM:                                                                                                                return "VK_STRUCTURE_TYPE_MAX_ENUM";
                default:                                                                                                                                                                return DE_NULL;
        }
@@ -844,15 +879,16 @@ const char* getQueryTypeName (VkQueryType value)
 {
        switch (value)
        {
-               case VK_QUERY_TYPE_OCCLUSION:                                                                   return "VK_QUERY_TYPE_OCCLUSION";
-               case VK_QUERY_TYPE_PIPELINE_STATISTICS:                                                 return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
-               case VK_QUERY_TYPE_TIMESTAMP:                                                                   return "VK_QUERY_TYPE_TIMESTAMP";
-               case VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT:                               return "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT";
-               case VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR:                                               return "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR";
-               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV:    return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV";
-               case VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL:                                             return "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL";
-               case VK_QUERY_TYPE_MAX_ENUM:                                                                    return "VK_QUERY_TYPE_MAX_ENUM";
-               default:                                                                                                                return DE_NULL;
+               case VK_QUERY_TYPE_OCCLUSION:                                                                           return "VK_QUERY_TYPE_OCCLUSION";
+               case VK_QUERY_TYPE_PIPELINE_STATISTICS:                                                         return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
+               case VK_QUERY_TYPE_TIMESTAMP:                                                                           return "VK_QUERY_TYPE_TIMESTAMP";
+               case VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT:                                       return "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT";
+               case VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR:                                                       return "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR";
+               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR:           return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR";
+               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR:       return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR";
+               case VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL:                                                     return "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL";
+               case VK_QUERY_TYPE_MAX_ENUM:                                                                            return "VK_QUERY_TYPE_MAX_ENUM";
+               default:                                                                                                                        return DE_NULL;
        }
 }
 
@@ -1222,7 +1258,7 @@ const char* getDescriptorTypeName (VkDescriptorType value)
                case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:         return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC";
                case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:                       return "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT";
                case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT:       return "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT";
-               case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:      return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV";
+               case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR:     return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR";
                case VK_DESCRIPTOR_TYPE_MAX_ENUM:                                       return "VK_DESCRIPTOR_TYPE_MAX_ENUM";
                default:                                                                                        return DE_NULL;
        }
@@ -1255,11 +1291,11 @@ const char* getPipelineBindPointName (VkPipelineBindPoint value)
 {
        switch (value)
        {
-               case VK_PIPELINE_BIND_POINT_GRAPHICS:           return "VK_PIPELINE_BIND_POINT_GRAPHICS";
-               case VK_PIPELINE_BIND_POINT_COMPUTE:            return "VK_PIPELINE_BIND_POINT_COMPUTE";
-               case VK_PIPELINE_BIND_POINT_RAY_TRACING_NV:     return "VK_PIPELINE_BIND_POINT_RAY_TRACING_NV";
-               case VK_PIPELINE_BIND_POINT_MAX_ENUM:           return "VK_PIPELINE_BIND_POINT_MAX_ENUM";
-               default:                                                                        return DE_NULL;
+               case VK_PIPELINE_BIND_POINT_GRAPHICS:                   return "VK_PIPELINE_BIND_POINT_GRAPHICS";
+               case VK_PIPELINE_BIND_POINT_COMPUTE:                    return "VK_PIPELINE_BIND_POINT_COMPUTE";
+               case VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR:    return "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR";
+               case VK_PIPELINE_BIND_POINT_MAX_ENUM:                   return "VK_PIPELINE_BIND_POINT_MAX_ENUM";
+               default:                                                                                return DE_NULL;
        }
 }
 
@@ -1280,7 +1316,7 @@ const char* getIndexTypeName (VkIndexType value)
        {
                case VK_INDEX_TYPE_UINT16:              return "VK_INDEX_TYPE_UINT16";
                case VK_INDEX_TYPE_UINT32:              return "VK_INDEX_TYPE_UINT32";
-               case VK_INDEX_TYPE_NONE_NV:             return "VK_INDEX_TYPE_NONE_NV";
+               case VK_INDEX_TYPE_NONE_KHR:    return "VK_INDEX_TYPE_NONE_KHR";
                case VK_INDEX_TYPE_UINT8_EXT:   return "VK_INDEX_TYPE_UINT8_EXT";
                case VK_INDEX_TYPE_MAX_ENUM:    return "VK_INDEX_TYPE_MAX_ENUM";
                default:                                                return DE_NULL;
@@ -1335,12 +1371,12 @@ const char* getObjectTypeName (VkObjectType value)
                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_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";
                case VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT:                  return "VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT";
+               case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR:                 return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR";
                case VK_OBJECT_TYPE_VALIDATION_CACHE_EXT:                               return "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT";
-               case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV:                  return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV";
                case VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL:    return "VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL";
+               case VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR:                             return "VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR";
+               case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV:                return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV";
                case VK_OBJECT_TYPE_MAX_ENUM:                                                   return "VK_OBJECT_TYPE_MAX_ENUM";
                default:                                                                                                return DE_NULL;
        }
@@ -1353,6 +1389,7 @@ const char* getVendorIdName (VkVendorId value)
                case VK_VENDOR_ID_VIV:          return "VK_VENDOR_ID_VIV";
                case VK_VENDOR_ID_VSI:          return "VK_VENDOR_ID_VSI";
                case VK_VENDOR_ID_KAZAN:        return "VK_VENDOR_ID_KAZAN";
+               case VK_VENDOR_ID_CODEPLAY:     return "VK_VENDOR_ID_CODEPLAY";
                case VK_VENDOR_ID_MAX_ENUM:     return "VK_VENDOR_ID_MAX_ENUM";
                default:                                        return DE_NULL;
        }
@@ -1618,12 +1655,10 @@ const char* getDebugReportObjectTypeEXTName (VkDebugReportObjectTypeEXT value)
                case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT:         return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_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_OBJECT_TABLE_NVX_EXT:                          return "VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT:      return "VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT";
                case VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT:                      return "VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT";
                case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT:          return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT";
                case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT:        return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT";
-               case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT:         return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT";
+               case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT:        return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT";
                case VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT:                                          return "VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT";
                default:                                                                                                                        return DE_NULL;
        }
@@ -1663,37 +1698,6 @@ const char* getValidationCheckEXTName (VkValidationCheckEXT value)
        }
 }
 
-const char* getIndirectCommandsTokenTypeNVXName (VkIndirectCommandsTokenTypeNVX value)
-{
-       switch (value)
-       {
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX:                      return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX:        return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX:          return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX:         return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX:         return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX:          return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX:                          return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX:                      return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX";
-               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX:                      return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX";
-               default:                                                                                                        return DE_NULL;
-       }
-}
-
-const char* getObjectEntryTypeNVXName (VkObjectEntryTypeNVX value)
-{
-       switch (value)
-       {
-               case VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX:   return "VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX";
-               case VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX:                 return "VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX";
-               case VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX:             return "VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX";
-               case VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX:    return "VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX";
-               case VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX:    return "VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX";
-               case VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX:                 return "VK_OBJECT_ENTRY_TYPE_MAX_ENUM_NVX";
-               default:                                                                                return DE_NULL;
-       }
-}
-
 const char* getDisplayPowerStateEXTName (VkDisplayPowerStateEXT value)
 {
        switch (value)
@@ -1835,59 +1839,62 @@ const char* getCoarseSampleOrderTypeNVName (VkCoarseSampleOrderTypeNV value)
        }
 }
 
-const char* getAccelerationStructureTypeNVName (VkAccelerationStructureTypeNV value)
+const char* getRayTracingShaderGroupTypeKHRName (VkRayTracingShaderGroupTypeKHR value)
 {
        switch (value)
        {
-               case VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV:               return "VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV";
-               case VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV:    return "VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV";
-               case VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_NV:                return "VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_NV";
-               default:                                                                                                return DE_NULL;
+               case VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR:                              return "VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR";
+               case VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR:  return "VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR";
+               case VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR: return "VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR";
+               case VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR:                             return "VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR";
+               default:                                                                                                                return DE_NULL;
        }
 }
 
-const char* getRayTracingShaderGroupTypeNVName (VkRayTracingShaderGroupTypeNV value)
+const char* getGeometryTypeKHRName (VkGeometryTypeKHR value)
 {
        switch (value)
        {
-               case VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV:                               return "VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV";
-               case VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV:   return "VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV";
-               case VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV:  return "VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV";
-               case VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_NV:                              return "VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_NV";
-               default:                                                                                                                return DE_NULL;
+               case VK_GEOMETRY_TYPE_TRIANGLES_KHR:    return "VK_GEOMETRY_TYPE_TRIANGLES_KHR";
+               case VK_GEOMETRY_TYPE_AABBS_KHR:                return "VK_GEOMETRY_TYPE_AABBS_KHR";
+               case VK_GEOMETRY_TYPE_INSTANCES_KHR:    return "VK_GEOMETRY_TYPE_INSTANCES_KHR";
+               case VK_GEOMETRY_TYPE_MAX_ENUM_KHR:             return "VK_GEOMETRY_TYPE_MAX_ENUM_KHR";
+               default:                                                                return DE_NULL;
        }
 }
 
-const char* getGeometryTypeNVName (VkGeometryTypeNV value)
+const char* getAccelerationStructureTypeKHRName (VkAccelerationStructureTypeKHR value)
 {
        switch (value)
        {
-               case VK_GEOMETRY_TYPE_TRIANGLES_NV:     return "VK_GEOMETRY_TYPE_TRIANGLES_NV";
-               case VK_GEOMETRY_TYPE_AABBS_NV:         return "VK_GEOMETRY_TYPE_AABBS_NV";
-               case VK_GEOMETRY_TYPE_MAX_ENUM_NV:      return "VK_GEOMETRY_TYPE_MAX_ENUM_NV";
-               default:                                                        return DE_NULL;
+               case VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR:              return "VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR";
+               case VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR:   return "VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR";
+               case VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR:               return "VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR";
+               default:                                                                                                return DE_NULL;
        }
 }
 
-const char* getCopyAccelerationStructureModeNVName (VkCopyAccelerationStructureModeNV value)
+const char* getCopyAccelerationStructureModeKHRName (VkCopyAccelerationStructureModeKHR value)
 {
        switch (value)
        {
-               case VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV:              return "VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV";
-               case VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV:    return "VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV";
-               case VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_NV:   return "VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_NV";
-               default:                                                                                                return DE_NULL;
+               case VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR:                     return "VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR";
+               case VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR:           return "VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR";
+               case VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR:         return "VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR";
+               case VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR:       return "VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR";
+               case VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR:          return "VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR";
+               default:                                                                                                        return DE_NULL;
        }
 }
 
-const char* getAccelerationStructureMemoryRequirementsTypeNVName (VkAccelerationStructureMemoryRequirementsTypeNV value)
+const char* getAccelerationStructureMemoryRequirementsTypeKHRName (VkAccelerationStructureMemoryRequirementsTypeKHR value)
 {
        switch (value)
        {
-               case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV:                      return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV";
-               case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV:       return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV";
-               case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV:      return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV";
-               case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV:            return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV";
+               case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR:                     return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR";
+               case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR:      return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR";
+               case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR:     return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR";
+               case VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_KHR:           return "VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_KHR";
                default:                                                                                                                                        return DE_NULL;
        }
 }
@@ -1993,6 +2000,7 @@ const char* getValidationFeatureEnableEXTName (VkValidationFeatureEnableEXT valu
                case VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT:                                                     return "VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT";
                case VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT:        return "VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT";
                case VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT:                                           return "VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT";
+               case VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT:                                                     return "VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT";
                case VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT:                                                         return "VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT";
                default:                                                                                                                                        return DE_NULL;
        }
@@ -2071,6 +2079,35 @@ const char* getLineRasterizationModeEXTName (VkLineRasterizationModeEXT value)
        }
 }
 
+const char* getIndirectCommandsTokenTypeNVName (VkIndirectCommandsTokenTypeNV value)
+{
+       switch (value)
+       {
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV:   return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV";
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV:    return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV";
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV:   return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV";
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV:  return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV";
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV:  return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV";
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV:   return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV";
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV:                   return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV";
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV:             return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV";
+               case VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV:               return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV";
+               default:                                                                                                return DE_NULL;
+       }
+}
+
+const char* getAccelerationStructureBuildTypeKHRName (VkAccelerationStructureBuildTypeKHR value)
+{
+       switch (value)
+       {
+               case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR:                             return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR";
+               case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR:                   return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR";
+               case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR:   return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR";
+               case VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR:                 return "VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR";
+               default:                                                                                                                return DE_NULL;
+       }
+}
+
 const char* getFullScreenExclusiveEXTName (VkFullScreenExclusiveEXT value)
 {
        switch (value)
@@ -2112,6 +2149,7 @@ tcu::Format::Bitfield<32> getFormatFeatureFlagsStr (VkFormatFeatureFlags value)
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,                                                                                                              "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,                                                                                                 "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_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_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR,                                                                    "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT,                                                                                                    "VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT"),
                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"),
@@ -2251,33 +2289,35 @@ tcu::Format::Bitfield<32> getPipelineStageFlagsStr (VkPipelineStageFlags value)
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,                                         "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT,                                       "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_INPUT_BIT,                                        "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_SHADER_BIT,                                       "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT,         "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT,      "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT,                                     "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT,                                     "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT,                        "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT,                         "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,                     "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT,                                      "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TRANSFER_BIT,                                            "VK_PIPELINE_STAGE_TRANSFER_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,                                      "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT"),
-               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_TRANSFORM_FEEDBACK_BIT_EXT,                      "VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT,           "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX,                         "VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV,                       "VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV,                       "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV,     "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV,                                      "VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV,                                      "VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT,        "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT"),
-               tcu::Format::BitDesc(VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM,                                      "VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,                                                 "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT,                                               "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_INPUT_BIT,                                                "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_SHADER_BIT,                                               "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT,                 "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT,              "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT,                                             "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT,                                             "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT,                                "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT,                                 "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,                             "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT,                                              "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TRANSFER_BIT,                                                    "VK_PIPELINE_STAGE_TRANSFER_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,                                              "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT"),
+               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_TRANSFORM_FEEDBACK_BIT_EXT,                              "VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT,                   "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,                              "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,    "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV,                               "VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV,                                              "VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV,                                              "VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT,                "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV,                               "VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV,                               "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV,             "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM,                                              "VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
@@ -2403,6 +2443,7 @@ tcu::Format::Bitfield<32> getBufferUsageFlagsStr (VkBufferUsageFlags value)
                tcu::Format::BitDesc(VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT,                 "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT"),
                tcu::Format::BitDesc(VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT, "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT"),
                tcu::Format::BitDesc(VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT,                             "VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT"),
+               tcu::Format::BitDesc(VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR,                                               "VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR"),
                tcu::Format::BitDesc(VK_BUFFER_USAGE_RAY_TRACING_BIT_NV,                                                "VK_BUFFER_USAGE_RAY_TRACING_BIT_NV"),
                tcu::Format::BitDesc(VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT,                             "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT"),
                tcu::Format::BitDesc(VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR,                             "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR"),
@@ -2430,22 +2471,42 @@ tcu::Format::Bitfield<32> getShaderModuleCreateFlagsStr (VkShaderModuleCreateFla
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
+tcu::Format::Bitfield<32> getPipelineCacheCreateFlagsStr (VkPipelineCacheCreateFlags value)
+{
+       static const tcu::Format::BitDesc s_desc[] =
+       {
+               tcu::Format::BitDesc(VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT,  "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM,                               "VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM"),
+       };
+       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
 tcu::Format::Bitfield<32> getPipelineCreateFlagsStr (VkPipelineCreateFlags value)
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT,                                       "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT,                                          "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DERIVATIVE_BIT,                                                         "VK_PIPELINE_CREATE_DERIVATIVE_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,                       "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,                                                      "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV,                                           "VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR,                                     "VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR,       "VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE,                                                          "VK_PIPELINE_CREATE_DISPATCH_BASE"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR,           "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE_KHR,                                                      "VK_PIPELINE_CREATE_DISPATCH_BASE_KHR"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM,                                                     "VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT,                                                       "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT,                                                          "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DERIVATIVE_BIT,                                                                         "VK_PIPELINE_CREATE_DERIVATIVE_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,                                       "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,                                                                      "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR,            "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR,        "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR,                       "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR,       "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR,                                     "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR,                                         "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV,                                                           "VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR,                                                     "VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR,                       "VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV,                                                       "VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_LIBRARY_BIT_KHR,                                                                        "VK_PIPELINE_CREATE_LIBRARY_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT,                      "VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT,                                        "VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE,                                                                          "VK_PIPELINE_CREATE_DISPATCH_BASE"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR,                           "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE_KHR,                                                                      "VK_PIPELINE_CREATE_DISPATCH_BASE_KHR"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM,                                                                     "VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
@@ -2473,14 +2534,20 @@ tcu::Format::Bitfield<32> getShaderStageFlagsStr (VkShaderStageFlags value)
                tcu::Format::BitDesc(VK_SHADER_STAGE_COMPUTE_BIT,                                       "VK_SHADER_STAGE_COMPUTE_BIT"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_ALL_GRAPHICS,                                      "VK_SHADER_STAGE_ALL_GRAPHICS"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_ALL,                                                       "VK_SHADER_STAGE_ALL"),
+               tcu::Format::BitDesc(VK_SHADER_STAGE_RAYGEN_BIT_KHR,                            "VK_SHADER_STAGE_RAYGEN_BIT_KHR"),
+               tcu::Format::BitDesc(VK_SHADER_STAGE_ANY_HIT_BIT_KHR,                           "VK_SHADER_STAGE_ANY_HIT_BIT_KHR"),
+               tcu::Format::BitDesc(VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,                       "VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR"),
+               tcu::Format::BitDesc(VK_SHADER_STAGE_MISS_BIT_KHR,                                      "VK_SHADER_STAGE_MISS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_SHADER_STAGE_INTERSECTION_BIT_KHR,                      "VK_SHADER_STAGE_INTERSECTION_BIT_KHR"),
+               tcu::Format::BitDesc(VK_SHADER_STAGE_CALLABLE_BIT_KHR,                          "VK_SHADER_STAGE_CALLABLE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_SHADER_STAGE_TASK_BIT_NV,                                       "VK_SHADER_STAGE_TASK_BIT_NV"),
+               tcu::Format::BitDesc(VK_SHADER_STAGE_MESH_BIT_NV,                                       "VK_SHADER_STAGE_MESH_BIT_NV"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_RAYGEN_BIT_NV,                                     "VK_SHADER_STAGE_RAYGEN_BIT_NV"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_ANY_HIT_BIT_NV,                            "VK_SHADER_STAGE_ANY_HIT_BIT_NV"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV,                        "VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_MISS_BIT_NV,                                       "VK_SHADER_STAGE_MISS_BIT_NV"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_INTERSECTION_BIT_NV,                       "VK_SHADER_STAGE_INTERSECTION_BIT_NV"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_CALLABLE_BIT_NV,                           "VK_SHADER_STAGE_CALLABLE_BIT_NV"),
-               tcu::Format::BitDesc(VK_SHADER_STAGE_TASK_BIT_NV,                                       "VK_SHADER_STAGE_TASK_BIT_NV"),
-               tcu::Format::BitDesc(VK_SHADER_STAGE_MESH_BIT_NV,                                       "VK_SHADER_STAGE_MESH_BIT_NV"),
                tcu::Format::BitDesc(VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM,                        "VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
@@ -2562,6 +2629,7 @@ tcu::Format::Bitfield<32> getRenderPassCreateFlagsStr (VkRenderPassCreateFlags v
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
+               tcu::Format::BitDesc(VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM,  "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM"),
                tcu::Format::BitDesc(VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM,  "VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
@@ -2613,13 +2681,15 @@ tcu::Format::Bitfield<32> getAccessFlagsStr (VkAccessFlags value)
                tcu::Format::BitDesc(VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,         "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT"),
                tcu::Format::BitDesc(VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,        "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT"),
                tcu::Format::BitDesc(VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT,                      "VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT"),
-               tcu::Format::BitDesc(VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX,                            "VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX"),
-               tcu::Format::BitDesc(VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX,                           "VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX"),
                tcu::Format::BitDesc(VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT,       "VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT"),
+               tcu::Format::BitDesc(VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,                     "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR"),
+               tcu::Format::BitDesc(VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,            "VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR"),
                tcu::Format::BitDesc(VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV,                          "VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV"),
+               tcu::Format::BitDesc(VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,                       "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT"),
+               tcu::Format::BitDesc(VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV,                          "VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV"),
+               tcu::Format::BitDesc(VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV,                         "VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV"),
                tcu::Format::BitDesc(VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV,                      "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV"),
                tcu::Format::BitDesc(VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV,                     "VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV"),
-               tcu::Format::BitDesc(VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,                       "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT"),
                tcu::Format::BitDesc(VK_ACCESS_FLAG_BITS_MAX_ENUM,                                                      "VK_ACCESS_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
@@ -3067,30 +3137,6 @@ tcu::Format::Bitfield<32> getConditionalRenderingFlagsEXTStr (VkConditionalRende
        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"),
-               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NVX,          "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_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"),
-               tcu::Format::BitDesc(VK_OBJECT_ENTRY_USAGE_FLAG_BITS_MAX_ENUM_NVX,      "VK_OBJECT_ENTRY_USAGE_FLAG_BITS_MAX_ENUM_NVX"),
-       };
-       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
-}
-
 tcu::Format::Bitfield<32> getSurfaceCounterFlagsEXTStr (VkSurfaceCounterFlagsEXT value)
 {
        static const tcu::Format::BitDesc s_desc[] =
@@ -3126,40 +3172,51 @@ tcu::Format::Bitfield<32> getDebugUtilsMessageTypeFlagsEXTStr (VkDebugUtilsMessa
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
-tcu::Format::Bitfield<32> getGeometryFlagsNVStr (VkGeometryFlagsNV value)
+tcu::Format::Bitfield<32> getGeometryFlagsKHRStr (VkGeometryFlagsKHR value)
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
+               tcu::Format::BitDesc(VK_GEOMETRY_OPAQUE_BIT_KHR,                                                        "VK_GEOMETRY_OPAQUE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR,       "VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR"),
                tcu::Format::BitDesc(VK_GEOMETRY_OPAQUE_BIT_NV,                                                         "VK_GEOMETRY_OPAQUE_BIT_NV"),
                tcu::Format::BitDesc(VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV,        "VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV"),
-               tcu::Format::BitDesc(VK_GEOMETRY_FLAG_BITS_MAX_ENUM_NV,                                         "VK_GEOMETRY_FLAG_BITS_MAX_ENUM_NV"),
+               tcu::Format::BitDesc(VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR,                                        "VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
-tcu::Format::Bitfield<32> getGeometryInstanceFlagsNVStr (VkGeometryInstanceFlagsNV value)
+tcu::Format::Bitfield<32> getGeometryInstanceFlagsKHRStr (VkGeometryInstanceFlagsKHR value)
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
+               tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,         "VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,      "VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,                                         "VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,                                      "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR"),
                tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV,                         "VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV"),
                tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV,       "VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV"),
                tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV,                                          "VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV"),
                tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV,                                       "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV"),
-               tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_NV,                                        "VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_NV"),
+               tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR,                                       "VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
-tcu::Format::Bitfield<32> getBuildAccelerationStructureFlagsNVStr (VkBuildAccelerationStructureFlagsNV value)
+tcu::Format::Bitfield<32> getBuildAccelerationStructureFlagsKHRStr (VkBuildAccelerationStructureFlagsKHR value)
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,              "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,  "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,                "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR"),
                tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV,               "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV"),
                tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV,   "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV"),
                tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV,  "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV"),
                tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV,  "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV"),
                tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV,                 "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV"),
-               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_NV,             "VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_NV"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR,    "VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
@@ -3210,6 +3267,40 @@ tcu::Format::Bitfield<32> getToolPurposeFlagsEXTStr (VkToolPurposeFlagsEXT value
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
+tcu::Format::Bitfield<32> getIndirectStateFlagsNVStr (VkIndirectStateFlagsNV value)
+{
+       static const tcu::Format::BitDesc s_desc[] =
+       {
+               tcu::Format::BitDesc(VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV,   "VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV"),
+               tcu::Format::BitDesc(VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV,   "VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV"),
+       };
+       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+tcu::Format::Bitfield<32> getIndirectCommandsLayoutUsageFlagsNVStr (VkIndirectCommandsLayoutUsageFlagsNV value)
+{
+       static const tcu::Format::BitDesc s_desc[] =
+       {
+               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV,      "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV"),
+               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV,        "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV"),
+               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV,      "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV"),
+               tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV,           "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV"),
+       };
+       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+tcu::Format::Bitfield<32> getDeviceDiagnosticsConfigFlagsNVStr (VkDeviceDiagnosticsConfigFlagsNV value)
+{
+       static const tcu::Format::BitDesc s_desc[] =
+       {
+               tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV,              "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV"),
+               tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV,              "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV"),
+               tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV,  "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV"),
+               tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV,                                "VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV"),
+       };
+       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);
@@ -3245,11 +3336,6 @@ tcu::Format::Bitfield<32> getBufferViewCreateFlagsStr (VkBufferViewCreateFlags v
        return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
 }
 
-tcu::Format::Bitfield<32> getPipelineCacheCreateFlagsStr (VkPipelineCacheCreateFlags value)
-{
-       return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
-}
-
 tcu::Format::Bitfield<32> getPipelineVertexInputStateCreateFlagsStr (VkPipelineVertexInputStateCreateFlags value)
 {
        return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
@@ -3440,6 +3526,25 @@ tcu::Format::Bitfield<32> getXlibSurfaceCreateFlagsKHRStr (VkXlibSurfaceCreateFl
        return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
 }
 
+tcu::Format::Bitfield<32> getBuildAccelerationStructureFlagsNVStr (VkBuildAccelerationStructureFlagsNV value)
+{
+       static const tcu::Format::BitDesc s_desc[] =
+       {
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,              "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,  "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,                "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV,               "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV,   "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV,  "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV,  "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV,                 "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV"),
+               tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR,    "VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR"),
+       };
+       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
 std::ostream& operator<< (std::ostream& s, const VkApplicationInfo& value)
 {
        s << "VkApplicationInfo = {\n";
@@ -7410,175 +7515,6 @@ std::ostream& operator<< (std::ostream& s, const VkCommandBufferInheritanceCondi
        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)
-{
-       s << "VkCmdReserveSpaceForCommandsInfoNVX = {\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 << '}';
-       return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const VkObjectTableCreateInfoNVX& value)
-{
-       s << "VkObjectTableCreateInfoNVX = {\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 << "\tindexType = " << value.indexType << '\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 << '}';
-       return s;
-}
-
 std::ostream& operator<< (std::ostream& s, const VkViewportWScalingNV& value)
 {
        s << "VkViewportWScalingNV = {\n";
@@ -8368,7 +8304,7 @@ std::ostream& operator<< (std::ostream& s, const VkGeometryNV& value)
        s << "\tpNext = " << value.pNext << '\n';
        s << "\tgeometryType = " << value.geometryType << '\n';
        s << "\tgeometry = " << value.geometry << '\n';
-       s << "\tflags = " << getGeometryFlagsNVStr(value.flags) << '\n';
+       s << "\tflags = " << getGeometryFlagsKHRStr(value.flags) << '\n';
        s << '}';
        return s;
 }
@@ -8398,9 +8334,9 @@ std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureCreateIn
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkBindAccelerationStructureMemoryInfoNV& value)
+std::ostream& operator<< (std::ostream& s, const VkBindAccelerationStructureMemoryInfoKHR& value)
 {
-       s << "VkBindAccelerationStructureMemoryInfoNV = {\n";
+       s << "VkBindAccelerationStructureMemoryInfoKHR = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
        s << "\taccelerationStructure = " << value.accelerationStructure << '\n';
@@ -8412,9 +8348,9 @@ std::ostream& operator<< (std::ostream& s, const VkBindAccelerationStructureMemo
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkWriteDescriptorSetAccelerationStructureNV& value)
+std::ostream& operator<< (std::ostream& s, const VkWriteDescriptorSetAccelerationStructureKHR& value)
 {
-       s << "VkWriteDescriptorSetAccelerationStructureNV = {\n";
+       s << "VkWriteDescriptorSetAccelerationStructureKHR = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
        s << "\taccelerationStructureCount = " << value.accelerationStructureCount << '\n';
@@ -8451,6 +8387,40 @@ std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceRayTracingPrope
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkTransformMatrixKHR& value)
+{
+       s << "VkTransformMatrixKHR = {\n";
+       s << "\tmatrix = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.matrix), DE_ARRAY_END(value.matrix)) << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAabbPositionsKHR& value)
+{
+       s << "VkAabbPositionsKHR = {\n";
+       s << "\tminX = " << value.minX << '\n';
+       s << "\tminY = " << value.minY << '\n';
+       s << "\tminZ = " << value.minZ << '\n';
+       s << "\tmaxX = " << value.maxX << '\n';
+       s << "\tmaxY = " << value.maxY << '\n';
+       s << "\tmaxZ = " << value.maxZ << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureInstanceKHR& value)
+{
+       s << "VkAccelerationStructureInstanceKHR = {\n";
+       s << "\ttransform = " << value.transform << '\n';
+       s << "\tinstanceCustomIndex = " << value.instanceCustomIndex << '\n';
+       s << "\tmask = " << value.mask << '\n';
+       s << "\tinstanceShaderBindingTableRecordOffset = " << value.instanceShaderBindingTableRecordOffset << '\n';
+       s << "\tflags = " << getGeometryInstanceFlagsKHRStr(value.flags) << '\n';
+       s << "\taccelerationStructureReference = " << value.accelerationStructureReference << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV& value)
 {
        s << "VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV = {\n";
@@ -8804,9 +8774,9 @@ std::ostream& operator<< (std::ostream& s, const VkInitializePerformanceApiInfoI
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkQueryPoolCreateInfoINTEL& value)
+std::ostream& operator<< (std::ostream& s, const VkQueryPoolPerformanceQueryCreateInfoINTEL& value)
 {
-       s << "VkQueryPoolCreateInfoINTEL = {\n";
+       s << "VkQueryPoolPerformanceQueryCreateInfoINTEL = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
        s << "\tperformanceCountersSampling = " << value.performanceCountersSampling << '\n';
@@ -9230,41 +9200,263 @@ std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderDemoteToH
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV& value)
 {
-       s << "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = {\n";
+       s << "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\ttexelBufferAlignment = " << value.texelBufferAlignment << '\n';
+       s << "\tmaxGraphicsShaderGroupCount = " << value.maxGraphicsShaderGroupCount << '\n';
+       s << "\tmaxIndirectSequenceCount = " << value.maxIndirectSequenceCount << '\n';
+       s << "\tmaxIndirectCommandsTokenCount = " << value.maxIndirectCommandsTokenCount << '\n';
+       s << "\tmaxIndirectCommandsStreamCount = " << value.maxIndirectCommandsStreamCount << '\n';
+       s << "\tmaxIndirectCommandsTokenOffset = " << value.maxIndirectCommandsTokenOffset << '\n';
+       s << "\tmaxIndirectCommandsStreamStride = " << value.maxIndirectCommandsStreamStride << '\n';
+       s << "\tminSequencesCountBufferOffsetAlignment = " << value.minSequencesCountBufferOffsetAlignment << '\n';
+       s << "\tminSequencesIndexBufferOffsetAlignment = " << value.minSequencesIndexBufferOffsetAlignment << '\n';
+       s << "\tminIndirectCommandsBufferOffsetAlignment = " << value.minIndirectCommandsBufferOffsetAlignment << '\n';
        s << '}';
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV& value)
 {
-       s << "VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT = {\n";
+       s << "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\tstorageTexelBufferOffsetAlignmentBytes = " << value.storageTexelBufferOffsetAlignmentBytes << '\n';
-       s << "\tstorageTexelBufferOffsetSingleTexelAlignment = " << value.storageTexelBufferOffsetSingleTexelAlignment << '\n';
-       s << "\tuniformTexelBufferOffsetAlignmentBytes = " << value.uniformTexelBufferOffsetAlignmentBytes << '\n';
-       s << "\tuniformTexelBufferOffsetSingleTexelAlignment = " << value.uniformTexelBufferOffsetSingleTexelAlignment << '\n';
+       s << "\tdeviceGeneratedCommands = " << value.deviceGeneratedCommands << '\n';
        s << '}';
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkAndroidSurfaceCreateInfoKHR& value)
+std::ostream& operator<< (std::ostream& s, const VkGraphicsShaderGroupCreateInfoNV& value)
 {
-       s << "VkAndroidSurfaceCreateInfoKHR = {\n";
+       s << "VkGraphicsShaderGroupCreateInfoNV = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\tflags = " << getAndroidSurfaceCreateFlagsKHRStr(value.flags) << '\n';
-       s << "\twindow = " << value.window << '\n';
+       s << "\tstageCount = " << value.stageCount << '\n';
+       s << "\tpStages = " << value.pStages << '\n';
+       s << "\tpVertexInputState = " << value.pVertexInputState << '\n';
+       s << "\tpTessellationState = " << value.pTessellationState << '\n';
        s << '}';
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkAndroidHardwareBufferUsageANDROID& value)
+std::ostream& operator<< (std::ostream& s, const VkGraphicsPipelineShaderGroupsCreateInfoNV& value)
+{
+       s << "VkGraphicsPipelineShaderGroupsCreateInfoNV = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tgroupCount = " << value.groupCount << '\n';
+       s << "\tpGroups = " << value.pGroups << '\n';
+       s << "\tpipelineCount = " << value.pipelineCount << '\n';
+       s << "\tpPipelines = " << value.pPipelines << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkBindShaderGroupIndirectCommandNV& value)
+{
+       s << "VkBindShaderGroupIndirectCommandNV = {\n";
+       s << "\tgroupIndex = " << value.groupIndex << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkBindIndexBufferIndirectCommandNV& value)
+{
+       s << "VkBindIndexBufferIndirectCommandNV = {\n";
+       s << "\tbufferAddress = " << value.bufferAddress << '\n';
+       s << "\tsize = " << value.size << '\n';
+       s << "\tindexType = " << value.indexType << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkBindVertexBufferIndirectCommandNV& value)
+{
+       s << "VkBindVertexBufferIndirectCommandNV = {\n";
+       s << "\tbufferAddress = " << value.bufferAddress << '\n';
+       s << "\tsize = " << value.size << '\n';
+       s << "\tstride = " << value.stride << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkSetStateFlagsIndirectCommandNV& value)
+{
+       s << "VkSetStateFlagsIndirectCommandNV = {\n";
+       s << "\tdata = " << value.data << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsStreamNV& value)
+{
+       s << "VkIndirectCommandsStreamNV = {\n";
+       s << "\tbuffer = " << value.buffer << '\n';
+       s << "\toffset = " << value.offset << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsLayoutTokenNV& value)
+{
+       s << "VkIndirectCommandsLayoutTokenNV = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttokenType = " << value.tokenType << '\n';
+       s << "\tstream = " << value.stream << '\n';
+       s << "\toffset = " << value.offset << '\n';
+       s << "\tvertexBindingUnit = " << value.vertexBindingUnit << '\n';
+       s << "\tvertexDynamicStride = " << value.vertexDynamicStride << '\n';
+       s << "\tpushconstantPipelineLayout = " << value.pushconstantPipelineLayout << '\n';
+       s << "\tpushconstantShaderStageFlags = " << getShaderStageFlagsStr(value.pushconstantShaderStageFlags) << '\n';
+       s << "\tpushconstantOffset = " << value.pushconstantOffset << '\n';
+       s << "\tpushconstantSize = " << value.pushconstantSize << '\n';
+       s << "\tindirectStateFlags = " << getIndirectStateFlagsNVStr(value.indirectStateFlags) << '\n';
+       s << "\tindexTypeCount = " << value.indexTypeCount << '\n';
+       s << "\tpIndexTypes = " << value.pIndexTypes << '\n';
+       s << "\tpIndexTypeValues = " << value.pIndexTypeValues << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsLayoutCreateInfoNV& value)
+{
+       s << "VkIndirectCommandsLayoutCreateInfoNV = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tflags = " << getIndirectCommandsLayoutUsageFlagsNVStr(value.flags) << '\n';
+       s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n';
+       s << "\ttokenCount = " << value.tokenCount << '\n';
+       s << "\tpTokens = " << value.pTokens << '\n';
+       s << "\tstreamCount = " << value.streamCount << '\n';
+       s << "\tpStreamStrides = " << value.pStreamStrides << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkGeneratedCommandsInfoNV& value)
+{
+       s << "VkGeneratedCommandsInfoNV = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n';
+       s << "\tpipeline = " << value.pipeline << '\n';
+       s << "\tindirectCommandsLayout = " << value.indirectCommandsLayout << '\n';
+       s << "\tstreamCount = " << value.streamCount << '\n';
+       s << "\tpStreams = " << value.pStreams << '\n';
+       s << "\tsequencesCount = " << value.sequencesCount << '\n';
+       s << "\tpreprocessBuffer = " << value.preprocessBuffer << '\n';
+       s << "\tpreprocessOffset = " << value.preprocessOffset << '\n';
+       s << "\tpreprocessSize = " << value.preprocessSize << '\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 VkGeneratedCommandsMemoryRequirementsInfoNV& value)
+{
+       s << "VkGeneratedCommandsMemoryRequirementsInfoNV = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n';
+       s << "\tpipeline = " << value.pipeline << '\n';
+       s << "\tindirectCommandsLayout = " << value.indirectCommandsLayout << '\n';
+       s << "\tmaxSequencesCount = " << value.maxSequencesCount << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT& value)
+{
+       s << "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttexelBufferAlignment = " << value.texelBufferAlignment << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT& value)
+{
+       s << "VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tstorageTexelBufferOffsetAlignmentBytes = " << value.storageTexelBufferOffsetAlignmentBytes << '\n';
+       s << "\tstorageTexelBufferOffsetSingleTexelAlignment = " << value.storageTexelBufferOffsetSingleTexelAlignment << '\n';
+       s << "\tuniformTexelBufferOffsetAlignmentBytes = " << value.uniformTexelBufferOffsetAlignmentBytes << '\n';
+       s << "\tuniformTexelBufferOffsetSingleTexelAlignment = " << value.uniformTexelBufferOffsetSingleTexelAlignment << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRenderPassTransformBeginInfoQCOM& value)
+{
+       s << "VkRenderPassTransformBeginInfoQCOM = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttransform = " << value.transform << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkCommandBufferInheritanceRenderPassTransformInfoQCOM& value)
+{
+       s << "VkCommandBufferInheritanceRenderPassTransformInfoQCOM = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttransform = " << value.transform << '\n';
+       s << "\trenderArea = " << value.renderArea << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT& value)
+{
+       s << "VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tpipelineCreationCacheControl = " << value.pipelineCreationCacheControl << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDiagnosticsConfigFeaturesNV& value)
+{
+       s << "VkPhysicalDeviceDiagnosticsConfigFeaturesNV = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tdiagnosticsConfig = " << value.diagnosticsConfig << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceDiagnosticsConfigCreateInfoNV& value)
+{
+       s << "VkDeviceDiagnosticsConfigCreateInfoNV = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tflags = " << getDeviceDiagnosticsConfigFlagsNVStr(value.flags) << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAndroidSurfaceCreateInfoKHR& value)
+{
+       s << "VkAndroidSurfaceCreateInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tflags = " << getAndroidSurfaceCreateFlagsKHRStr(value.flags) << '\n';
+       s << "\twindow = " << value.window << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAndroidHardwareBufferUsageANDROID& value)
 {
        s << "VkAndroidHardwareBufferUsageANDROID = {\n";
        s << "\tsType = " << value.sType << '\n';
@@ -9332,6 +9524,335 @@ std::ostream& operator<< (std::ostream& s, const VkExternalFormatANDROID& value)
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkDeferredOperationInfoKHR& value)
+{
+       s << "VkDeferredOperationInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\toperationHandle = " << value.operationHandle << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPipelineLibraryCreateInfoKHR& value)
+{
+       s << "VkPipelineLibraryCreateInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tlibraryCount = " << value.libraryCount << '\n';
+       s << "\tpLibraries = " << value.pLibraries << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceOrHostAddressKHR& value)
+{
+       s << "VkDeviceOrHostAddressKHR = {\n";
+       s << "\tdeviceAddress = " << value.deviceAddress << '\n';
+       s << "\thostAddress = " << value.hostAddress << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceOrHostAddressConstKHR& value)
+{
+       s << "VkDeviceOrHostAddressConstKHR = {\n";
+       s << "\tdeviceAddress = " << value.deviceAddress << '\n';
+       s << "\thostAddress = " << value.hostAddress << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureBuildOffsetInfoKHR& value)
+{
+       s << "VkAccelerationStructureBuildOffsetInfoKHR = {\n";
+       s << "\tprimitiveCount = " << value.primitiveCount << '\n';
+       s << "\tprimitiveOffset = " << value.primitiveOffset << '\n';
+       s << "\tfirstVertex = " << value.firstVertex << '\n';
+       s << "\ttransformOffset = " << value.transformOffset << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRayTracingShaderGroupCreateInfoKHR& value)
+{
+       s << "VkRayTracingShaderGroupCreateInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttype = " << value.type << '\n';
+       s << "\tgeneralShader = " << value.generalShader << '\n';
+       s << "\tclosestHitShader = " << value.closestHitShader << '\n';
+       s << "\tanyHitShader = " << value.anyHitShader << '\n';
+       s << "\tintersectionShader = " << value.intersectionShader << '\n';
+       s << "\tpShaderGroupCaptureReplayHandle = " << value.pShaderGroupCaptureReplayHandle << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRayTracingPipelineInterfaceCreateInfoKHR& value)
+{
+       s << "VkRayTracingPipelineInterfaceCreateInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmaxPayloadSize = " << value.maxPayloadSize << '\n';
+       s << "\tmaxAttributeSize = " << value.maxAttributeSize << '\n';
+       s << "\tmaxCallableSize = " << value.maxCallableSize << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRayTracingPipelineCreateInfoKHR& value)
+{
+       s << "VkRayTracingPipelineCreateInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tflags = " << getPipelineCreateFlagsStr(value.flags) << '\n';
+       s << "\tstageCount = " << value.stageCount << '\n';
+       s << "\tpStages = " << value.pStages << '\n';
+       s << "\tgroupCount = " << value.groupCount << '\n';
+       s << "\tpGroups = " << value.pGroups << '\n';
+       s << "\tmaxRecursionDepth = " << value.maxRecursionDepth << '\n';
+       s << "\tlibraries = " << value.libraries << '\n';
+       s << "\tpLibraryInterface = " << value.pLibraryInterface << '\n';
+       s << "\tlayout = " << value.layout << '\n';
+       s << "\tbasePipelineHandle = " << value.basePipelineHandle << '\n';
+       s << "\tbasePipelineIndex = " << value.basePipelineIndex << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureGeometryTrianglesDataKHR& value)
+{
+       s << "VkAccelerationStructureGeometryTrianglesDataKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tvertexFormat = " << value.vertexFormat << '\n';
+       s << "\tvertexData = " << value.vertexData << '\n';
+       s << "\tvertexStride = " << value.vertexStride << '\n';
+       s << "\tindexType = " << value.indexType << '\n';
+       s << "\tindexData = " << value.indexData << '\n';
+       s << "\ttransformData = " << value.transformData << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureGeometryAabbsDataKHR& value)
+{
+       s << "VkAccelerationStructureGeometryAabbsDataKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tdata = " << value.data << '\n';
+       s << "\tstride = " << value.stride << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureGeometryInstancesDataKHR& value)
+{
+       s << "VkAccelerationStructureGeometryInstancesDataKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tarrayOfPointers = " << value.arrayOfPointers << '\n';
+       s << "\tdata = " << value.data << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureGeometryDataKHR& value)
+{
+       s << "VkAccelerationStructureGeometryDataKHR = {\n";
+       s << "\ttriangles = " << value.triangles << '\n';
+       s << "\taabbs = " << value.aabbs << '\n';
+       s << "\tinstances = " << value.instances << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureGeometryKHR& value)
+{
+       s << "VkAccelerationStructureGeometryKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tgeometryType = " << value.geometryType << '\n';
+       s << "\tgeometry = " << value.geometry << '\n';
+       s << "\tflags = " << getGeometryFlagsKHRStr(value.flags) << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureBuildGeometryInfoKHR& value)
+{
+       s << "VkAccelerationStructureBuildGeometryInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttype = " << value.type << '\n';
+       s << "\tflags = " << getBuildAccelerationStructureFlagsKHRStr(value.flags) << '\n';
+       s << "\tupdate = " << value.update << '\n';
+       s << "\tsrcAccelerationStructure = " << value.srcAccelerationStructure << '\n';
+       s << "\tdstAccelerationStructure = " << value.dstAccelerationStructure << '\n';
+       s << "\tgeometryArrayOfPointers = " << value.geometryArrayOfPointers << '\n';
+       s << "\tgeometryCount = " << value.geometryCount << '\n';
+       s << "\tppGeometries = " << value.ppGeometries << '\n';
+       s << "\tscratchData = " << value.scratchData << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureCreateGeometryTypeInfoKHR& value)
+{
+       s << "VkAccelerationStructureCreateGeometryTypeInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tgeometryType = " << value.geometryType << '\n';
+       s << "\tmaxPrimitiveCount = " << value.maxPrimitiveCount << '\n';
+       s << "\tindexType = " << value.indexType << '\n';
+       s << "\tmaxVertexCount = " << value.maxVertexCount << '\n';
+       s << "\tvertexFormat = " << value.vertexFormat << '\n';
+       s << "\tallowsTransforms = " << value.allowsTransforms << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureCreateInfoKHR& value)
+{
+       s << "VkAccelerationStructureCreateInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tcompactedSize = " << value.compactedSize << '\n';
+       s << "\ttype = " << value.type << '\n';
+       s << "\tflags = " << getBuildAccelerationStructureFlagsKHRStr(value.flags) << '\n';
+       s << "\tmaxGeometryCount = " << value.maxGeometryCount << '\n';
+       s << "\tpGeometryInfos = " << value.pGeometryInfos << '\n';
+       s << "\tdeviceAddress = " << value.deviceAddress << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureMemoryRequirementsInfoKHR& value)
+{
+       s << "VkAccelerationStructureMemoryRequirementsInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttype = " << value.type << '\n';
+       s << "\tbuildType = " << value.buildType << '\n';
+       s << "\taccelerationStructure = " << value.accelerationStructure << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceRayTracingFeaturesKHR& value)
+{
+       s << "VkPhysicalDeviceRayTracingFeaturesKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\trayTracing = " << value.rayTracing << '\n';
+       s << "\trayTracingShaderGroupHandleCaptureReplay = " << value.rayTracingShaderGroupHandleCaptureReplay << '\n';
+       s << "\trayTracingShaderGroupHandleCaptureReplayMixed = " << value.rayTracingShaderGroupHandleCaptureReplayMixed << '\n';
+       s << "\trayTracingAccelerationStructureCaptureReplay = " << value.rayTracingAccelerationStructureCaptureReplay << '\n';
+       s << "\trayTracingIndirectTraceRays = " << value.rayTracingIndirectTraceRays << '\n';
+       s << "\trayTracingIndirectAccelerationStructureBuild = " << value.rayTracingIndirectAccelerationStructureBuild << '\n';
+       s << "\trayTracingHostAccelerationStructureCommands = " << value.rayTracingHostAccelerationStructureCommands << '\n';
+       s << "\trayQuery = " << value.rayQuery << '\n';
+       s << "\trayTracingPrimitiveCulling = " << value.rayTracingPrimitiveCulling << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceRayTracingPropertiesKHR& value)
+{
+       s << "VkPhysicalDeviceRayTracingPropertiesKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tshaderGroupHandleSize = " << value.shaderGroupHandleSize << '\n';
+       s << "\tmaxRecursionDepth = " << value.maxRecursionDepth << '\n';
+       s << "\tmaxShaderGroupStride = " << value.maxShaderGroupStride << '\n';
+       s << "\tshaderGroupBaseAlignment = " << value.shaderGroupBaseAlignment << '\n';
+       s << "\tmaxGeometryCount = " << value.maxGeometryCount << '\n';
+       s << "\tmaxInstanceCount = " << value.maxInstanceCount << '\n';
+       s << "\tmaxPrimitiveCount = " << value.maxPrimitiveCount << '\n';
+       s << "\tmaxDescriptorSetAccelerationStructures = " << value.maxDescriptorSetAccelerationStructures << '\n';
+       s << "\tshaderGroupHandleCaptureReplaySize = " << value.shaderGroupHandleCaptureReplaySize << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureDeviceAddressInfoKHR& value)
+{
+       s << "VkAccelerationStructureDeviceAddressInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\taccelerationStructure = " << value.accelerationStructure << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureVersionKHR& value)
+{
+       s << "VkAccelerationStructureVersionKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tversionData = " << value.versionData << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkStridedBufferRegionKHR& value)
+{
+       s << "VkStridedBufferRegionKHR = {\n";
+       s << "\tbuffer = " << value.buffer << '\n';
+       s << "\toffset = " << value.offset << '\n';
+       s << "\tstride = " << value.stride << '\n';
+       s << "\tsize = " << value.size << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkTraceRaysIndirectCommandKHR& value)
+{
+       s << "VkTraceRaysIndirectCommandKHR = {\n";
+       s << "\twidth = " << value.width << '\n';
+       s << "\theight = " << value.height << '\n';
+       s << "\tdepth = " << value.depth << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkCopyAccelerationStructureToMemoryInfoKHR& value)
+{
+       s << "VkCopyAccelerationStructureToMemoryInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tsrc = " << value.src << '\n';
+       s << "\tdst = " << value.dst << '\n';
+       s << "\tmode = " << value.mode << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkCopyMemoryToAccelerationStructureInfoKHR& value)
+{
+       s << "VkCopyMemoryToAccelerationStructureInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tsrc = " << value.src << '\n';
+       s << "\tdst = " << value.dst << '\n';
+       s << "\tmode = " << value.mode << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkCopyAccelerationStructureInfoKHR& value)
+{
+       s << "VkCopyAccelerationStructureInfoKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tsrc = " << value.src << '\n';
+       s << "\tdst = " << value.dst << '\n';
+       s << "\tmode = " << value.mode << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkImagePipeSurfaceCreateInfoFUCHSIA& value)
 {
        s << "VkImagePipeSurfaceCreateInfoFUCHSIA = {\n";
index 81f66fc..d141689 100644 (file)
@@ -3044,133 +3044,6 @@ struct VkCommandBufferInheritanceConditionalRenderingInfoEXT
        VkBool32                conditionalRenderingEnable;
 };
 
-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;
-       VkIndexType                                     indexType;
-};
-
-struct VkObjectTablePushConstantEntryNVX
-{
-       VkObjectEntryTypeNVX            type;
-       VkObjectEntryUsageFlagsNVX      flags;
-       VkPipelineLayout                        pipelineLayout;
-       VkShaderStageFlags                      stageFlags;
-};
-
 struct VkViewportWScalingNV
 {
        float   xcoeff;
@@ -3700,7 +3573,7 @@ struct VkRayTracingShaderGroupCreateInfoNV
 {
        VkStructureType                                 sType;
        const void*                                             pNext;
-       VkRayTracingShaderGroupTypeNV   type;
+       VkRayTracingShaderGroupTypeKHR  type;
        deUint32                                                generalShader;
        deUint32                                                closestHitShader;
        deUint32                                                anyHitShader;
@@ -3759,9 +3632,9 @@ struct VkGeometryNV
 {
        VkStructureType         sType;
        const void*                     pNext;
-       VkGeometryTypeNV        geometryType;
+       VkGeometryTypeKHR       geometryType;
        VkGeometryDataNV        geometry;
-       VkGeometryFlagsNV       flags;
+       VkGeometryFlagsKHR      flags;
 };
 
 struct VkAccelerationStructureInfoNV
@@ -3783,23 +3656,23 @@ struct VkAccelerationStructureCreateInfoNV
        VkAccelerationStructureInfoNV   info;
 };
 
-struct VkBindAccelerationStructureMemoryInfoNV
+struct VkBindAccelerationStructureMemoryInfoKHR
 {
        VkStructureType                         sType;
        const void*                                     pNext;
-       VkAccelerationStructureNV       accelerationStructure;
+       VkAccelerationStructureKHR      accelerationStructure;
        VkDeviceMemory                          memory;
        VkDeviceSize                            memoryOffset;
        deUint32                                        deviceIndexCount;
        const deUint32*                         pDeviceIndices;
 };
 
-struct VkWriteDescriptorSetAccelerationStructureNV
+struct VkWriteDescriptorSetAccelerationStructureKHR
 {
        VkStructureType                                         sType;
        const void*                                                     pNext;
        deUint32                                                        accelerationStructureCount;
-       const VkAccelerationStructureNV*        pAccelerationStructures;
+       const VkAccelerationStructureKHR*       pAccelerationStructures;
 };
 
 struct VkAccelerationStructureMemoryRequirementsInfoNV
@@ -3824,6 +3697,31 @@ struct VkPhysicalDeviceRayTracingPropertiesNV
        deUint32                maxDescriptorSetAccelerationStructures;
 };
 
+struct VkTransformMatrixKHR
+{
+       float   matrix[3][4];
+};
+
+struct VkAabbPositionsKHR
+{
+       float   minX;
+       float   minY;
+       float   minZ;
+       float   maxX;
+       float   maxY;
+       float   maxZ;
+};
+
+struct VkAccelerationStructureInstanceKHR
+{
+       VkTransformMatrixKHR            transform;
+       deUint32                                        instanceCustomIndex:24;
+       deUint32                                        mask:8;
+       deUint32                                        instanceShaderBindingTableRecordOffset:24;
+       VkGeometryInstanceFlagsKHR      flags:8;
+       deUint64                                        accelerationStructureReference;
+};
+
 struct VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV
 {
        VkStructureType sType;
@@ -4081,7 +3979,7 @@ struct VkInitializePerformanceApiInfoINTEL
        void*                   pUserData;
 };
 
-struct VkQueryPoolCreateInfoINTEL
+struct VkQueryPoolPerformanceQueryCreateInfoINTEL
 {
        VkStructureType                                 sType;
        const void*                                             pNext;
@@ -4393,6 +4291,138 @@ struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT
        VkBool32                shaderDemoteToHelperInvocation;
 };
 
+struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV
+{
+       VkStructureType sType;
+       void*                   pNext;
+       deUint32                maxGraphicsShaderGroupCount;
+       deUint32                maxIndirectSequenceCount;
+       deUint32                maxIndirectCommandsTokenCount;
+       deUint32                maxIndirectCommandsStreamCount;
+       deUint32                maxIndirectCommandsTokenOffset;
+       deUint32                maxIndirectCommandsStreamStride;
+       deUint32                minSequencesCountBufferOffsetAlignment;
+       deUint32                minSequencesIndexBufferOffsetAlignment;
+       deUint32                minIndirectCommandsBufferOffsetAlignment;
+};
+
+struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                deviceGeneratedCommands;
+};
+
+struct VkGraphicsShaderGroupCreateInfoNV
+{
+       VkStructureType                                                                 sType;
+       const void*                                                                             pNext;
+       deUint32                                                                                stageCount;
+       const VkPipelineShaderStageCreateInfo*                  pStages;
+       const VkPipelineVertexInputStateCreateInfo*             pVertexInputState;
+       const VkPipelineTessellationStateCreateInfo*    pTessellationState;
+};
+
+struct VkGraphicsPipelineShaderGroupsCreateInfoNV
+{
+       VkStructureType                                                         sType;
+       const void*                                                                     pNext;
+       deUint32                                                                        groupCount;
+       const VkGraphicsShaderGroupCreateInfoNV*        pGroups;
+       deUint32                                                                        pipelineCount;
+       const VkPipeline*                                                       pPipelines;
+};
+
+struct VkBindShaderGroupIndirectCommandNV
+{
+       deUint32        groupIndex;
+};
+
+struct VkBindIndexBufferIndirectCommandNV
+{
+       VkDeviceAddress bufferAddress;
+       deUint32                size;
+       VkIndexType             indexType;
+};
+
+struct VkBindVertexBufferIndirectCommandNV
+{
+       VkDeviceAddress bufferAddress;
+       deUint32                size;
+       deUint32                stride;
+};
+
+struct VkSetStateFlagsIndirectCommandNV
+{
+       deUint32        data;
+};
+
+struct VkIndirectCommandsStreamNV
+{
+       VkBuffer                buffer;
+       VkDeviceSize    offset;
+};
+
+struct VkIndirectCommandsLayoutTokenNV
+{
+       VkStructureType                                 sType;
+       const void*                                             pNext;
+       VkIndirectCommandsTokenTypeNV   tokenType;
+       deUint32                                                stream;
+       deUint32                                                offset;
+       deUint32                                                vertexBindingUnit;
+       VkBool32                                                vertexDynamicStride;
+       VkPipelineLayout                                pushconstantPipelineLayout;
+       VkShaderStageFlags                              pushconstantShaderStageFlags;
+       deUint32                                                pushconstantOffset;
+       deUint32                                                pushconstantSize;
+       VkIndirectStateFlagsNV                  indirectStateFlags;
+       deUint32                                                indexTypeCount;
+       const VkIndexType*                              pIndexTypes;
+       const deUint32*                                 pIndexTypeValues;
+};
+
+struct VkIndirectCommandsLayoutCreateInfoNV
+{
+       VkStructureType                                                 sType;
+       const void*                                                             pNext;
+       VkIndirectCommandsLayoutUsageFlagsNV    flags;
+       VkPipelineBindPoint                                             pipelineBindPoint;
+       deUint32                                                                tokenCount;
+       const VkIndirectCommandsLayoutTokenNV*  pTokens;
+       deUint32                                                                streamCount;
+       const deUint32*                                                 pStreamStrides;
+};
+
+struct VkGeneratedCommandsInfoNV
+{
+       VkStructureType                                         sType;
+       const void*                                                     pNext;
+       VkPipelineBindPoint                                     pipelineBindPoint;
+       VkPipeline                                                      pipeline;
+       VkIndirectCommandsLayoutNV                      indirectCommandsLayout;
+       deUint32                                                        streamCount;
+       const VkIndirectCommandsStreamNV*       pStreams;
+       deUint32                                                        sequencesCount;
+       VkBuffer                                                        preprocessBuffer;
+       VkDeviceSize                                            preprocessOffset;
+       VkDeviceSize                                            preprocessSize;
+       VkBuffer                                                        sequencesCountBuffer;
+       VkDeviceSize                                            sequencesCountOffset;
+       VkBuffer                                                        sequencesIndexBuffer;
+       VkDeviceSize                                            sequencesIndexOffset;
+};
+
+struct VkGeneratedCommandsMemoryRequirementsInfoNV
+{
+       VkStructureType                         sType;
+       const void*                                     pNext;
+       VkPipelineBindPoint                     pipelineBindPoint;
+       VkPipeline                                      pipeline;
+       VkIndirectCommandsLayoutNV      indirectCommandsLayout;
+       deUint32                                        maxSequencesCount;
+};
+
 struct VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT
 {
        VkStructureType sType;
@@ -4410,6 +4440,42 @@ struct VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT
        VkBool32                uniformTexelBufferOffsetSingleTexelAlignment;
 };
 
+struct VkRenderPassTransformBeginInfoQCOM
+{
+       VkStructureType                                 sType;
+       void*                                                   pNext;
+       VkSurfaceTransformFlagBitsKHR   transform;
+};
+
+struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM
+{
+       VkStructureType                                 sType;
+       void*                                                   pNext;
+       VkSurfaceTransformFlagBitsKHR   transform;
+       VkRect2D                                                renderArea;
+};
+
+struct VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                pipelineCreationCacheControl;
+};
+
+struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                diagnosticsConfig;
+};
+
+struct VkDeviceDiagnosticsConfigCreateInfoNV
+{
+       VkStructureType                                         sType;
+       const void*                                                     pNext;
+       VkDeviceDiagnosticsConfigFlagsNV        flags;
+};
+
 struct VkAndroidSurfaceCreateInfoKHR
 {
        VkStructureType                                         sType;
@@ -4468,6 +4534,257 @@ struct VkExternalFormatANDROID
        deUint64                externalFormat;
 };
 
+struct VkDeferredOperationInfoKHR
+{
+       VkStructureType                 sType;
+       const void*                             pNext;
+       VkDeferredOperationKHR  operationHandle;
+};
+
+struct VkPipelineLibraryCreateInfoKHR
+{
+       VkStructureType         sType;
+       const void*                     pNext;
+       deUint32                        libraryCount;
+       const VkPipeline*       pLibraries;
+};
+
+union VkDeviceOrHostAddressKHR
+{
+       VkDeviceAddress deviceAddress;
+       void*                   hostAddress;
+};
+
+union VkDeviceOrHostAddressConstKHR
+{
+       VkDeviceAddress deviceAddress;
+       const void*             hostAddress;
+};
+
+struct VkAccelerationStructureBuildOffsetInfoKHR
+{
+       deUint32        primitiveCount;
+       deUint32        primitiveOffset;
+       deUint32        firstVertex;
+       deUint32        transformOffset;
+};
+
+struct VkRayTracingShaderGroupCreateInfoKHR
+{
+       VkStructureType                                 sType;
+       const void*                                             pNext;
+       VkRayTracingShaderGroupTypeKHR  type;
+       deUint32                                                generalShader;
+       deUint32                                                closestHitShader;
+       deUint32                                                anyHitShader;
+       deUint32                                                intersectionShader;
+       const void*                                             pShaderGroupCaptureReplayHandle;
+};
+
+struct VkRayTracingPipelineInterfaceCreateInfoKHR
+{
+       VkStructureType sType;
+       const void*             pNext;
+       deUint32                maxPayloadSize;
+       deUint32                maxAttributeSize;
+       deUint32                maxCallableSize;
+};
+
+struct VkRayTracingPipelineCreateInfoKHR
+{
+       VkStructureType                                                                         sType;
+       const void*                                                                                     pNext;
+       VkPipelineCreateFlags                                                           flags;
+       deUint32                                                                                        stageCount;
+       const VkPipelineShaderStageCreateInfo*                          pStages;
+       deUint32                                                                                        groupCount;
+       const VkRayTracingShaderGroupCreateInfoKHR*                     pGroups;
+       deUint32                                                                                        maxRecursionDepth;
+       VkPipelineLibraryCreateInfoKHR                                          libraries;
+       const VkRayTracingPipelineInterfaceCreateInfoKHR*       pLibraryInterface;
+       VkPipelineLayout                                                                        layout;
+       VkPipeline                                                                                      basePipelineHandle;
+       deInt32                                                                                         basePipelineIndex;
+};
+
+struct VkAccelerationStructureGeometryTrianglesDataKHR
+{
+       VkStructureType                                 sType;
+       const void*                                             pNext;
+       VkFormat                                                vertexFormat;
+       VkDeviceOrHostAddressConstKHR   vertexData;
+       VkDeviceSize                                    vertexStride;
+       VkIndexType                                             indexType;
+       VkDeviceOrHostAddressConstKHR   indexData;
+       VkDeviceOrHostAddressConstKHR   transformData;
+};
+
+struct VkAccelerationStructureGeometryAabbsDataKHR
+{
+       VkStructureType                                 sType;
+       const void*                                             pNext;
+       VkDeviceOrHostAddressConstKHR   data;
+       VkDeviceSize                                    stride;
+};
+
+struct VkAccelerationStructureGeometryInstancesDataKHR
+{
+       VkStructureType                                 sType;
+       const void*                                             pNext;
+       VkBool32                                                arrayOfPointers;
+       VkDeviceOrHostAddressConstKHR   data;
+};
+
+union VkAccelerationStructureGeometryDataKHR
+{
+       VkAccelerationStructureGeometryTrianglesDataKHR triangles;
+       VkAccelerationStructureGeometryAabbsDataKHR             aabbs;
+       VkAccelerationStructureGeometryInstancesDataKHR instances;
+};
+
+struct VkAccelerationStructureGeometryKHR
+{
+       VkStructureType                                                 sType;
+       const void*                                                             pNext;
+       VkGeometryTypeKHR                                               geometryType;
+       VkAccelerationStructureGeometryDataKHR  geometry;
+       VkGeometryFlagsKHR                                              flags;
+};
+
+struct VkAccelerationStructureBuildGeometryInfoKHR
+{
+       VkStructureType                                                                         sType;
+       const void*                                                                                     pNext;
+       VkAccelerationStructureTypeKHR                                          type;
+       VkBuildAccelerationStructureFlagsKHR                            flags;
+       VkBool32                                                                                        update;
+       VkAccelerationStructureKHR                                                      srcAccelerationStructure;
+       VkAccelerationStructureKHR                                                      dstAccelerationStructure;
+       VkBool32                                                                                        geometryArrayOfPointers;
+       deUint32                                                                                        geometryCount;
+       const VkAccelerationStructureGeometryKHR* const*        ppGeometries;
+       VkDeviceOrHostAddressKHR                                                        scratchData;
+};
+
+struct VkAccelerationStructureCreateGeometryTypeInfoKHR
+{
+       VkStructureType         sType;
+       const void*                     pNext;
+       VkGeometryTypeKHR       geometryType;
+       deUint32                        maxPrimitiveCount;
+       VkIndexType                     indexType;
+       deUint32                        maxVertexCount;
+       VkFormat                        vertexFormat;
+       VkBool32                        allowsTransforms;
+};
+
+struct VkAccelerationStructureCreateInfoKHR
+{
+       VkStructureType                                                                                 sType;
+       const void*                                                                                             pNext;
+       VkDeviceSize                                                                                    compactedSize;
+       VkAccelerationStructureTypeKHR                                                  type;
+       VkBuildAccelerationStructureFlagsKHR                                    flags;
+       deUint32                                                                                                maxGeometryCount;
+       const VkAccelerationStructureCreateGeometryTypeInfoKHR* pGeometryInfos;
+       VkDeviceAddress                                                                                 deviceAddress;
+};
+
+struct VkAccelerationStructureMemoryRequirementsInfoKHR
+{
+       VkStructureType                                                                         sType;
+       const void*                                                                                     pNext;
+       VkAccelerationStructureMemoryRequirementsTypeKHR        type;
+       VkAccelerationStructureBuildTypeKHR                                     buildType;
+       VkAccelerationStructureKHR                                                      accelerationStructure;
+};
+
+struct VkPhysicalDeviceRayTracingFeaturesKHR
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                rayTracing;
+       VkBool32                rayTracingShaderGroupHandleCaptureReplay;
+       VkBool32                rayTracingShaderGroupHandleCaptureReplayMixed;
+       VkBool32                rayTracingAccelerationStructureCaptureReplay;
+       VkBool32                rayTracingIndirectTraceRays;
+       VkBool32                rayTracingIndirectAccelerationStructureBuild;
+       VkBool32                rayTracingHostAccelerationStructureCommands;
+       VkBool32                rayQuery;
+       VkBool32                rayTracingPrimitiveCulling;
+};
+
+struct VkPhysicalDeviceRayTracingPropertiesKHR
+{
+       VkStructureType sType;
+       void*                   pNext;
+       deUint32                shaderGroupHandleSize;
+       deUint32                maxRecursionDepth;
+       deUint32                maxShaderGroupStride;
+       deUint32                shaderGroupBaseAlignment;
+       deUint64                maxGeometryCount;
+       deUint64                maxInstanceCount;
+       deUint64                maxPrimitiveCount;
+       deUint32                maxDescriptorSetAccelerationStructures;
+       deUint32                shaderGroupHandleCaptureReplaySize;
+};
+
+struct VkAccelerationStructureDeviceAddressInfoKHR
+{
+       VkStructureType                         sType;
+       const void*                                     pNext;
+       VkAccelerationStructureKHR      accelerationStructure;
+};
+
+struct VkAccelerationStructureVersionKHR
+{
+       VkStructureType sType;
+       const void*             pNext;
+       const deUint8*  versionData;
+};
+
+struct VkStridedBufferRegionKHR
+{
+       VkBuffer                buffer;
+       VkDeviceSize    offset;
+       VkDeviceSize    stride;
+       VkDeviceSize    size;
+};
+
+struct VkTraceRaysIndirectCommandKHR
+{
+       deUint32        width;
+       deUint32        height;
+       deUint32        depth;
+};
+
+struct VkCopyAccelerationStructureToMemoryInfoKHR
+{
+       VkStructureType                                         sType;
+       const void*                                                     pNext;
+       VkAccelerationStructureKHR                      src;
+       VkDeviceOrHostAddressKHR                        dst;
+       VkCopyAccelerationStructureModeKHR      mode;
+};
+
+struct VkCopyMemoryToAccelerationStructureInfoKHR
+{
+       VkStructureType                                         sType;
+       const void*                                                     pNext;
+       VkDeviceOrHostAddressConstKHR           src;
+       VkAccelerationStructureKHR                      dst;
+       VkCopyAccelerationStructureModeKHR      mode;
+};
+
+struct VkCopyAccelerationStructureInfoKHR
+{
+       VkStructureType                                         sType;
+       const void*                                                     pNext;
+       VkAccelerationStructureKHR                      src;
+       VkAccelerationStructureKHR                      dst;
+       VkCopyAccelerationStructureModeKHR      mode;
+};
+
 struct VkImagePipeSurfaceCreateInfoFUCHSIA
 {
        VkStructureType                                                 sType;
@@ -4935,5 +5252,17 @@ typedef VkMemoryOpaqueCaptureAddressAllocateInfo VkMemoryOpaqueCaptureAddressAll
 
 typedef VkDeviceMemoryOpaqueCaptureAddressInfo VkDeviceMemoryOpaqueCaptureAddressInfoKHR;
 
+typedef VkBindAccelerationStructureMemoryInfoKHR VkBindAccelerationStructureMemoryInfoNV;
+
+typedef VkWriteDescriptorSetAccelerationStructureKHR VkWriteDescriptorSetAccelerationStructureNV;
+
+typedef VkTransformMatrixKHR VkTransformMatrixNV;
+
+typedef VkAabbPositionsKHR VkAabbPositionsNV;
+
+typedef VkAccelerationStructureInstanceKHR VkAccelerationStructureInstanceNV;
+
+typedef VkQueryPoolPerformanceQueryCreateInfoINTEL VkQueryPoolCreateInfoINTEL;
+
 typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT;
 
index 980d114..968da90 100644 (file)
@@ -443,81 +443,6 @@ inline VkShaderResourceUsageAMD makeShaderResourceUsageAMD (deUint32 numUsedVgpr
        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, VkIndexType indexType)
-{
-       VkObjectTableIndexBufferEntryNVX res;
-       res.type                = type;
-       res.flags               = flags;
-       res.buffer              = buffer;
-       res.indexType   = indexType;
-       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 VkViewportWScalingNV makeViewportWScalingNV (float xcoeff, float ycoeff)
 {
        VkViewportWScalingNV res;
@@ -614,6 +539,18 @@ inline VkCoarseSampleOrderCustomNV makeCoarseSampleOrderCustomNV (VkShadingRateP
        return res;
 }
 
+inline VkAabbPositionsKHR makeAabbPositionsKHR (float minX, float minY, float minZ, float maxX, float maxY, float maxZ)
+{
+       VkAabbPositionsKHR res;
+       res.minX        = minX;
+       res.minY        = minY;
+       res.minZ        = minZ;
+       res.maxX        = maxX;
+       res.maxY        = maxY;
+       res.maxZ        = maxZ;
+       return res;
+}
+
 inline VkVertexInputBindingDivisorDescriptionEXT makeVertexInputBindingDivisorDescriptionEXT (deUint32 binding, deUint32 divisor)
 {
        VkVertexInputBindingDivisorDescriptionEXT res;
@@ -637,3 +574,72 @@ inline VkDrawMeshTasksIndirectCommandNV makeDrawMeshTasksIndirectCommandNV (deUi
        res.firstTask   = firstTask;
        return res;
 }
+
+inline VkBindShaderGroupIndirectCommandNV makeBindShaderGroupIndirectCommandNV (deUint32 groupIndex)
+{
+       VkBindShaderGroupIndirectCommandNV res;
+       res.groupIndex  = groupIndex;
+       return res;
+}
+
+inline VkBindIndexBufferIndirectCommandNV makeBindIndexBufferIndirectCommandNV (VkDeviceAddress bufferAddress, deUint32 size, VkIndexType indexType)
+{
+       VkBindIndexBufferIndirectCommandNV res;
+       res.bufferAddress       = bufferAddress;
+       res.size                        = size;
+       res.indexType           = indexType;
+       return res;
+}
+
+inline VkBindVertexBufferIndirectCommandNV makeBindVertexBufferIndirectCommandNV (VkDeviceAddress bufferAddress, deUint32 size, deUint32 stride)
+{
+       VkBindVertexBufferIndirectCommandNV res;
+       res.bufferAddress       = bufferAddress;
+       res.size                        = size;
+       res.stride                      = stride;
+       return res;
+}
+
+inline VkSetStateFlagsIndirectCommandNV makeSetStateFlagsIndirectCommandNV (deUint32 data)
+{
+       VkSetStateFlagsIndirectCommandNV res;
+       res.data        = data;
+       return res;
+}
+
+inline VkIndirectCommandsStreamNV makeIndirectCommandsStreamNV (VkBuffer buffer, VkDeviceSize offset)
+{
+       VkIndirectCommandsStreamNV res;
+       res.buffer      = buffer;
+       res.offset      = offset;
+       return res;
+}
+
+inline VkAccelerationStructureBuildOffsetInfoKHR makeAccelerationStructureBuildOffsetInfoKHR (deUint32 primitiveCount, deUint32 primitiveOffset, deUint32 firstVertex, deUint32 transformOffset)
+{
+       VkAccelerationStructureBuildOffsetInfoKHR res;
+       res.primitiveCount      = primitiveCount;
+       res.primitiveOffset     = primitiveOffset;
+       res.firstVertex         = firstVertex;
+       res.transformOffset     = transformOffset;
+       return res;
+}
+
+inline VkStridedBufferRegionKHR makeStridedBufferRegionKHR (VkBuffer buffer, VkDeviceSize offset, VkDeviceSize stride, VkDeviceSize size)
+{
+       VkStridedBufferRegionKHR res;
+       res.buffer      = buffer;
+       res.offset      = offset;
+       res.stride      = stride;
+       res.size        = size;
+       return res;
+}
+
+inline VkTraceRaysIndirectCommandKHR makeTraceRaysIndirectCommandKHR (deUint32 width, deUint32 height, deUint32 depth)
+{
+       VkTraceRaysIndirectCommandKHR res;
+       res.width       = width;
+       res.height      = height;
+       res.depth       = depth;
+       return res;
+}
index b570bde..0db26a0 100644 (file)
@@ -191,14 +191,6 @@ virtual void                               cmdDrawIndexedIndirectCountAMD                                  (VkCommandBuffer commandBuffe
 virtual VkResult                       getShaderInfoAMD                                                                (VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, deUintptr* pInfoSize, void* pInfo) const = 0;
 virtual void                           cmdBeginConditionalRenderingEXT                                 (VkCommandBuffer commandBuffer, const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin) const = 0;
 virtual void                           cmdEndConditionalRenderingEXT                                   (VkCommandBuffer commandBuffer) 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                           cmdSetViewportWScalingNV                                                (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewportWScalingNV* pViewportWScalings) const = 0;
 virtual VkResult                       displayPowerControlEXT                                                  (VkDevice device, VkDisplayKHR display, const VkDisplayPowerInfoEXT* pDisplayPowerInfo) const = 0;
 virtual VkResult                       registerDeviceEventEXT                                                  (VkDevice device, const VkDeviceEventInfoEXT* pDeviceEventInfo, const VkAllocationCallbacks* pAllocator, VkFence* pFence) const = 0;
@@ -226,16 +218,20 @@ virtual void                              cmdBindShadingRateImageNV                                               (VkCommandBuffer commandBuffer, V
 virtual void                           cmdSetViewportShadingRatePaletteNV                              (VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkShadingRatePaletteNV* pShadingRatePalettes) const = 0;
 virtual void                           cmdSetCoarseSampleOrderNV                                               (VkCommandBuffer commandBuffer, VkCoarseSampleOrderTypeNV sampleOrderType, deUint32 customSampleOrderCount, const VkCoarseSampleOrderCustomNV* pCustomSampleOrders) const = 0;
 virtual VkResult                       createAccelerationStructureNV                                   (VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure) const = 0;
+virtual void                           destroyAccelerationStructureKHR                                 (VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator) const = 0;
 virtual void                           destroyAccelerationStructureNV                                  (VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator) const = 0;
 virtual void                           getAccelerationStructureMemoryRequirementsNV    (VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements) const = 0;
-virtual VkResult                       bindAccelerationStructureMemoryNV                               (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos) const = 0;
-virtual void                           cmdBuildAccelerationStructureNV                                 (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset) const = 0;
-virtual void                           cmdCopyAccelerationStructureNV                                  (VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeNV mode) const = 0;
+virtual VkResult                       bindAccelerationStructureMemoryKHR                              (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos) const = 0;
+virtual VkResult                       bindAccelerationStructureMemoryNV                               (VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos) const = 0;
+virtual void                           cmdBuildAccelerationStructureNV                                 (VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset) const = 0;
+virtual void                           cmdCopyAccelerationStructureNV                                  (VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode) const = 0;
 virtual void                           cmdTraceRaysNV                                                                  (VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, deUint32 width, deUint32 height, deUint32 depth) const = 0;
 virtual VkResult                       createRayTracingPipelinesNV                                             (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
+virtual VkResult                       getRayTracingShaderGroupHandlesKHR                              (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const = 0;
 virtual VkResult                       getRayTracingShaderGroupHandlesNV                               (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const = 0;
-virtual VkResult                       getAccelerationStructureHandleNV                                (VkDevice device, VkAccelerationStructureNV accelerationStructure, deUintptr dataSize, void* pData) const = 0;
-virtual void                           cmdWriteAccelerationStructuresPropertiesNV              (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const = 0;
+virtual VkResult                       getAccelerationStructureHandleNV                                (VkDevice device, VkAccelerationStructureKHR accelerationStructure, deUintptr dataSize, void* pData) const = 0;
+virtual void                           cmdWriteAccelerationStructuresPropertiesKHR             (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const = 0;
+virtual void                           cmdWriteAccelerationStructuresPropertiesNV              (VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery) const = 0;
 virtual VkResult                       compileDeferredNV                                                               (VkDevice device, VkPipeline pipeline, deUint32 shader) const = 0;
 virtual VkResult                       getMemoryHostPointerPropertiesEXT                               (VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, const void* pHostPointer, VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties) const = 0;
 virtual void                           cmdWriteBufferMarkerAMD                                                 (VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkBuffer dstBuffer, VkDeviceSize dstOffset, deUint32 marker) const = 0;
@@ -258,8 +254,37 @@ virtual VkResult                   getPerformanceParameterINTEL                                    (VkDevice device, VkPerforma
 virtual void                           setLocalDimmingAMD                                                              (VkDevice device, VkSwapchainKHR swapChain, VkBool32 localDimmingEnable) const = 0;
 virtual VkDeviceAddress                getBufferDeviceAddressEXT                                               (VkDevice device, const VkBufferDeviceAddressInfo* pInfo) const = 0;
 virtual void                           cmdSetLineStippleEXT                                                    (VkCommandBuffer commandBuffer, deUint32 lineStippleFactor, deUint16 lineStipplePattern) const = 0;
+virtual void                           getGeneratedCommandsMemoryRequirementsNV                (VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements) const = 0;
+virtual void                           cmdPreprocessGeneratedCommandsNV                                (VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) const = 0;
+virtual void                           cmdExecuteGeneratedCommandsNV                                   (VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo) const = 0;
+virtual void                           cmdBindPipelineShaderGroupNV                                    (VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, deUint32 groupIndex) const = 0;
+virtual VkResult                       createIndirectCommandsLayoutNV                                  (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout) const = 0;
+virtual void                           destroyIndirectCommandsLayoutNV                                 (VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const = 0;
 virtual VkResult                       getAndroidHardwareBufferPropertiesANDROID               (VkDevice device, const struct pt::AndroidHardwareBufferPtr buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties) const = 0;
 virtual VkResult                       getMemoryAndroidHardwareBufferANDROID                   (VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct pt::AndroidHardwareBufferPtr* pBuffer) const = 0;
+virtual VkResult                       createDeferredOperationKHR                                              (VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation) const = 0;
+virtual void                           destroyDeferredOperationKHR                                             (VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual uint32_t                       getDeferredOperationMaxConcurrencyKHR                   (VkDevice device, VkDeferredOperationKHR operation) const = 0;
+virtual VkResult                       getDeferredOperationResultKHR                                   (VkDevice device, VkDeferredOperationKHR operation) const = 0;
+virtual VkResult                       deferredOperationJoinKHR                                                (VkDevice device, VkDeferredOperationKHR operation) const = 0;
+virtual VkResult                       createAccelerationStructureKHR                                  (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure) const = 0;
+virtual void                           getAccelerationStructureMemoryRequirementsKHR   (VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements) const = 0;
+virtual void                           cmdBuildAccelerationStructureKHR                                (VkCommandBuffer commandBuffer, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos) const = 0;
+virtual void                           cmdBuildAccelerationStructureIndirectKHR                (VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, deUint32 indirectStride) const = 0;
+virtual VkResult                       buildAccelerationStructureKHR                                   (VkDevice device, deUint32 infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos) const = 0;
+virtual VkResult                       copyAccelerationStructureKHR                                    (VkDevice device, const VkCopyAccelerationStructureInfoKHR* pInfo) const = 0;
+virtual VkResult                       copyAccelerationStructureToMemoryKHR                    (VkDevice device, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) const = 0;
+virtual VkResult                       copyMemoryToAccelerationStructureKHR                    (VkDevice device, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) const = 0;
+virtual VkResult                       writeAccelerationStructuresPropertiesKHR                (VkDevice device, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, deUintptr dataSize, void* pData, deUintptr stride) const = 0;
+virtual void                           cmdCopyAccelerationStructureKHR                                 (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo) const = 0;
+virtual void                           cmdCopyAccelerationStructureToMemoryKHR                 (VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo) const = 0;
+virtual void                           cmdCopyMemoryToAccelerationStructureKHR                 (VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo) const = 0;
+virtual void                           cmdTraceRaysKHR                                                                 (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, deUint32 width, deUint32 height, deUint32 depth) const = 0;
+virtual VkResult                       createRayTracingPipelinesKHR                                    (VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines) const = 0;
+virtual VkDeviceAddress                getAccelerationStructureDeviceAddressKHR                (VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo) const = 0;
+virtual VkResult                       getRayTracingCaptureReplayShaderGroupHandlesKHR (VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData) const = 0;
+virtual void                           cmdTraceRaysIndirectKHR                                                 (VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, VkBuffer buffer, VkDeviceSize offset) const = 0;
+virtual VkResult                       getDeviceAccelerationStructureCompatibilityKHR  (VkDevice device, const VkAccelerationStructureVersionKHR* version) const = 0;
 virtual VkResult                       getMemoryWin32HandleKHR                                                 (VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const = 0;
 virtual VkResult                       getMemoryWin32HandlePropertiesKHR                               (VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, pt::Win32Handle handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties) const = 0;
 virtual VkResult                       importSemaphoreWin32HandleKHR                                   (VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo) const = 0;
index 34f38ce..c49e42b 100644 (file)
@@ -49,7 +49,6 @@ virtual VkResult      createDebugReportCallbackEXT                                                                    (VkInstance instance, cons
 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;
-virtual void           getPhysicalDeviceGeneratedCommandsPropertiesNVX                                 (VkPhysicalDevice physicalDevice, VkDeviceGeneratedCommandsFeaturesNVX* pFeatures, VkDeviceGeneratedCommandsLimitsNVX* pLimits) const = 0;
 virtual VkResult       releaseDisplayEXT                                                                                               (VkPhysicalDevice physicalDevice, VkDisplayKHR display) const = 0;
 virtual VkResult       getPhysicalDeviceSurfaceCapabilities2EXT                                                (VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, VkSurfaceCapabilities2EXT* pSurfaceCapabilities) const = 0;
 virtual VkResult       createDebugUtilsMessengerEXT                                                                    (VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDebugUtilsMessengerEXT* pMessenger) const = 0;
index 2374f35..eb14908 100644 (file)
@@ -47,7 +47,10 @@ extern "C" {
 #define VK_VERSION_MINOR(version) (((deUint32)(version) >> 12) & 0x3ff)
 #define VK_VERSION_PATCH(version) ((deUint32)(version) & 0xfff)
 // Version of this file
-#define VK_HEADER_VERSION 132
+#define VK_HEADER_VERSION 135
+
+// Complete version of this file
+#define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION)
 
 
 #define VK_NULL_HANDLE 0
@@ -148,9 +151,15 @@ typedef enum VkResult {
     VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,
     VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,
     VK_ERROR_INVALID_SHADER_NV = -1000012000,
+    VK_ERROR_INCOMPATIBLE_VERSION_KHR = -1000150000,
     VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT = -1000158000,
     VK_ERROR_NOT_PERMITTED_EXT = -1000174001,
     VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT = -1000255000,
+    VK_THREAD_IDLE_KHR = 1000268000,
+    VK_THREAD_DONE_KHR = 1000268001,
+    VK_OPERATION_DEFERRED_KHR = 1000268002,
+    VK_OPERATION_NOT_DEFERRED_KHR = 1000268003,
+    VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT = 1000297000,
     VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY,
     VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = VK_ERROR_INVALID_EXTERNAL_HANDLE,
     VK_ERROR_FRAGMENTATION_EXT = VK_ERROR_FRAGMENTATION,
@@ -387,12 +396,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT = 1000081001,
     VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT = 1000081002,
     VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000,
-    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_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV = 1000087000,
     VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT = 1000090000,
     VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT = 1000091000,
@@ -456,6 +459,27 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT = 1000148001,
     VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT = 1000148002,
     VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV = 1000149000,
+    VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR = 1000165006,
+    VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR = 1000165007,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR = 1000150000,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR = 1000150001,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR = 1000150002,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR = 1000150003,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR = 1000150004,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR = 1000150005,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR = 1000150006,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_KHR = 1000150007,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR = 1000150008,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR = 1000150009,
+    VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR = 1000150010,
+    VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR = 1000150011,
+    VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR = 1000150012,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR = 1000150013,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR = 1000150014,
+    VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR = 1000150015,
+    VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR = 1000150016,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR = 1000150017,
+    VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR = 1000150018,
     VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV = 1000152000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV = 1000154000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV = 1000154001,
@@ -476,8 +500,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_GEOMETRY_NV = 1000165003,
     VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV = 1000165004,
     VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV = 1000165005,
-    VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV = 1000165006,
-    VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV = 1000165007,
     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV = 1000165008,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV = 1000165009,
     VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV = 1000165011,
@@ -554,6 +576,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT = 1000259001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT = 1000259002,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT = 1000265000,
+    VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR = 1000268000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR = 1000269000,
     VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR = 1000269001,
     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR = 1000269002,
@@ -561,8 +584,22 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR = 1000269004,
     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR = 1000269005,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT = 1000276000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV = 1000277000,
+    VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV = 1000277001,
+    VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV = 1000277002,
+    VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV = 1000277003,
+    VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV = 1000277004,
+    VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV = 1000277005,
+    VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV = 1000277006,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV = 1000277007,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT = 1000281000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT = 1000281001,
+    VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM = 1000282000,
+    VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM = 1000282001,
+    VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR = 1000290000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT = 1000297000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV = 1000300000,
+    VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV = 1000300001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
     VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
@@ -646,6 +683,8 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES,
     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO,
     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT,
+    VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR,
+    VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,
     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES,
@@ -676,6 +715,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO,
     VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES,
+    VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL,
     VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO,
     VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,
     VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),
@@ -1022,8 +1062,10 @@ typedef enum VkQueryType {
     VK_QUERY_TYPE_TIMESTAMP = 2,
     VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004,
     VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR = 1000116000,
-    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000,
+    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000165000,
+    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150000,
     VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL = 1000210000,
+    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR,
     VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION,
     VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP,
     VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1),
@@ -1365,7 +1407,8 @@ typedef enum VkDescriptorType {
     VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9,
     VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10,
     VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = 1000138000,
-    VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
+    VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000165000,
+    VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR,
     VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER,
     VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
     VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1),
@@ -1394,7 +1437,8 @@ typedef enum VkAttachmentStoreOp {
 typedef enum VkPipelineBindPoint {
     VK_PIPELINE_BIND_POINT_GRAPHICS = 0,
     VK_PIPELINE_BIND_POINT_COMPUTE = 1,
-    VK_PIPELINE_BIND_POINT_RAY_TRACING_NV = 1000165000,
+    VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR = 1000165000,
+    VK_PIPELINE_BIND_POINT_RAY_TRACING_NV = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR,
     VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS,
     VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE,
     VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1),
@@ -1413,8 +1457,9 @@ typedef enum VkCommandBufferLevel {
 typedef enum VkIndexType {
     VK_INDEX_TYPE_UINT16 = 0,
     VK_INDEX_TYPE_UINT32 = 1,
-    VK_INDEX_TYPE_NONE_NV = 1000165000,
+    VK_INDEX_TYPE_NONE_KHR = 1000165000,
     VK_INDEX_TYPE_UINT8_EXT = 1000265000,
+    VK_INDEX_TYPE_NONE_NV = VK_INDEX_TYPE_NONE_KHR,
     VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16,
     VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32,
     VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1),
@@ -1464,14 +1509,15 @@ typedef enum VkObjectType {
     VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000,
     VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001,
     VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000,
-    VK_OBJECT_TYPE_OBJECT_TABLE_NVX = 1000086000,
-    VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX = 1000086001,
     VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000128000,
+    VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR = 1000165000,
     VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000,
-    VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
     VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL = 1000210000,
+    VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000,
+    VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000,
     VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
     VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
+    VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR,
     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),
@@ -1482,9 +1528,10 @@ typedef enum VkVendorId {
     VK_VENDOR_ID_VIV = 0x10001,
     VK_VENDOR_ID_VSI = 0x10002,
     VK_VENDOR_ID_KAZAN = 0x10003,
+    VK_VENDOR_ID_CODEPLAY = 0x10004,
     VK_VENDOR_ID_BEGIN_RANGE = VK_VENDOR_ID_VIV,
-    VK_VENDOR_ID_END_RANGE = VK_VENDOR_ID_KAZAN,
-    VK_VENDOR_ID_RANGE_SIZE = (VK_VENDOR_ID_KAZAN - VK_VENDOR_ID_VIV + 1),
+    VK_VENDOR_ID_END_RANGE = VK_VENDOR_ID_CODEPLAY,
+    VK_VENDOR_ID_RANGE_SIZE = (VK_VENDOR_ID_CODEPLAY - VK_VENDOR_ID_VIV + 1),
     VK_VENDOR_ID_MAX_ENUM = 0x7FFFFFFF
 } VkVendorId;
 typedef VkFlags VkInstanceCreateFlags;
@@ -1514,6 +1561,7 @@ typedef enum VkFormatFeatureFlagBits {
     VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT = 0x00800000,
     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT = 0x00010000,
     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,
+    VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR = 0x20000000,
     VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x01000000,
     VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
     VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
@@ -1641,13 +1689,15 @@ typedef enum VkPipelineStageFlagBits {
     VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,
     VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT = 0x01000000,
     VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000,
-    VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000,
+    VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR = 0x00200000,
+    VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR = 0x02000000,
     VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = 0x00400000,
-    VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV = 0x00200000,
-    VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV = 0x02000000,
     VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV = 0x00080000,
     VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV = 0x00100000,
     VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT = 0x00800000,
+    VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV = 0x00020000,
+    VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
+    VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
     VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkPipelineStageFlagBits;
 typedef VkFlags VkPipelineStageFlags;
@@ -1746,7 +1796,8 @@ typedef enum VkBufferUsageFlagBits {
     VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT = 0x00000800,
     VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT = 0x00001000,
     VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00000200,
-    VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = 0x00000400,
+    VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR = 0x00000400,
+    VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR,
     VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
     VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
     VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
@@ -1764,6 +1815,11 @@ typedef enum VkShaderModuleCreateFlagBits {
     VK_SHADER_MODULE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkShaderModuleCreateFlagBits;
 typedef VkFlags VkShaderModuleCreateFlags;
+
+typedef enum VkPipelineCacheCreateFlagBits {
+    VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT = 0x00000001,
+    VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
+} VkPipelineCacheCreateFlagBits;
 typedef VkFlags VkPipelineCacheCreateFlags;
 
 typedef enum VkPipelineCreateFlagBits {
@@ -1772,9 +1828,19 @@ typedef enum VkPipelineCreateFlagBits {
     VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,
     VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = 0x00000008,
     VK_PIPELINE_CREATE_DISPATCH_BASE_BIT = 0x00000010,
+    VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR = 0x00004000,
+    VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR = 0x00008000,
+    VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR = 0x00010000,
+    VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR = 0x00020000,
+    VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR = 0x00001000,
+    VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR = 0x00002000,
     VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV = 0x00000020,
     VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR = 0x00000040,
     VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR = 0x00000080,
+    VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV = 0x00040000,
+    VK_PIPELINE_CREATE_LIBRARY_BIT_KHR = 0x00000800,
+    VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT = 0x00000100,
+    VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT = 0x00000200,
     VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
     VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
     VK_PIPELINE_CREATE_DISPATCH_BASE_KHR = VK_PIPELINE_CREATE_DISPATCH_BASE,
@@ -1798,14 +1864,20 @@ typedef enum VkShaderStageFlagBits {
     VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,
     VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F,
     VK_SHADER_STAGE_ALL = 0x7FFFFFFF,
-    VK_SHADER_STAGE_RAYGEN_BIT_NV = 0x00000100,
-    VK_SHADER_STAGE_ANY_HIT_BIT_NV = 0x00000200,
-    VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV = 0x00000400,
-    VK_SHADER_STAGE_MISS_BIT_NV = 0x00000800,
-    VK_SHADER_STAGE_INTERSECTION_BIT_NV = 0x00001000,
-    VK_SHADER_STAGE_CALLABLE_BIT_NV = 0x00002000,
+    VK_SHADER_STAGE_RAYGEN_BIT_KHR = 0x00000100,
+    VK_SHADER_STAGE_ANY_HIT_BIT_KHR = 0x00000200,
+    VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR = 0x00000400,
+    VK_SHADER_STAGE_MISS_BIT_KHR = 0x00000800,
+    VK_SHADER_STAGE_INTERSECTION_BIT_KHR = 0x00001000,
+    VK_SHADER_STAGE_CALLABLE_BIT_KHR = 0x00002000,
     VK_SHADER_STAGE_TASK_BIT_NV = 0x00000040,
     VK_SHADER_STAGE_MESH_BIT_NV = 0x00000080,
+    VK_SHADER_STAGE_RAYGEN_BIT_NV = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
+    VK_SHADER_STAGE_ANY_HIT_BIT_NV = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
+    VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
+    VK_SHADER_STAGE_MISS_BIT_NV = VK_SHADER_STAGE_MISS_BIT_KHR,
+    VK_SHADER_STAGE_INTERSECTION_BIT_NV = VK_SHADER_STAGE_INTERSECTION_BIT_KHR,
+    VK_SHADER_STAGE_CALLABLE_BIT_NV = VK_SHADER_STAGE_CALLABLE_BIT_KHR,
     VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkShaderStageFlagBits;
 typedef VkFlags VkPipelineVertexInputStateCreateFlags;
@@ -1870,6 +1942,7 @@ typedef enum VkFramebufferCreateFlagBits {
 typedef VkFlags VkFramebufferCreateFlags;
 
 typedef enum VkRenderPassCreateFlagBits {
+    VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM = 0x00000002,
     VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkRenderPassCreateFlagBits;
 typedef VkFlags VkRenderPassCreateFlags;
@@ -1909,13 +1982,15 @@ typedef enum VkAccessFlagBits {
     VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = 0x04000000,
     VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = 0x08000000,
     VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT = 0x00100000,
-    VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX = 0x00020000,
-    VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX = 0x00040000,
     VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000,
+    VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR = 0x00200000,
+    VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000,
     VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV = 0x00800000,
-    VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV = 0x00200000,
-    VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV = 0x00400000,
     VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000,
+    VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV = 0x00020000,
+    VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV = 0x00040000,
+    VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
+    VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
     VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkAccessFlagBits;
 typedef VkFlags VkAccessFlags;
@@ -7390,6 +7465,11 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineExecutableInternalRepresentationsKHR
 #endif
 
 
+#define VK_KHR_shader_non_semantic_info 1
+#define VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION 1
+#define VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME "VK_KHR_shader_non_semantic_info"
+
+
 #define VK_EXT_debug_report 1
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)
 #define VK_EXT_DEBUG_REPORT_SPEC_VERSION  9
@@ -7427,16 +7507,15 @@ typedef enum VkDebugReportObjectTypeEXT {
     VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_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_OBJECT_TABLE_NVX_EXT = 31,
-    VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT = 32,
     VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33,
     VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT = 1000156000,
     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT = 1000085000,
-    VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000,
+    VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000165000,
     VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
     VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,
     VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,
+    VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT,
     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_VALIDATION_CACHE_EXT_EXT,
     VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1),
@@ -8014,229 +8093,6 @@ VKAPI_ATTR void VKAPI_CALL vkCmdEndConditionalRenderingEXT(
 #endif
 
 
-#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 3
-#define VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NVX_device_generated_commands"
-
-typedef enum VkIndirectCommandsTokenTypeNVX {
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX = 0,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX = 1,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX = 2,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX = 3,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX = 4,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX = 5,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX = 6,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX = 7,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NVX = (VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX - VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX + 1),
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF
-} VkIndirectCommandsTokenTypeNVX;
-
-typedef enum VkObjectEntryTypeNVX {
-    VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX = 0,
-    VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX = 1,
-    VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX = 2,
-    VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX = 3,
-    VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX = 4,
-    VK_OBJECT_ENTRY_TYPE_BEGIN_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX,
-    VK_OBJECT_ENTRY_TYPE_END_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX,
-    VK_OBJECT_ENTRY_TYPE_RANGE_SIZE_NVX = (VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX - VK_OBJECT_ENTRY_TYPE_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;
-    deUint32           maxIndirectCommandsLayoutTokenCount;
-    deUint32           maxObjectEntryCounts;
-    deUint32           minSequenceCountBufferOffsetAlignment;
-    deUint32           minSequenceIndexBufferOffsetAlignment;
-    deUint32           minCommandsTokenBufferOffsetAlignment;
-} VkDeviceGeneratedCommandsLimitsNVX;
-
-typedef struct VkIndirectCommandsTokenNVX {
-    VkIndirectCommandsTokenTypeNVX    tokenType;
-    VkBuffer                          buffer;
-    VkDeviceSize                      offset;
-} VkIndirectCommandsTokenNVX;
-
-typedef struct VkIndirectCommandsLayoutTokenNVX {
-    VkIndirectCommandsTokenTypeNVX    tokenType;
-    deUint32                          bindingUnit;
-    deUint32                          dynamicCount;
-    deUint32                          divisor;
-} VkIndirectCommandsLayoutTokenNVX;
-
-typedef struct VkIndirectCommandsLayoutCreateInfoNVX {
-    VkStructureType                            sType;
-    const void*                                pNext;
-    VkPipelineBindPoint                        pipelineBindPoint;
-    VkIndirectCommandsLayoutUsageFlagsNVX      flags;
-    deUint32                                   tokenCount;
-    const VkIndirectCommandsLayoutTokenNVX*    pTokens;
-} VkIndirectCommandsLayoutCreateInfoNVX;
-
-typedef 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;
-} VkCmdProcessCommandsInfoNVX;
-
-typedef struct VkCmdReserveSpaceForCommandsInfoNVX {
-    VkStructureType                sType;
-    const void*                    pNext;
-    VkObjectTableNVX               objectTable;
-    VkIndirectCommandsLayoutNVX    indirectCommandsLayout;
-    deUint32                       maxSequencesCount;
-} VkCmdReserveSpaceForCommandsInfoNVX;
-
-typedef 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;
-} 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;
-    VkIndexType                   indexType;
-} 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, deUint32 objectCount, const VkObjectTableEntryNVX* const*    ppObjectTableEntries, const deUint32* pObjectIndices);
-typedef VkResult (VKAPI_PTR *PFN_vkUnregisterObjectsNVX)(VkDevice device, VkObjectTableNVX objectTable, deUint32 objectCount, const VkObjectEntryTypeNVX* pObjectEntryTypes, const deUint32* 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,
-    deUint32                                    objectCount,
-    const VkObjectTableEntryNVX* const*         ppObjectTableEntries,
-    const deUint32*                             pObjectIndices);
-
-VKAPI_ATTR VkResult VKAPI_CALL vkUnregisterObjectsNVX(
-    VkDevice                                    device,
-    VkObjectTableNVX                            objectTable,
-    deUint32                                    objectCount,
-    const VkObjectEntryTypeNVX*                 pObjectEntryTypes,
-    const deUint32*                             pObjectIndices);
-
-VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX(
-    VkPhysicalDevice                            physicalDevice,
-    VkDeviceGeneratedCommandsFeaturesNVX*       pFeatures,
-    VkDeviceGeneratedCommandsLimitsNVX*         pLimits);
-#endif
-
-
 #define VK_NV_clip_space_w_scaling 1
 #define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1
 #define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling"
@@ -9281,91 +9137,142 @@ VKAPI_ATTR void VKAPI_CALL vkCmdSetCoarseSampleOrderNV(
 
 
 #define VK_NV_ray_tracing 1
-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureNV)
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR)
+typedef VkAccelerationStructureKHR VkAccelerationStructureNV;
+
 #define VK_NV_RAY_TRACING_SPEC_VERSION    3
 #define VK_NV_RAY_TRACING_EXTENSION_NAME  "VK_NV_ray_tracing"
-#define VK_SHADER_UNUSED_NV               (~0U)
-
-typedef enum VkAccelerationStructureTypeNV {
-    VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV = 0,
-    VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV = 1,
-    VK_ACCELERATION_STRUCTURE_TYPE_BEGIN_RANGE_NV = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV,
-    VK_ACCELERATION_STRUCTURE_TYPE_END_RANGE_NV = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV,
-    VK_ACCELERATION_STRUCTURE_TYPE_RANGE_SIZE_NV = (VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV - VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV + 1),
-    VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkAccelerationStructureTypeNV;
-
-typedef enum VkRayTracingShaderGroupTypeNV {
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV = 0,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV = 1,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV = 2,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_BEGIN_RANGE_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_END_RANGE_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_RANGE_SIZE_NV = (VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV - VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV + 1),
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkRayTracingShaderGroupTypeNV;
-
-typedef enum VkGeometryTypeNV {
-    VK_GEOMETRY_TYPE_TRIANGLES_NV = 0,
-    VK_GEOMETRY_TYPE_AABBS_NV = 1,
-    VK_GEOMETRY_TYPE_BEGIN_RANGE_NV = VK_GEOMETRY_TYPE_TRIANGLES_NV,
-    VK_GEOMETRY_TYPE_END_RANGE_NV = VK_GEOMETRY_TYPE_AABBS_NV,
-    VK_GEOMETRY_TYPE_RANGE_SIZE_NV = (VK_GEOMETRY_TYPE_AABBS_NV - VK_GEOMETRY_TYPE_TRIANGLES_NV + 1),
-    VK_GEOMETRY_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkGeometryTypeNV;
-
-typedef enum VkCopyAccelerationStructureModeNV {
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV = 0,
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV = 1,
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV,
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_END_RANGE_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV,
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_NV = (VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV - VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV + 1),
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkCopyAccelerationStructureModeNV;
-
-typedef enum VkAccelerationStructureMemoryRequirementsTypeNV {
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = 0,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = 1,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = 2,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BEGIN_RANGE_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_END_RANGE_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_RANGE_SIZE_NV = (VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV + 1),
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkAccelerationStructureMemoryRequirementsTypeNV;
-
-typedef enum VkGeometryFlagBitsNV {
-    VK_GEOMETRY_OPAQUE_BIT_NV = 0x00000001,
-    VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV = 0x00000002,
-    VK_GEOMETRY_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
-} VkGeometryFlagBitsNV;
-typedef VkFlags VkGeometryFlagsNV;
-
-typedef enum VkGeometryInstanceFlagBitsNV {
-    VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV = 0x00000001,
-    VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV = 0x00000002,
-    VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV = 0x00000004,
-    VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV = 0x00000008,
-    VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
-} VkGeometryInstanceFlagBitsNV;
-typedef VkFlags VkGeometryInstanceFlagsNV;
-
-typedef enum VkBuildAccelerationStructureFlagBitsNV {
-    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = 0x00000001,
-    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = 0x00000002,
-    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = 0x00000004,
-    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV = 0x00000008,
-    VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV = 0x00000010,
-    VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
-} VkBuildAccelerationStructureFlagBitsNV;
-typedef VkFlags VkBuildAccelerationStructureFlagsNV;
+#define VK_SHADER_UNUSED_KHR              (~0U)
+#define VK_SHADER_UNUSED_NV               VK_SHADER_UNUSED_KHR
+
+typedef enum VkRayTracingShaderGroupTypeKHR {
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR = 0,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR = 1,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR = 2,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_BEGIN_RANGE_KHR = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_END_RANGE_KHR = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_RANGE_SIZE_KHR = (VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR - VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR + 1),
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkRayTracingShaderGroupTypeKHR;
+typedef VkRayTracingShaderGroupTypeKHR VkRayTracingShaderGroupTypeNV;
+
+
+typedef enum VkGeometryTypeKHR {
+    VK_GEOMETRY_TYPE_TRIANGLES_KHR = 0,
+    VK_GEOMETRY_TYPE_AABBS_KHR = 1,
+    VK_GEOMETRY_TYPE_INSTANCES_KHR = 1000150000,
+    VK_GEOMETRY_TYPE_TRIANGLES_NV = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
+    VK_GEOMETRY_TYPE_AABBS_NV = VK_GEOMETRY_TYPE_AABBS_KHR,
+    VK_GEOMETRY_TYPE_BEGIN_RANGE_KHR = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
+    VK_GEOMETRY_TYPE_END_RANGE_KHR = VK_GEOMETRY_TYPE_AABBS_KHR,
+    VK_GEOMETRY_TYPE_RANGE_SIZE_KHR = (VK_GEOMETRY_TYPE_AABBS_KHR - VK_GEOMETRY_TYPE_TRIANGLES_KHR + 1),
+    VK_GEOMETRY_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkGeometryTypeKHR;
+typedef VkGeometryTypeKHR VkGeometryTypeNV;
+
+
+typedef enum VkAccelerationStructureTypeKHR {
+    VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0,
+    VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1,
+    VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
+    VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
+    VK_ACCELERATION_STRUCTURE_TYPE_BEGIN_RANGE_KHR = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
+    VK_ACCELERATION_STRUCTURE_TYPE_END_RANGE_KHR = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
+    VK_ACCELERATION_STRUCTURE_TYPE_RANGE_SIZE_KHR = (VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR - VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR + 1),
+    VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkAccelerationStructureTypeKHR;
+typedef VkAccelerationStructureTypeKHR VkAccelerationStructureTypeNV;
+
+
+typedef enum VkCopyAccelerationStructureModeKHR {
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR = 0,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR = 1,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR = 2,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR = 3,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_KHR = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_END_RANGE_KHR = VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_KHR = (VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR - VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR + 1),
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkCopyAccelerationStructureModeKHR;
+typedef VkCopyAccelerationStructureModeKHR VkCopyAccelerationStructureModeNV;
+
+
+typedef enum VkAccelerationStructureMemoryRequirementsTypeKHR {
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR = 0,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR = 1,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR = 2,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BEGIN_RANGE_KHR = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_END_RANGE_KHR = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_RANGE_SIZE_KHR = (VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR + 1),
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkAccelerationStructureMemoryRequirementsTypeKHR;
+typedef VkAccelerationStructureMemoryRequirementsTypeKHR VkAccelerationStructureMemoryRequirementsTypeNV;
+
+
+typedef enum VkGeometryFlagBitsKHR {
+    VK_GEOMETRY_OPAQUE_BIT_KHR = 0x00000001,
+    VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR = 0x00000002,
+    VK_GEOMETRY_OPAQUE_BIT_NV = VK_GEOMETRY_OPAQUE_BIT_KHR,
+    VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV = VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR,
+    VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkGeometryFlagBitsKHR;
+typedef VkFlags VkGeometryFlagsKHR;
+typedef VkGeometryFlagsKHR VkGeometryFlagsNV;
+
+typedef VkGeometryFlagBitsKHR VkGeometryFlagBitsNV;
+
+
+typedef enum VkGeometryInstanceFlagBitsKHR {
+    VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR = 0x00000001,
+    VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR = 0x00000002,
+    VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 0x00000004,
+    VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 0x00000008,
+    VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
+    VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
+    VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,
+    VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,
+    VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkGeometryInstanceFlagBitsKHR;
+typedef VkFlags VkGeometryInstanceFlagsKHR;
+typedef VkGeometryInstanceFlagsKHR VkGeometryInstanceFlagsNV;
+
+typedef VkGeometryInstanceFlagBitsKHR VkGeometryInstanceFlagBitsNV;
+
+
+typedef enum VkBuildAccelerationStructureFlagBitsKHR {
+    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR = 0x00000001,
+    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR = 0x00000002,
+    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 0x00000004,
+    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,
+    VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 0x00000010,
+    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkBuildAccelerationStructureFlagBitsKHR;
+typedef VkFlags VkBuildAccelerationStructureFlagsKHR;
+typedef VkBuildAccelerationStructureFlagsKHR VkBuildAccelerationStructureFlagsNV;
+
+typedef VkBuildAccelerationStructureFlagBitsKHR VkBuildAccelerationStructureFlagBitsNV;
+
 typedef struct VkRayTracingShaderGroupCreateInfoNV {
-    VkStructureType                  sType;
-    const void*                      pNext;
-    VkRayTracingShaderGroupTypeNV    type;
-    deUint32                         generalShader;
-    deUint32                         closestHitShader;
-    deUint32                         anyHitShader;
-    deUint32                         intersectionShader;
+    VkStructureType                   sType;
+    const void*                       pNext;
+    VkRayTracingShaderGroupTypeKHR    type;
+    deUint32                          generalShader;
+    deUint32                          closestHitShader;
+    deUint32                          anyHitShader;
+    deUint32                          intersectionShader;
 } VkRayTracingShaderGroupCreateInfoNV;
 
 typedef struct VkRayTracingPipelineCreateInfoNV {
@@ -9413,11 +9320,11 @@ typedef struct VkGeometryDataNV {
 } VkGeometryDataNV;
 
 typedef struct VkGeometryNV {
-    VkStructureType      sType;
-    const void*          pNext;
-    VkGeometryTypeNV     geometryType;
-    VkGeometryDataNV     geometry;
-    VkGeometryFlagsNV    flags;
+    VkStructureType       sType;
+    const void*           pNext;
+    VkGeometryTypeKHR     geometryType;
+    VkGeometryDataNV      geometry;
+    VkGeometryFlagsKHR    flags;
 } VkGeometryNV;
 
 typedef struct VkAccelerationStructureInfoNV {
@@ -9437,22 +9344,26 @@ typedef struct VkAccelerationStructureCreateInfoNV {
     VkAccelerationStructureInfoNV    info;
 } VkAccelerationStructureCreateInfoNV;
 
-typedef struct VkBindAccelerationStructureMemoryInfoNV {
-    VkStructureType              sType;
-    const void*                  pNext;
-    VkAccelerationStructureNV    accelerationStructure;
-    VkDeviceMemory               memory;
-    VkDeviceSize                 memoryOffset;
-    deUint32                     deviceIndexCount;
-    const deUint32*              pDeviceIndices;
-} VkBindAccelerationStructureMemoryInfoNV;
-
-typedef struct VkWriteDescriptorSetAccelerationStructureNV {
-    VkStructureType                     sType;
-    const void*                         pNext;
-    deUint32                            accelerationStructureCount;
-    const VkAccelerationStructureNV*    pAccelerationStructures;
-} VkWriteDescriptorSetAccelerationStructureNV;
+typedef struct VkBindAccelerationStructureMemoryInfoKHR {
+    VkStructureType               sType;
+    const void*                   pNext;
+    VkAccelerationStructureKHR    accelerationStructure;
+    VkDeviceMemory                memory;
+    VkDeviceSize                  memoryOffset;
+    deUint32                      deviceIndexCount;
+    const deUint32*               pDeviceIndices;
+} VkBindAccelerationStructureMemoryInfoKHR;
+
+typedef VkBindAccelerationStructureMemoryInfoKHR VkBindAccelerationStructureMemoryInfoNV;
+
+typedef struct VkWriteDescriptorSetAccelerationStructureKHR {
+    VkStructureType                      sType;
+    const void*                          pNext;
+    deUint32                             accelerationStructureCount;
+    const VkAccelerationStructureKHR*    pAccelerationStructures;
+} VkWriteDescriptorSetAccelerationStructureKHR;
+
+typedef VkWriteDescriptorSetAccelerationStructureKHR VkWriteDescriptorSetAccelerationStructureNV;
 
 typedef struct VkAccelerationStructureMemoryRequirementsInfoNV {
     VkStructureType                                    sType;
@@ -9474,17 +9385,49 @@ typedef struct VkPhysicalDeviceRayTracingPropertiesNV {
     deUint32           maxDescriptorSetAccelerationStructures;
 } VkPhysicalDeviceRayTracingPropertiesNV;
 
+typedef struct VkTransformMatrixKHR {
+    float    matrix[3][4];
+} VkTransformMatrixKHR;
+
+typedef VkTransformMatrixKHR VkTransformMatrixNV;
+
+typedef struct VkAabbPositionsKHR {
+    float    minX;
+    float    minY;
+    float    minZ;
+    float    maxX;
+    float    maxY;
+    float    maxZ;
+} VkAabbPositionsKHR;
+
+typedef VkAabbPositionsKHR VkAabbPositionsNV;
+
+typedef struct VkAccelerationStructureInstanceKHR {
+    VkTransformMatrixKHR          transform;
+    deUint32                      instanceCustomIndex:24;
+    deUint32                      mask:8;
+    deUint32                      instanceShaderBindingTableRecordOffset:24;
+    VkGeometryInstanceFlagsKHR    flags:8;
+    deUint64                      accelerationStructureReference;
+} VkAccelerationStructureInstanceKHR;
+
+typedef VkAccelerationStructureInstanceKHR VkAccelerationStructureInstanceNV;
+
 typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureNV)(VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure);
-typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureNV)(VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureKHR)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureNV)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator);
 typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements);
-typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryNV)(VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos);
-typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset);
-typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeNV mode);
+typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryKHR)(VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
+typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryNV)(VkDevice device, deUint32 bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
+typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode);
 typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysNV)(VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, deUint32 width, deUint32 height, deUint32 depth);
 typedef VkResult (VKAPI_PTR *PFN_vkCreateRayTracingPipelinesNV)(VkDevice device, VkPipelineCache pipelineCache, deUint32 createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
+typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupHandlesKHR)(VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData);
 typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupHandlesNV)(VkDevice device, VkPipeline pipeline, deUint32 firstGroup, deUint32 groupCount, deUintptr dataSize, void* pData);
-typedef VkResult (VKAPI_PTR *PFN_vkGetAccelerationStructureHandleNV)(VkDevice device, VkAccelerationStructureNV accelerationStructure, deUintptr dataSize, void* pData);
-typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery);
+typedef VkResult (VKAPI_PTR *PFN_vkGetAccelerationStructureHandleNV)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, deUintptr dataSize, void* pData);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)(VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer commandBuffer, deUint32 accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery);
 typedef VkResult (VKAPI_PTR *PFN_vkCompileDeferredNV)(VkDevice device, VkPipeline pipeline, deUint32 shader);
 
 #ifndef VK_NO_PROTOTYPES
@@ -9494,9 +9437,14 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureNV(
     const VkAllocationCallbacks*                pAllocator,
     VkAccelerationStructureNV*                  pAccelerationStructure);
 
+VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureKHR(
+    VkDevice                                    device,
+    VkAccelerationStructureKHR                  accelerationStructure,
+    const VkAllocationCallbacks*                pAllocator);
+
 VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureNV(
     VkDevice                                    device,
-    VkAccelerationStructureNV                   accelerationStructure,
+    VkAccelerationStructureKHR                  accelerationStructure,
     const VkAllocationCallbacks*                pAllocator);
 
 VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsNV(
@@ -9504,10 +9452,15 @@ VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsNV(
     const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo,
     VkMemoryRequirements2KHR*                   pMemoryRequirements);
 
+VKAPI_ATTR VkResult VKAPI_CALL vkBindAccelerationStructureMemoryKHR(
+    VkDevice                                    device,
+    deUint32                                    bindInfoCount,
+    const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
+
 VKAPI_ATTR VkResult VKAPI_CALL vkBindAccelerationStructureMemoryNV(
     VkDevice                                    device,
     deUint32                                    bindInfoCount,
-    const VkBindAccelerationStructureMemoryInfoNV* pBindInfos);
+    const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
 
 VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureNV(
     VkCommandBuffer                             commandBuffer,
@@ -9515,16 +9468,16 @@ VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureNV(
     VkBuffer                                    instanceData,
     VkDeviceSize                                instanceOffset,
     VkBool32                                    update,
-    VkAccelerationStructureNV                   dst,
-    VkAccelerationStructureNV                   src,
+    VkAccelerationStructureKHR                  dst,
+    VkAccelerationStructureKHR                  src,
     VkBuffer                                    scratch,
     VkDeviceSize                                scratchOffset);
 
 VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureNV(
     VkCommandBuffer                             commandBuffer,
-    VkAccelerationStructureNV                   dst,
-    VkAccelerationStructureNV                   src,
-    VkCopyAccelerationStructureModeNV           mode);
+    VkAccelerationStructureKHR                  dst,
+    VkAccelerationStructureKHR                  src,
+    VkCopyAccelerationStructureModeKHR          mode);
 
 VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysNV(
     VkCommandBuffer                             commandBuffer,
@@ -9551,6 +9504,14 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateRayTracingPipelinesNV(
     const VkAllocationCallbacks*                pAllocator,
     VkPipeline*                                 pPipelines);
 
+VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesKHR(
+    VkDevice                                    device,
+    VkPipeline                                  pipeline,
+    deUint32                                    firstGroup,
+    deUint32                                    groupCount,
+    deUintptr                                      dataSize,
+    void*                                       pData);
+
 VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesNV(
     VkDevice                                    device,
     VkPipeline                                  pipeline,
@@ -9561,14 +9522,22 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesNV(
 
 VKAPI_ATTR VkResult VKAPI_CALL vkGetAccelerationStructureHandleNV(
     VkDevice                                    device,
-    VkAccelerationStructureNV                   accelerationStructure,
+    VkAccelerationStructureKHR                  accelerationStructure,
     deUintptr                                      dataSize,
     void*                                       pData);
 
+VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesKHR(
+    VkCommandBuffer                             commandBuffer,
+    deUint32                                    accelerationStructureCount,
+    const VkAccelerationStructureKHR*           pAccelerationStructures,
+    VkQueryType                                 queryType,
+    VkQueryPool                                 queryPool,
+    deUint32                                    firstQuery);
+
 VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesNV(
     VkCommandBuffer                             commandBuffer,
     deUint32                                    accelerationStructureCount,
-    const VkAccelerationStructureNV*            pAccelerationStructures,
+    const VkAccelerationStructureKHR*           pAccelerationStructures,
     VkQueryType                                 queryType,
     VkQueryPool                                 queryPool,
     deUint32                                    firstQuery);
@@ -10011,7 +9980,7 @@ typedef struct VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL {
 
 #define VK_INTEL_performance_query 1
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPerformanceConfigurationINTEL)
-#define VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION 1
+#define VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION 2
 #define VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME "VK_INTEL_performance_query"
 
 typedef enum VkPerformanceConfigurationTypeINTEL {
@@ -10078,11 +10047,13 @@ typedef struct VkInitializePerformanceApiInfoINTEL {
     void*              pUserData;
 } VkInitializePerformanceApiInfoINTEL;
 
-typedef struct VkQueryPoolCreateInfoINTEL {
+typedef struct VkQueryPoolPerformanceQueryCreateInfoINTEL {
     VkStructureType                 sType;
     const void*                     pNext;
     VkQueryPoolSamplingModeINTEL    performanceCountersSampling;
-} VkQueryPoolCreateInfoINTEL;
+} VkQueryPoolPerformanceQueryCreateInfoINTEL;
+
+typedef VkQueryPoolPerformanceQueryCreateInfoINTEL VkQueryPoolCreateInfoINTEL;
 
 typedef struct VkPerformanceMarkerInfoINTEL {
     VkStructureType    sType;
@@ -10411,16 +10382,17 @@ typedef VkImageStencilUsageCreateInfo VkImageStencilUsageCreateInfoEXT;
 
 
 #define VK_EXT_validation_features 1
-#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 2
+#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 3
 #define VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME "VK_EXT_validation_features"
 
 typedef enum VkValidationFeatureEnableEXT {
     VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT = 0,
     VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT = 1,
     VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT = 2,
+    VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT = 3,
     VK_VALIDATION_FEATURE_ENABLE_BEGIN_RANGE_EXT = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT,
-    VK_VALIDATION_FEATURE_ENABLE_END_RANGE_EXT = VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT,
-    VK_VALIDATION_FEATURE_ENABLE_RANGE_SIZE_EXT = (VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT - VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT + 1),
+    VK_VALIDATION_FEATURE_ENABLE_END_RANGE_EXT = VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT,
+    VK_VALIDATION_FEATURE_ENABLE_RANGE_SIZE_EXT = (VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT - VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT + 1),
     VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT = 0x7FFFFFFF
 } VkValidationFeatureEnableEXT;
 
@@ -10694,6 +10666,199 @@ typedef struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT {
 
 
 
+#define VK_NV_device_generated_commands 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNV)
+#define VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 3
+#define VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NV_device_generated_commands"
+
+typedef enum VkIndirectCommandsTokenTypeNV {
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV = 0,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV = 1,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV = 2,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV = 3,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV = 4,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV = 5,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV = 6,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV = 7,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NV = VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NV = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NV = (VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV - VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV + 1),
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
+} VkIndirectCommandsTokenTypeNV;
+
+typedef enum VkIndirectStateFlagBitsNV {
+    VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV = 0x00000001,
+    VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkIndirectStateFlagBitsNV;
+typedef VkFlags VkIndirectStateFlagsNV;
+
+typedef enum VkIndirectCommandsLayoutUsageFlagBitsNV {
+    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV = 0x00000001,
+    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV = 0x00000002,
+    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV = 0x00000004,
+    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkIndirectCommandsLayoutUsageFlagBitsNV;
+typedef VkFlags VkIndirectCommandsLayoutUsageFlagsNV;
+typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV {
+    VkStructureType    sType;
+    void*              pNext;
+    deUint32           maxGraphicsShaderGroupCount;
+    deUint32           maxIndirectSequenceCount;
+    deUint32           maxIndirectCommandsTokenCount;
+    deUint32           maxIndirectCommandsStreamCount;
+    deUint32           maxIndirectCommandsTokenOffset;
+    deUint32           maxIndirectCommandsStreamStride;
+    deUint32           minSequencesCountBufferOffsetAlignment;
+    deUint32           minSequencesIndexBufferOffsetAlignment;
+    deUint32           minIndirectCommandsBufferOffsetAlignment;
+} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
+
+typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           deviceGeneratedCommands;
+} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
+
+typedef struct VkGraphicsShaderGroupCreateInfoNV {
+    VkStructureType                                 sType;
+    const void*                                     pNext;
+    deUint32                                        stageCount;
+    const VkPipelineShaderStageCreateInfo*          pStages;
+    const VkPipelineVertexInputStateCreateInfo*     pVertexInputState;
+    const VkPipelineTessellationStateCreateInfo*    pTessellationState;
+} VkGraphicsShaderGroupCreateInfoNV;
+
+typedef struct VkGraphicsPipelineShaderGroupsCreateInfoNV {
+    VkStructureType                             sType;
+    const void*                                 pNext;
+    deUint32                                    groupCount;
+    const VkGraphicsShaderGroupCreateInfoNV*    pGroups;
+    deUint32                                    pipelineCount;
+    const VkPipeline*                           pPipelines;
+} VkGraphicsPipelineShaderGroupsCreateInfoNV;
+
+typedef struct VkBindShaderGroupIndirectCommandNV {
+    deUint32    groupIndex;
+} VkBindShaderGroupIndirectCommandNV;
+
+typedef struct VkBindIndexBufferIndirectCommandNV {
+    VkDeviceAddress    bufferAddress;
+    deUint32           size;
+    VkIndexType        indexType;
+} VkBindIndexBufferIndirectCommandNV;
+
+typedef struct VkBindVertexBufferIndirectCommandNV {
+    VkDeviceAddress    bufferAddress;
+    deUint32           size;
+    deUint32           stride;
+} VkBindVertexBufferIndirectCommandNV;
+
+typedef struct VkSetStateFlagsIndirectCommandNV {
+    deUint32    data;
+} VkSetStateFlagsIndirectCommandNV;
+
+typedef struct VkIndirectCommandsStreamNV {
+    VkBuffer        buffer;
+    VkDeviceSize    offset;
+} VkIndirectCommandsStreamNV;
+
+typedef struct VkIndirectCommandsLayoutTokenNV {
+    VkStructureType                  sType;
+    const void*                      pNext;
+    VkIndirectCommandsTokenTypeNV    tokenType;
+    deUint32                         stream;
+    deUint32                         offset;
+    deUint32                         vertexBindingUnit;
+    VkBool32                         vertexDynamicStride;
+    VkPipelineLayout                 pushconstantPipelineLayout;
+    VkShaderStageFlags               pushconstantShaderStageFlags;
+    deUint32                         pushconstantOffset;
+    deUint32                         pushconstantSize;
+    VkIndirectStateFlagsNV           indirectStateFlags;
+    deUint32                         indexTypeCount;
+    const VkIndexType*               pIndexTypes;
+    const deUint32*                  pIndexTypeValues;
+} VkIndirectCommandsLayoutTokenNV;
+
+typedef struct VkIndirectCommandsLayoutCreateInfoNV {
+    VkStructureType                           sType;
+    const void*                               pNext;
+    VkIndirectCommandsLayoutUsageFlagsNV      flags;
+    VkPipelineBindPoint                       pipelineBindPoint;
+    deUint32                                  tokenCount;
+    const VkIndirectCommandsLayoutTokenNV*    pTokens;
+    deUint32                                  streamCount;
+    const deUint32*                           pStreamStrides;
+} VkIndirectCommandsLayoutCreateInfoNV;
+
+typedef struct VkGeneratedCommandsInfoNV {
+    VkStructureType                      sType;
+    const void*                          pNext;
+    VkPipelineBindPoint                  pipelineBindPoint;
+    VkPipeline                           pipeline;
+    VkIndirectCommandsLayoutNV           indirectCommandsLayout;
+    deUint32                             streamCount;
+    const VkIndirectCommandsStreamNV*    pStreams;
+    deUint32                             sequencesCount;
+    VkBuffer                             preprocessBuffer;
+    VkDeviceSize                         preprocessOffset;
+    VkDeviceSize                         preprocessSize;
+    VkBuffer                             sequencesCountBuffer;
+    VkDeviceSize                         sequencesCountOffset;
+    VkBuffer                             sequencesIndexBuffer;
+    VkDeviceSize                         sequencesIndexOffset;
+} VkGeneratedCommandsInfoNV;
+
+typedef struct VkGeneratedCommandsMemoryRequirementsInfoNV {
+    VkStructureType               sType;
+    const void*                   pNext;
+    VkPipelineBindPoint           pipelineBindPoint;
+    VkPipeline                    pipeline;
+    VkIndirectCommandsLayoutNV    indirectCommandsLayout;
+    deUint32                      maxSequencesCount;
+} VkGeneratedCommandsMemoryRequirementsInfoNV;
+
+typedef void (VKAPI_PTR *PFN_vkGetGeneratedCommandsMemoryRequirementsNV)(VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements);
+typedef void (VKAPI_PTR *PFN_vkCmdPreprocessGeneratedCommandsNV)(VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdExecuteGeneratedCommandsNV)(VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdBindPipelineShaderGroupNV)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, deUint32 groupIndex);
+typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNV)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout);
+typedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNV)(VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkGetGeneratedCommandsMemoryRequirementsNV(
+    VkDevice                                    device,
+    const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo,
+    VkMemoryRequirements2*                      pMemoryRequirements);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdPreprocessGeneratedCommandsNV(
+    VkCommandBuffer                             commandBuffer,
+    const VkGeneratedCommandsInfoNV*            pGeneratedCommandsInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdExecuteGeneratedCommandsNV(
+    VkCommandBuffer                             commandBuffer,
+    VkBool32                                    isPreprocessed,
+    const VkGeneratedCommandsInfoNV*            pGeneratedCommandsInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdBindPipelineShaderGroupNV(
+    VkCommandBuffer                             commandBuffer,
+    VkPipelineBindPoint                         pipelineBindPoint,
+    VkPipeline                                  pipeline,
+    deUint32                                    groupIndex);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNV(
+    VkDevice                                    device,
+    const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo,
+    const VkAllocationCallbacks*                pAllocator,
+    VkIndirectCommandsLayoutNV*                 pIndirectCommandsLayout);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNV(
+    VkDevice                                    device,
+    VkIndirectCommandsLayoutNV                  indirectCommandsLayout,
+    const VkAllocationCallbacks*                pAllocator);
+#endif
+
+
 #define VK_EXT_texel_buffer_alignment 1
 #define VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION 1
 #define VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME "VK_EXT_texel_buffer_alignment"
@@ -10714,10 +10879,64 @@ typedef struct VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT {
 
 
 
+#define VK_QCOM_render_pass_transform 1
+#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 1
+#define VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME "VK_QCOM_render_pass_transform"
+typedef struct VkRenderPassTransformBeginInfoQCOM {
+    VkStructureType                  sType;
+    void*                            pNext;
+    VkSurfaceTransformFlagBitsKHR    transform;
+} VkRenderPassTransformBeginInfoQCOM;
+
+typedef struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM {
+    VkStructureType                  sType;
+    void*                            pNext;
+    VkSurfaceTransformFlagBitsKHR    transform;
+    VkRect2D                         renderArea;
+} VkCommandBufferInheritanceRenderPassTransformInfoQCOM;
+
+
+
 #define VK_GOOGLE_user_type 1
 #define VK_GOOGLE_USER_TYPE_SPEC_VERSION  1
 #define VK_GOOGLE_USER_TYPE_EXTENSION_NAME "VK_GOOGLE_user_type"
 
+
+#define VK_EXT_pipeline_creation_cache_control 1
+#define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION 2
+#define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME "VK_EXT_pipeline_creation_cache_control"
+typedef struct VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           pipelineCreationCacheControl;
+} VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT;
+
+
+
+#define VK_NV_device_diagnostics_config 1
+#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION 1
+#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME "VK_NV_device_diagnostics_config"
+
+typedef enum VkDeviceDiagnosticsConfigFlagBitsNV {
+    VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV = 0x00000001,
+    VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV = 0x00000002,
+    VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV = 0x00000004,
+    VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkDeviceDiagnosticsConfigFlagBitsNV;
+typedef VkFlags VkDeviceDiagnosticsConfigFlagsNV;
+typedef struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           diagnosticsConfig;
+} VkPhysicalDeviceDiagnosticsConfigFeaturesNV;
+
+typedef struct VkDeviceDiagnosticsConfigCreateInfoNV {
+    VkStructureType                     sType;
+    const void*                         pNext;
+    VkDeviceDiagnosticsConfigFlagsNV    flags;
+} VkDeviceDiagnosticsConfigCreateInfoNV;
+
+
 #ifdef __cplusplus
 }
 #endif
index afa9be0..18fdb16 100644 (file)
@@ -263,7 +263,7 @@ class Bitfield:
                return '%s (%s)' % (self.name, self.alias)
 
 class Variable:
-       def __init__ (self, type, name, arraySize):
+       def __init__ (self, type, name, arraySizeOrFieldWidth):
                type            = type.replace('*',' *').replace('&',' &')
                for src, dst in TYPE_SUBSTITUTIONS:
                        type = type.replace(src, dst)
@@ -274,7 +274,12 @@ class Variable:
                                self.type = self.type[:range[0]]+[PLATFORM_TYPE_NAMESPACE + '::' + substitute[0]] + substitute[1:] + self.type[range[1]:]
                                break
                self.name               = name
-               self.arraySize  = arraySize
+               if len(arraySizeOrFieldWidth) > 0 and arraySizeOrFieldWidth[0] == ':':
+                       self.arraySize  = ''
+                       self.fieldWidth = arraySizeOrFieldWidth
+               else:
+                       self.arraySize  = arraySizeOrFieldWidth
+                       self.fieldWidth = ''
 
        def contains(self, big, small):
                for i in range(len(big)-len(small)+1):
@@ -289,7 +294,7 @@ class Variable:
                return ' '.join(self.type).replace(' *','*').replace(' &','&')
 
        def getAsString (self, separator):
-               return '%s%s%s%s' % (self.getType(), separator, self.name, self.arraySize)
+               return '%s%s%s%s%s' % (self.getType(), separator, self.name, self.arraySize, self.fieldWidth)
 
        def __repr__ (self):
                return '<%s> <%s> <%s>' % (self.type, self.name, self.arraySize)
@@ -407,6 +412,7 @@ def readFile (filename):
                return f.read()
 
 IDENT_PTRN     = r'[a-zA-Z_][a-zA-Z0-9_]*'
+WIDTH_PTRN     = r'[:0-9]*'
 TYPE_PTRN      = r'[a-zA-Z_][a-zA-Z0-9_ \t*&]*'
 
 def fixupEnumValues (values):
@@ -477,7 +483,7 @@ def parseEnums (src):
 
 
 def parseCompositeType (type, name, src):
-       typeNamePtrn    = r'(' + TYPE_PTRN + r')(\s+' + IDENT_PTRN + r')((\[[^\]]+\])*)\s*;'
+       typeNamePtrn    = r'(' + TYPE_PTRN + r')(\s+' + IDENT_PTRN + r')((\[[^\]]+\]|:[0-9]+)*)\s*;'
        matches                 = re.findall(typeNamePtrn, src)
        members                 = [Variable(t.strip(), n.strip(), a.strip()) for t, n, a, _ in matches]
        return CompositeType(type, name, members)
@@ -678,7 +684,6 @@ def parseExtensions (src, versions, allFunctions, allCompositeTypes, allEnums, a
                        populateExtensionAliases(bitfieldsByName, extBitfields)
                        populateExtensionAliases(compositeTypesByName, extCompositeTypes)
 
-
                extensions.append(Extension(extensionName, extHandles, extEnums, extBitfields, extCompositeTypes, extFunctions, extDefinitions, additionalDefinitions, extCoreVersion))
        return extensions
 
@@ -720,10 +725,23 @@ def parseAPI (src):
        populateAliasesWithTypedefs(compositeTypes, src)
        populateAliasesWithTypedefs(enums, src)
        populateAliasesWithTypedefs(bitfields, src)
+       populateAliasesWithTypedefs(handles, src)
 
        for enum in enums:
                removeAliasedValues(enum)
 
+
+       # Make generator to create Deleter<VkAccelerationStructureNV>
+       for f in allFunctions:
+               if (f.name == 'vkDestroyAccelerationStructureNV'):
+                       f.arguments[1].type[0] = 'VkAccelerationStructureNV'
+
+       # Dealias handles VkAccelerationStructureNV and VkAccelerationStructureKHR
+       for handle in handles:
+               if handle.name == 'VkAccelerationStructureKHR':
+                       handle.alias = None
+               if handle.name == 'VkAccelerationStructureNV':
+                       handle.isAlias = False
        return API(
                versions                = versions,
                definitions             = definitions,
@@ -897,12 +915,20 @@ def writeBasicTypes (api, filename):
                        if not enum.isAlias:
                                for line in genEnumSrc(enum):
                                        yield line
+                       else:
+                               for enum2 in api.enums:
+                                       if enum2.alias == enum:
+                                               yield "typedef %s %s;" % (enum2.name, enum.name)
                        yield ""
 
                for bitfield in api.bitfields:
                        if not bitfield.isAlias:
                                for line in genBitfieldSrc(bitfield):
                                        yield line
+                       else:
+                               for bitfield2 in api.bitfields:
+                                       if bitfield2.alias == bitfield:
+                                               yield "typedef %s %s;" % (bitfield2.name, bitfield.name)
                        yield ""
                for line in indentLines(["VK_DEFINE_PLATFORM_TYPE(%s,\t%s);" % (s[0], c) for n, s, c in PLATFORM_TYPES]):
                        yield line
@@ -1015,7 +1041,7 @@ def writeStrUtilProto (api, filename):
                for line in indentLines(["inline std::ostream&\toperator<<\t(std::ostream& s, %s value)\t{ return s << get%sStr(value);\t}" % (e.name, e.name[2:]) for e in api.enums if not e.isAlias]):
                        yield line
                yield ""
-               for line in indentLines(["tcu::Format::Bitfield<32>\tget%sStr\t(%s value);" % (bitfield.name[2:], bitfield.name) for bitfield in api.bitfields if not bitfield.isAlias]):
+               for line in indentLines(["tcu::Format::Bitfield<32>\tget%sStr\t(%s value);" % (bitfield.name[2:], bitfield.name) for bitfield in api.bitfields if not bitfield.isAlias or bitfield.name=='VkBuildAccelerationStructureFlagsNV']):
                        yield line
                yield ""
                for line in indentLines(["std::ostream&\toperator<<\t(std::ostream& s, const %s& value);" % (s.name) for s in api.compositeTypes if not s.isAlias]):
@@ -1052,7 +1078,8 @@ def writeStrUtilImpl (api, filename):
 
                for bitfield in api.bitfields:
                        if bitfield.isAlias:
-                               continue
+                               if bitfield.name != 'VkBuildAccelerationStructureFlagsNV':
+                                       continue
                        yield ""
                        yield "tcu::Format::Bitfield<32> get%sStr (%s value)" % (bitfield.name[2:], bitfield.name)
                        yield "{"
@@ -1226,6 +1253,7 @@ def writeNullDriverImpl (api, filename):
                                "vkCreateGraphicsPipelines",
                                "vkCreateComputePipelines",
                                "vkCreateRayTracingPipelinesNV",
+                               "vkCreateRayTracingPipelinesKHR",
                                "vkGetInstanceProcAddr",
                                "vkGetDeviceProcAddr",
                                "vkEnumeratePhysicalDevices",
@@ -1793,6 +1821,8 @@ def genericDevicePropertiesWriter(dfDefs, pattern, filename):
        stream = []
        for _, _, extStruct, _, _, _ in dfDefs:
                nameSubStr = extStruct.replace("VkPhysicalDevice", "").replace("KHR", "").replace("NV", "")
+               if extStruct == "VkPhysicalDeviceRayTracingPropertiesNV":
+                       nameSubStr += "NV"
                stream.append(pattern.format(extStruct, nameSubStr))
        writeInlFile(filename, INL_HEADER, indentLines(stream))
 
diff --git a/external/vulkancts/scripts/src/vulkan_beta.h b/external/vulkancts/scripts/src/vulkan_beta.h
new file mode 100644 (file)
index 0000000..6d0eec6
--- /dev/null
@@ -0,0 +1,441 @@
+#ifndef VULKAN_BETA_H_
+#define VULKAN_BETA_H_ 1
+
+/*
+** Copyright (c) 2015-2020 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.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+
+/*
+** This header is generated from the Khronos Vulkan XML API Registry.
+**
+*/
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+
+#define VK_KHR_deferred_host_operations 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeferredOperationKHR)
+#define VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION 2
+#define VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME "VK_KHR_deferred_host_operations"
+typedef struct VkDeferredOperationInfoKHR {
+    VkStructureType           sType;
+    const void*               pNext;
+    VkDeferredOperationKHR    operationHandle;
+} VkDeferredOperationInfoKHR;
+
+typedef VkResult (VKAPI_PTR *PFN_vkCreateDeferredOperationKHR)(VkDevice device, const VkAllocationCallbacks* pAllocator, VkDeferredOperationKHR* pDeferredOperation);
+typedef void (VKAPI_PTR *PFN_vkDestroyDeferredOperationKHR)(VkDevice device, VkDeferredOperationKHR operation, const VkAllocationCallbacks* pAllocator);
+typedef uint32_t (VKAPI_PTR *PFN_vkGetDeferredOperationMaxConcurrencyKHR)(VkDevice device, VkDeferredOperationKHR operation);
+typedef VkResult (VKAPI_PTR *PFN_vkGetDeferredOperationResultKHR)(VkDevice device, VkDeferredOperationKHR operation);
+typedef VkResult (VKAPI_PTR *PFN_vkDeferredOperationJoinKHR)(VkDevice device, VkDeferredOperationKHR operation);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateDeferredOperationKHR(
+    VkDevice                                    device,
+    const VkAllocationCallbacks*                pAllocator,
+    VkDeferredOperationKHR*                     pDeferredOperation);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyDeferredOperationKHR(
+    VkDevice                                    device,
+    VkDeferredOperationKHR                      operation,
+    const VkAllocationCallbacks*                pAllocator);
+
+VKAPI_ATTR uint32_t VKAPI_CALL vkGetDeferredOperationMaxConcurrencyKHR(
+    VkDevice                                    device,
+    VkDeferredOperationKHR                      operation);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetDeferredOperationResultKHR(
+    VkDevice                                    device,
+    VkDeferredOperationKHR                      operation);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkDeferredOperationJoinKHR(
+    VkDevice                                    device,
+    VkDeferredOperationKHR                      operation);
+#endif
+
+
+#define VK_KHR_pipeline_library 1
+#define VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION 1
+#define VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME "VK_KHR_pipeline_library"
+typedef struct VkPipelineLibraryCreateInfoKHR {
+    VkStructureType      sType;
+    const void*          pNext;
+    uint32_t             libraryCount;
+    const VkPipeline*    pLibraries;
+} VkPipelineLibraryCreateInfoKHR;
+
+
+
+#define VK_KHR_ray_tracing 1
+#define VK_KHR_RAY_TRACING_SPEC_VERSION   8
+#define VK_KHR_RAY_TRACING_EXTENSION_NAME "VK_KHR_ray_tracing"
+
+typedef enum VkAccelerationStructureBuildTypeKHR {
+    VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0,
+    VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1,
+    VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2,
+    VK_ACCELERATION_STRUCTURE_BUILD_TYPE_BEGIN_RANGE_KHR = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR,
+    VK_ACCELERATION_STRUCTURE_BUILD_TYPE_END_RANGE_KHR = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR,
+    VK_ACCELERATION_STRUCTURE_BUILD_TYPE_RANGE_SIZE_KHR = (VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR + 1),
+    VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkAccelerationStructureBuildTypeKHR;
+typedef union VkDeviceOrHostAddressKHR {
+    VkDeviceAddress    deviceAddress;
+    void*              hostAddress;
+} VkDeviceOrHostAddressKHR;
+
+typedef union VkDeviceOrHostAddressConstKHR {
+    VkDeviceAddress    deviceAddress;
+    const void*        hostAddress;
+} VkDeviceOrHostAddressConstKHR;
+
+typedef struct VkAccelerationStructureBuildOffsetInfoKHR {
+    uint32_t    primitiveCount;
+    uint32_t    primitiveOffset;
+    uint32_t    firstVertex;
+    uint32_t    transformOffset;
+} VkAccelerationStructureBuildOffsetInfoKHR;
+
+typedef struct VkRayTracingShaderGroupCreateInfoKHR {
+    VkStructureType                   sType;
+    const void*                       pNext;
+    VkRayTracingShaderGroupTypeKHR    type;
+    uint32_t                          generalShader;
+    uint32_t                          closestHitShader;
+    uint32_t                          anyHitShader;
+    uint32_t                          intersectionShader;
+    const void*                       pShaderGroupCaptureReplayHandle;
+} VkRayTracingShaderGroupCreateInfoKHR;
+
+typedef struct VkRayTracingPipelineInterfaceCreateInfoKHR {
+    VkStructureType    sType;
+    const void*        pNext;
+    uint32_t           maxPayloadSize;
+    uint32_t           maxAttributeSize;
+    uint32_t           maxCallableSize;
+} VkRayTracingPipelineInterfaceCreateInfoKHR;
+
+typedef struct VkRayTracingPipelineCreateInfoKHR {
+    VkStructureType                                      sType;
+    const void*                                          pNext;
+    VkPipelineCreateFlags                                flags;
+    uint32_t                                             stageCount;
+    const VkPipelineShaderStageCreateInfo*               pStages;
+    uint32_t                                             groupCount;
+    const VkRayTracingShaderGroupCreateInfoKHR*          pGroups;
+    uint32_t                                             maxRecursionDepth;
+    VkPipelineLibraryCreateInfoKHR                       libraries;
+    const VkRayTracingPipelineInterfaceCreateInfoKHR*    pLibraryInterface;
+    VkPipelineLayout                                     layout;
+    VkPipeline                                           basePipelineHandle;
+    int32_t                                              basePipelineIndex;
+} VkRayTracingPipelineCreateInfoKHR;
+
+typedef struct VkAccelerationStructureGeometryTrianglesDataKHR {
+    VkStructureType                  sType;
+    const void*                      pNext;
+    VkFormat                         vertexFormat;
+    VkDeviceOrHostAddressConstKHR    vertexData;
+    VkDeviceSize                     vertexStride;
+    VkIndexType                      indexType;
+    VkDeviceOrHostAddressConstKHR    indexData;
+    VkDeviceOrHostAddressConstKHR    transformData;
+} VkAccelerationStructureGeometryTrianglesDataKHR;
+
+typedef struct VkAccelerationStructureGeometryAabbsDataKHR {
+    VkStructureType                  sType;
+    const void*                      pNext;
+    VkDeviceOrHostAddressConstKHR    data;
+    VkDeviceSize                     stride;
+} VkAccelerationStructureGeometryAabbsDataKHR;
+
+typedef struct VkAccelerationStructureGeometryInstancesDataKHR {
+    VkStructureType                  sType;
+    const void*                      pNext;
+    VkBool32                         arrayOfPointers;
+    VkDeviceOrHostAddressConstKHR    data;
+} VkAccelerationStructureGeometryInstancesDataKHR;
+
+typedef union VkAccelerationStructureGeometryDataKHR {
+    VkAccelerationStructureGeometryTrianglesDataKHR    triangles;
+    VkAccelerationStructureGeometryAabbsDataKHR        aabbs;
+    VkAccelerationStructureGeometryInstancesDataKHR    instances;
+} VkAccelerationStructureGeometryDataKHR;
+
+typedef struct VkAccelerationStructureGeometryKHR {
+    VkStructureType                           sType;
+    const void*                               pNext;
+    VkGeometryTypeKHR                         geometryType;
+    VkAccelerationStructureGeometryDataKHR    geometry;
+    VkGeometryFlagsKHR                        flags;
+} VkAccelerationStructureGeometryKHR;
+
+typedef struct VkAccelerationStructureBuildGeometryInfoKHR {
+    VkStructureType                                     sType;
+    const void*                                         pNext;
+    VkAccelerationStructureTypeKHR                      type;
+    VkBuildAccelerationStructureFlagsKHR                flags;
+    VkBool32                                            update;
+    VkAccelerationStructureKHR                          srcAccelerationStructure;
+    VkAccelerationStructureKHR                          dstAccelerationStructure;
+    VkBool32                                            geometryArrayOfPointers;
+    uint32_t                                            geometryCount;
+    const VkAccelerationStructureGeometryKHR* const*    ppGeometries;
+    VkDeviceOrHostAddressKHR                            scratchData;
+} VkAccelerationStructureBuildGeometryInfoKHR;
+
+typedef struct VkAccelerationStructureCreateGeometryTypeInfoKHR {
+    VkStructureType      sType;
+    const void*          pNext;
+    VkGeometryTypeKHR    geometryType;
+    uint32_t             maxPrimitiveCount;
+    VkIndexType          indexType;
+    uint32_t             maxVertexCount;
+    VkFormat             vertexFormat;
+    VkBool32             allowsTransforms;
+} VkAccelerationStructureCreateGeometryTypeInfoKHR;
+
+typedef struct VkAccelerationStructureCreateInfoKHR {
+    VkStructureType                                            sType;
+    const void*                                                pNext;
+    VkDeviceSize                                               compactedSize;
+    VkAccelerationStructureTypeKHR                             type;
+    VkBuildAccelerationStructureFlagsKHR                       flags;
+    uint32_t                                                   maxGeometryCount;
+    const VkAccelerationStructureCreateGeometryTypeInfoKHR*    pGeometryInfos;
+    VkDeviceAddress                                            deviceAddress;
+} VkAccelerationStructureCreateInfoKHR;
+
+typedef struct VkAccelerationStructureMemoryRequirementsInfoKHR {
+    VkStructureType                                     sType;
+    const void*                                         pNext;
+    VkAccelerationStructureMemoryRequirementsTypeKHR    type;
+    VkAccelerationStructureBuildTypeKHR                 buildType;
+    VkAccelerationStructureKHR                          accelerationStructure;
+} VkAccelerationStructureMemoryRequirementsInfoKHR;
+
+typedef struct VkPhysicalDeviceRayTracingFeaturesKHR {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           rayTracing;
+    VkBool32           rayTracingShaderGroupHandleCaptureReplay;
+    VkBool32           rayTracingShaderGroupHandleCaptureReplayMixed;
+    VkBool32           rayTracingAccelerationStructureCaptureReplay;
+    VkBool32           rayTracingIndirectTraceRays;
+    VkBool32           rayTracingIndirectAccelerationStructureBuild;
+    VkBool32           rayTracingHostAccelerationStructureCommands;
+    VkBool32           rayQuery;
+    VkBool32           rayTracingPrimitiveCulling;
+} VkPhysicalDeviceRayTracingFeaturesKHR;
+
+typedef struct VkPhysicalDeviceRayTracingPropertiesKHR {
+    VkStructureType    sType;
+    void*              pNext;
+    uint32_t           shaderGroupHandleSize;
+    uint32_t           maxRecursionDepth;
+    uint32_t           maxShaderGroupStride;
+    uint32_t           shaderGroupBaseAlignment;
+    uint64_t           maxGeometryCount;
+    uint64_t           maxInstanceCount;
+    uint64_t           maxPrimitiveCount;
+    uint32_t           maxDescriptorSetAccelerationStructures;
+    uint32_t           shaderGroupHandleCaptureReplaySize;
+} VkPhysicalDeviceRayTracingPropertiesKHR;
+
+typedef struct VkAccelerationStructureDeviceAddressInfoKHR {
+    VkStructureType               sType;
+    const void*                   pNext;
+    VkAccelerationStructureKHR    accelerationStructure;
+} VkAccelerationStructureDeviceAddressInfoKHR;
+
+typedef struct VkAccelerationStructureVersionKHR {
+    VkStructureType    sType;
+    const void*        pNext;
+    const uint8_t*     versionData;
+} VkAccelerationStructureVersionKHR;
+
+typedef struct VkStridedBufferRegionKHR {
+    VkBuffer        buffer;
+    VkDeviceSize    offset;
+    VkDeviceSize    stride;
+    VkDeviceSize    size;
+} VkStridedBufferRegionKHR;
+
+typedef struct VkTraceRaysIndirectCommandKHR {
+    uint32_t    width;
+    uint32_t    height;
+    uint32_t    depth;
+} VkTraceRaysIndirectCommandKHR;
+
+typedef struct VkCopyAccelerationStructureToMemoryInfoKHR {
+    VkStructureType                       sType;
+    const void*                           pNext;
+    VkAccelerationStructureKHR            src;
+    VkDeviceOrHostAddressKHR              dst;
+    VkCopyAccelerationStructureModeKHR    mode;
+} VkCopyAccelerationStructureToMemoryInfoKHR;
+
+typedef struct VkCopyMemoryToAccelerationStructureInfoKHR {
+    VkStructureType                       sType;
+    const void*                           pNext;
+    VkDeviceOrHostAddressConstKHR         src;
+    VkAccelerationStructureKHR            dst;
+    VkCopyAccelerationStructureModeKHR    mode;
+} VkCopyMemoryToAccelerationStructureInfoKHR;
+
+typedef struct VkCopyAccelerationStructureInfoKHR {
+    VkStructureType                       sType;
+    const void*                           pNext;
+    VkAccelerationStructureKHR            src;
+    VkAccelerationStructureKHR            dst;
+    VkCopyAccelerationStructureModeKHR    mode;
+} VkCopyAccelerationStructureInfoKHR;
+
+typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureKHR)(VkDevice                                           device, const VkAccelerationStructureCreateInfoKHR*        pCreateInfo, const VkAllocationCallbacks*       pAllocator, VkAccelerationStructureKHR*                        pAccelerationStructure);
+typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureMemoryRequirementsKHR)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements);
+typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureKHR)(VkCommandBuffer                                    commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
+typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureIndirectKHR)(VkCommandBuffer                                    commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer                                           indirectBuffer, VkDeviceSize                                       indirectOffset, uint32_t                                           indirectStride);
+typedef VkResult (VKAPI_PTR *PFN_vkBuildAccelerationStructureKHR)(VkDevice                                           device, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureKHR)(VkDevice device, const VkCopyAccelerationStructureInfoKHR* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureToMemoryKHR)(VkDevice device, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyMemoryToAccelerationStructureKHR)(VkDevice device, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkWriteAccelerationStructuresPropertiesKHR)(VkDevice device, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType  queryType, size_t       dataSize, void* pData, size_t stride);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureKHR)(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureInfoKHR* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureToMemoryKHR)(VkCommandBuffer commandBuffer, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyMemoryToAccelerationStructureKHR)(VkCommandBuffer commandBuffer, const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysKHR)(VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, uint32_t width, uint32_t height, uint32_t depth);
+typedef VkResult (VKAPI_PTR *PFN_vkCreateRayTracingPipelinesKHR)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
+typedef VkDeviceAddress (VKAPI_PTR *PFN_vkGetAccelerationStructureDeviceAddressKHR)(VkDevice device, const VkAccelerationStructureDeviceAddressInfoKHR* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData);
+typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysIndirectKHR)(VkCommandBuffer commandBuffer, const VkStridedBufferRegionKHR* pRaygenShaderBindingTable, const VkStridedBufferRegionKHR* pMissShaderBindingTable, const VkStridedBufferRegionKHR* pHitShaderBindingTable, const VkStridedBufferRegionKHR* pCallableShaderBindingTable, VkBuffer buffer, VkDeviceSize offset);
+typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)(VkDevice device, const VkAccelerationStructureVersionKHR* version);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureKHR(
+    VkDevice                                    device,
+    const VkAccelerationStructureCreateInfoKHR* pCreateInfo,
+    const VkAllocationCallbacks*                pAllocator,
+    VkAccelerationStructureKHR*                 pAccelerationStructure);
+
+VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsKHR(
+    VkDevice                                    device,
+    const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo,
+    VkMemoryRequirements2*                      pMemoryRequirements);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureKHR(
+    VkCommandBuffer                             commandBuffer,
+    uint32_t                                    infoCount,
+    const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
+    const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureIndirectKHR(
+    VkCommandBuffer                             commandBuffer,
+    const VkAccelerationStructureBuildGeometryInfoKHR* pInfo,
+    VkBuffer                                    indirectBuffer,
+    VkDeviceSize                                indirectOffset,
+    uint32_t                                    indirectStride);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkBuildAccelerationStructureKHR(
+    VkDevice                                    device,
+    uint32_t                                    infoCount,
+    const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
+    const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCopyAccelerationStructureKHR(
+    VkDevice                                    device,
+    const VkCopyAccelerationStructureInfoKHR*   pInfo);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCopyAccelerationStructureToMemoryKHR(
+    VkDevice                                    device,
+    const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCopyMemoryToAccelerationStructureKHR(
+    VkDevice                                    device,
+    const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkWriteAccelerationStructuresPropertiesKHR(
+    VkDevice                                    device,
+    uint32_t                                    accelerationStructureCount,
+    const VkAccelerationStructureKHR*           pAccelerationStructures,
+    VkQueryType                                 queryType,
+    size_t                                      dataSize,
+    void*                                       pData,
+    size_t                                      stride);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureKHR(
+    VkCommandBuffer                             commandBuffer,
+    const VkCopyAccelerationStructureInfoKHR*   pInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureToMemoryKHR(
+    VkCommandBuffer                             commandBuffer,
+    const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdCopyMemoryToAccelerationStructureKHR(
+    VkCommandBuffer                             commandBuffer,
+    const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysKHR(
+    VkCommandBuffer                             commandBuffer,
+    const VkStridedBufferRegionKHR*             pRaygenShaderBindingTable,
+    const VkStridedBufferRegionKHR*             pMissShaderBindingTable,
+    const VkStridedBufferRegionKHR*             pHitShaderBindingTable,
+    const VkStridedBufferRegionKHR*             pCallableShaderBindingTable,
+    uint32_t                                    width,
+    uint32_t                                    height,
+    uint32_t                                    depth);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateRayTracingPipelinesKHR(
+    VkDevice                                    device,
+    VkPipelineCache                             pipelineCache,
+    uint32_t                                    createInfoCount,
+    const VkRayTracingPipelineCreateInfoKHR*    pCreateInfos,
+    const VkAllocationCallbacks*                pAllocator,
+    VkPipeline*                                 pPipelines);
+
+VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetAccelerationStructureDeviceAddressKHR(
+    VkDevice                                    device,
+    const VkAccelerationStructureDeviceAddressInfoKHR* pInfo);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingCaptureReplayShaderGroupHandlesKHR(
+    VkDevice                                    device,
+    VkPipeline                                  pipeline,
+    uint32_t                                    firstGroup,
+    uint32_t                                    groupCount,
+    size_t                                      dataSize,
+    void*                                       pData);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysIndirectKHR(
+    VkCommandBuffer                             commandBuffer,
+    const VkStridedBufferRegionKHR*             pRaygenShaderBindingTable,
+    const VkStridedBufferRegionKHR*             pMissShaderBindingTable,
+    const VkStridedBufferRegionKHR*             pHitShaderBindingTable,
+    const VkStridedBufferRegionKHR*             pCallableShaderBindingTable,
+    VkBuffer                                    buffer,
+    VkDeviceSize                                offset);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceAccelerationStructureCompatibilityKHR(
+    VkDevice                                    device,
+    const VkAccelerationStructureVersionKHR*    version);
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
index afbbd52..9b8fe24 100644 (file)
@@ -44,7 +44,10 @@ 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 132
+#define VK_HEADER_VERSION 135
+
+// Complete version of this file
+#define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION)
 
 
 #define VK_NULL_HANDLE 0
@@ -145,9 +148,15 @@ typedef enum VkResult {
     VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,
     VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,
     VK_ERROR_INVALID_SHADER_NV = -1000012000,
+    VK_ERROR_INCOMPATIBLE_VERSION_KHR = -1000150000,
     VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT = -1000158000,
     VK_ERROR_NOT_PERMITTED_EXT = -1000174001,
     VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT = -1000255000,
+    VK_THREAD_IDLE_KHR = 1000268000,
+    VK_THREAD_DONE_KHR = 1000268001,
+    VK_OPERATION_DEFERRED_KHR = 1000268002,
+    VK_OPERATION_NOT_DEFERRED_KHR = 1000268003,
+    VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT = 1000297000,
     VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY,
     VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = VK_ERROR_INVALID_EXTERNAL_HANDLE,
     VK_ERROR_FRAGMENTATION_EXT = VK_ERROR_FRAGMENTATION,
@@ -384,12 +393,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT = 1000081001,
     VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT = 1000081002,
     VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR = 1000084000,
-    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_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV = 1000087000,
     VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT = 1000090000,
     VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT = 1000091000,
@@ -453,6 +456,27 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT = 1000148001,
     VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT = 1000148002,
     VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV = 1000149000,
+    VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR = 1000165006,
+    VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR = 1000165007,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR = 1000150000,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_GEOMETRY_TYPE_INFO_KHR = 1000150001,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR = 1000150002,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR = 1000150003,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR = 1000150004,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR = 1000150005,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR = 1000150006,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_KHR = 1000150007,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_KHR = 1000150008,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_KHR = 1000150009,
+    VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR = 1000150010,
+    VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR = 1000150011,
+    VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR = 1000150012,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_FEATURES_KHR = 1000150013,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_KHR = 1000150014,
+    VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR = 1000150015,
+    VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR = 1000150016,
+    VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR = 1000150017,
+    VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR = 1000150018,
     VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV = 1000152000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV = 1000154000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV = 1000154001,
@@ -473,8 +497,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_GEOMETRY_NV = 1000165003,
     VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV = 1000165004,
     VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV = 1000165005,
-    VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV = 1000165006,
-    VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV = 1000165007,
     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV = 1000165008,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV = 1000165009,
     VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV = 1000165011,
@@ -551,6 +573,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT = 1000259001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT = 1000259002,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT = 1000265000,
+    VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR = 1000268000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR = 1000269000,
     VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR = 1000269001,
     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR = 1000269002,
@@ -558,8 +581,22 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR = 1000269004,
     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR = 1000269005,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT = 1000276000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV = 1000277000,
+    VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV = 1000277001,
+    VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV = 1000277002,
+    VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV = 1000277003,
+    VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV = 1000277004,
+    VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV = 1000277005,
+    VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV = 1000277006,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV = 1000277007,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT = 1000281000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT = 1000281001,
+    VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM = 1000282000,
+    VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM = 1000282001,
+    VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR = 1000290000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT = 1000297000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV = 1000300000,
+    VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV = 1000300001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
     VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
@@ -643,6 +680,8 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES,
     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO,
     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT,
+    VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_KHR,
+    VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,
     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES,
@@ -673,6 +712,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO,
     VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES,
+    VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL,
     VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO,
     VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,
     VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),
@@ -1019,8 +1059,10 @@ typedef enum VkQueryType {
     VK_QUERY_TYPE_TIMESTAMP = 2,
     VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004,
     VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR = 1000116000,
-    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000,
+    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000165000,
+    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150000,
     VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL = 1000210000,
+    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR,
     VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION,
     VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP,
     VK_QUERY_TYPE_RANGE_SIZE = (VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1),
@@ -1362,7 +1404,8 @@ typedef enum VkDescriptorType {
     VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9,
     VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10,
     VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = 1000138000,
-    VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
+    VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000165000,
+    VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR,
     VK_DESCRIPTOR_TYPE_BEGIN_RANGE = VK_DESCRIPTOR_TYPE_SAMPLER,
     VK_DESCRIPTOR_TYPE_END_RANGE = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
     VK_DESCRIPTOR_TYPE_RANGE_SIZE = (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1),
@@ -1391,7 +1434,8 @@ typedef enum VkAttachmentStoreOp {
 typedef enum VkPipelineBindPoint {
     VK_PIPELINE_BIND_POINT_GRAPHICS = 0,
     VK_PIPELINE_BIND_POINT_COMPUTE = 1,
-    VK_PIPELINE_BIND_POINT_RAY_TRACING_NV = 1000165000,
+    VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR = 1000165000,
+    VK_PIPELINE_BIND_POINT_RAY_TRACING_NV = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR,
     VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS,
     VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE,
     VK_PIPELINE_BIND_POINT_RANGE_SIZE = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1),
@@ -1410,8 +1454,9 @@ typedef enum VkCommandBufferLevel {
 typedef enum VkIndexType {
     VK_INDEX_TYPE_UINT16 = 0,
     VK_INDEX_TYPE_UINT32 = 1,
-    VK_INDEX_TYPE_NONE_NV = 1000165000,
+    VK_INDEX_TYPE_NONE_KHR = 1000165000,
     VK_INDEX_TYPE_UINT8_EXT = 1000265000,
+    VK_INDEX_TYPE_NONE_NV = VK_INDEX_TYPE_NONE_KHR,
     VK_INDEX_TYPE_BEGIN_RANGE = VK_INDEX_TYPE_UINT16,
     VK_INDEX_TYPE_END_RANGE = VK_INDEX_TYPE_UINT32,
     VK_INDEX_TYPE_RANGE_SIZE = (VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1),
@@ -1461,14 +1506,15 @@ typedef enum VkObjectType {
     VK_OBJECT_TYPE_DISPLAY_KHR = 1000002000,
     VK_OBJECT_TYPE_DISPLAY_MODE_KHR = 1000002001,
     VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT = 1000011000,
-    VK_OBJECT_TYPE_OBJECT_TABLE_NVX = 1000086000,
-    VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX = 1000086001,
     VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000128000,
+    VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR = 1000165000,
     VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000,
-    VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
     VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL = 1000210000,
+    VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000,
+    VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000,
     VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
     VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
+    VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR,
     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),
@@ -1479,9 +1525,10 @@ typedef enum VkVendorId {
     VK_VENDOR_ID_VIV = 0x10001,
     VK_VENDOR_ID_VSI = 0x10002,
     VK_VENDOR_ID_KAZAN = 0x10003,
+    VK_VENDOR_ID_CODEPLAY = 0x10004,
     VK_VENDOR_ID_BEGIN_RANGE = VK_VENDOR_ID_VIV,
-    VK_VENDOR_ID_END_RANGE = VK_VENDOR_ID_KAZAN,
-    VK_VENDOR_ID_RANGE_SIZE = (VK_VENDOR_ID_KAZAN - VK_VENDOR_ID_VIV + 1),
+    VK_VENDOR_ID_END_RANGE = VK_VENDOR_ID_CODEPLAY,
+    VK_VENDOR_ID_RANGE_SIZE = (VK_VENDOR_ID_CODEPLAY - VK_VENDOR_ID_VIV + 1),
     VK_VENDOR_ID_MAX_ENUM = 0x7FFFFFFF
 } VkVendorId;
 typedef VkFlags VkInstanceCreateFlags;
@@ -1511,6 +1558,7 @@ typedef enum VkFormatFeatureFlagBits {
     VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT = 0x00800000,
     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT = 0x00010000,
     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,
+    VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR = 0x20000000,
     VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x01000000,
     VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
     VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
@@ -1638,13 +1686,15 @@ typedef enum VkPipelineStageFlagBits {
     VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,
     VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT = 0x01000000,
     VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000,
-    VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000,
+    VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR = 0x00200000,
+    VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR = 0x02000000,
     VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = 0x00400000,
-    VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV = 0x00200000,
-    VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV = 0x02000000,
     VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV = 0x00080000,
     VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV = 0x00100000,
     VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT = 0x00800000,
+    VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV = 0x00020000,
+    VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
+    VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
     VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkPipelineStageFlagBits;
 typedef VkFlags VkPipelineStageFlags;
@@ -1743,7 +1793,8 @@ typedef enum VkBufferUsageFlagBits {
     VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT = 0x00000800,
     VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT = 0x00001000,
     VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00000200,
-    VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = 0x00000400,
+    VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR = 0x00000400,
+    VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_RAY_TRACING_BIT_KHR,
     VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
     VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
     VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
@@ -1761,6 +1812,11 @@ typedef enum VkShaderModuleCreateFlagBits {
     VK_SHADER_MODULE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkShaderModuleCreateFlagBits;
 typedef VkFlags VkShaderModuleCreateFlags;
+
+typedef enum VkPipelineCacheCreateFlagBits {
+    VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT = 0x00000001,
+    VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
+} VkPipelineCacheCreateFlagBits;
 typedef VkFlags VkPipelineCacheCreateFlags;
 
 typedef enum VkPipelineCreateFlagBits {
@@ -1769,9 +1825,19 @@ typedef enum VkPipelineCreateFlagBits {
     VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,
     VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = 0x00000008,
     VK_PIPELINE_CREATE_DISPATCH_BASE_BIT = 0x00000010,
+    VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR = 0x00004000,
+    VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR = 0x00008000,
+    VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR = 0x00010000,
+    VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR = 0x00020000,
+    VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR = 0x00001000,
+    VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR = 0x00002000,
     VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV = 0x00000020,
     VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR = 0x00000040,
     VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR = 0x00000080,
+    VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV = 0x00040000,
+    VK_PIPELINE_CREATE_LIBRARY_BIT_KHR = 0x00000800,
+    VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT = 0x00000100,
+    VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT = 0x00000200,
     VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
     VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
     VK_PIPELINE_CREATE_DISPATCH_BASE_KHR = VK_PIPELINE_CREATE_DISPATCH_BASE,
@@ -1795,14 +1861,20 @@ typedef enum VkShaderStageFlagBits {
     VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,
     VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F,
     VK_SHADER_STAGE_ALL = 0x7FFFFFFF,
-    VK_SHADER_STAGE_RAYGEN_BIT_NV = 0x00000100,
-    VK_SHADER_STAGE_ANY_HIT_BIT_NV = 0x00000200,
-    VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV = 0x00000400,
-    VK_SHADER_STAGE_MISS_BIT_NV = 0x00000800,
-    VK_SHADER_STAGE_INTERSECTION_BIT_NV = 0x00001000,
-    VK_SHADER_STAGE_CALLABLE_BIT_NV = 0x00002000,
+    VK_SHADER_STAGE_RAYGEN_BIT_KHR = 0x00000100,
+    VK_SHADER_STAGE_ANY_HIT_BIT_KHR = 0x00000200,
+    VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR = 0x00000400,
+    VK_SHADER_STAGE_MISS_BIT_KHR = 0x00000800,
+    VK_SHADER_STAGE_INTERSECTION_BIT_KHR = 0x00001000,
+    VK_SHADER_STAGE_CALLABLE_BIT_KHR = 0x00002000,
     VK_SHADER_STAGE_TASK_BIT_NV = 0x00000040,
     VK_SHADER_STAGE_MESH_BIT_NV = 0x00000080,
+    VK_SHADER_STAGE_RAYGEN_BIT_NV = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
+    VK_SHADER_STAGE_ANY_HIT_BIT_NV = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
+    VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
+    VK_SHADER_STAGE_MISS_BIT_NV = VK_SHADER_STAGE_MISS_BIT_KHR,
+    VK_SHADER_STAGE_INTERSECTION_BIT_NV = VK_SHADER_STAGE_INTERSECTION_BIT_KHR,
+    VK_SHADER_STAGE_CALLABLE_BIT_NV = VK_SHADER_STAGE_CALLABLE_BIT_KHR,
     VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkShaderStageFlagBits;
 typedef VkFlags VkPipelineVertexInputStateCreateFlags;
@@ -1867,6 +1939,7 @@ typedef enum VkFramebufferCreateFlagBits {
 typedef VkFlags VkFramebufferCreateFlags;
 
 typedef enum VkRenderPassCreateFlagBits {
+    VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM = 0x00000002,
     VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkRenderPassCreateFlagBits;
 typedef VkFlags VkRenderPassCreateFlags;
@@ -1906,13 +1979,15 @@ typedef enum VkAccessFlagBits {
     VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = 0x04000000,
     VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = 0x08000000,
     VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT = 0x00100000,
-    VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX = 0x00020000,
-    VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX = 0x00040000,
     VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000,
+    VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR = 0x00200000,
+    VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000,
     VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV = 0x00800000,
-    VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV = 0x00200000,
-    VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV = 0x00400000,
     VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000,
+    VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV = 0x00020000,
+    VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV = 0x00040000,
+    VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
+    VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
     VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkAccessFlagBits;
 typedef VkFlags VkAccessFlags;
@@ -7387,6 +7462,11 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineExecutableInternalRepresentationsKHR
 #endif
 
 
+#define VK_KHR_shader_non_semantic_info 1
+#define VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION 1
+#define VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME "VK_KHR_shader_non_semantic_info"
+
+
 #define VK_EXT_debug_report 1
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDebugReportCallbackEXT)
 #define VK_EXT_DEBUG_REPORT_SPEC_VERSION  9
@@ -7424,16 +7504,15 @@ typedef enum VkDebugReportObjectTypeEXT {
     VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_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_OBJECT_TABLE_NVX_EXT = 31,
-    VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT = 32,
     VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33,
     VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT = 1000156000,
     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT = 1000085000,
-    VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = 1000165000,
+    VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT = 1000165000,
     VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
     VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,
     VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,
+    VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT,
     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_VALIDATION_CACHE_EXT_EXT,
     VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT = (VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1),
@@ -8011,229 +8090,6 @@ VKAPI_ATTR void VKAPI_CALL vkCmdEndConditionalRenderingEXT(
 #endif
 
 
-#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 3
-#define VK_NVX_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NVX_device_generated_commands"
-
-typedef enum VkIndirectCommandsTokenTypeNVX {
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX = 0,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX = 1,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX = 2,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX = 3,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX = 4,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX = 5,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX = 6,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX = 7,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NVX = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX,
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NVX = (VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX - VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX + 1),
-    VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NVX = 0x7FFFFFFF
-} VkIndirectCommandsTokenTypeNVX;
-
-typedef enum VkObjectEntryTypeNVX {
-    VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX = 0,
-    VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX = 1,
-    VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX = 2,
-    VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX = 3,
-    VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX = 4,
-    VK_OBJECT_ENTRY_TYPE_BEGIN_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX,
-    VK_OBJECT_ENTRY_TYPE_END_RANGE_NVX = VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX,
-    VK_OBJECT_ENTRY_TYPE_RANGE_SIZE_NVX = (VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX - VK_OBJECT_ENTRY_TYPE_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;
-    VkIndexType                   indexType;
-} 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_NV_clip_space_w_scaling 1
 #define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1
 #define VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME "VK_NV_clip_space_w_scaling"
@@ -9278,91 +9134,142 @@ VKAPI_ATTR void VKAPI_CALL vkCmdSetCoarseSampleOrderNV(
 
 
 #define VK_NV_ray_tracing 1
-VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureNV)
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR)
+typedef VkAccelerationStructureKHR VkAccelerationStructureNV;
+
 #define VK_NV_RAY_TRACING_SPEC_VERSION    3
 #define VK_NV_RAY_TRACING_EXTENSION_NAME  "VK_NV_ray_tracing"
-#define VK_SHADER_UNUSED_NV               (~0U)
-
-typedef enum VkAccelerationStructureTypeNV {
-    VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV = 0,
-    VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV = 1,
-    VK_ACCELERATION_STRUCTURE_TYPE_BEGIN_RANGE_NV = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV,
-    VK_ACCELERATION_STRUCTURE_TYPE_END_RANGE_NV = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV,
-    VK_ACCELERATION_STRUCTURE_TYPE_RANGE_SIZE_NV = (VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV - VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV + 1),
-    VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkAccelerationStructureTypeNV;
-
-typedef enum VkRayTracingShaderGroupTypeNV {
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV = 0,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV = 1,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV = 2,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_BEGIN_RANGE_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_END_RANGE_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV,
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_RANGE_SIZE_NV = (VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV - VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV + 1),
-    VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkRayTracingShaderGroupTypeNV;
-
-typedef enum VkGeometryTypeNV {
-    VK_GEOMETRY_TYPE_TRIANGLES_NV = 0,
-    VK_GEOMETRY_TYPE_AABBS_NV = 1,
-    VK_GEOMETRY_TYPE_BEGIN_RANGE_NV = VK_GEOMETRY_TYPE_TRIANGLES_NV,
-    VK_GEOMETRY_TYPE_END_RANGE_NV = VK_GEOMETRY_TYPE_AABBS_NV,
-    VK_GEOMETRY_TYPE_RANGE_SIZE_NV = (VK_GEOMETRY_TYPE_AABBS_NV - VK_GEOMETRY_TYPE_TRIANGLES_NV + 1),
-    VK_GEOMETRY_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkGeometryTypeNV;
-
-typedef enum VkCopyAccelerationStructureModeNV {
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV = 0,
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV = 1,
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV,
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_END_RANGE_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV,
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_NV = (VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV - VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV + 1),
-    VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkCopyAccelerationStructureModeNV;
-
-typedef enum VkAccelerationStructureMemoryRequirementsTypeNV {
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = 0,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = 1,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = 2,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BEGIN_RANGE_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_END_RANGE_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV,
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_RANGE_SIZE_NV = (VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV + 1),
-    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
-} VkAccelerationStructureMemoryRequirementsTypeNV;
-
-typedef enum VkGeometryFlagBitsNV {
-    VK_GEOMETRY_OPAQUE_BIT_NV = 0x00000001,
-    VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV = 0x00000002,
-    VK_GEOMETRY_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
-} VkGeometryFlagBitsNV;
-typedef VkFlags VkGeometryFlagsNV;
-
-typedef enum VkGeometryInstanceFlagBitsNV {
-    VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV = 0x00000001,
-    VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV = 0x00000002,
-    VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV = 0x00000004,
-    VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV = 0x00000008,
-    VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
-} VkGeometryInstanceFlagBitsNV;
-typedef VkFlags VkGeometryInstanceFlagsNV;
-
-typedef enum VkBuildAccelerationStructureFlagBitsNV {
-    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = 0x00000001,
-    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = 0x00000002,
-    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = 0x00000004,
-    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV = 0x00000008,
-    VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV = 0x00000010,
-    VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
-} VkBuildAccelerationStructureFlagBitsNV;
-typedef VkFlags VkBuildAccelerationStructureFlagsNV;
+#define VK_SHADER_UNUSED_KHR              (~0U)
+#define VK_SHADER_UNUSED_NV               VK_SHADER_UNUSED_KHR
+
+typedef enum VkRayTracingShaderGroupTypeKHR {
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR = 0,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR = 1,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR = 2,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_BEGIN_RANGE_KHR = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_END_RANGE_KHR = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR,
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_RANGE_SIZE_KHR = (VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR - VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR + 1),
+    VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkRayTracingShaderGroupTypeKHR;
+typedef VkRayTracingShaderGroupTypeKHR VkRayTracingShaderGroupTypeNV;
+
+
+typedef enum VkGeometryTypeKHR {
+    VK_GEOMETRY_TYPE_TRIANGLES_KHR = 0,
+    VK_GEOMETRY_TYPE_AABBS_KHR = 1,
+    VK_GEOMETRY_TYPE_INSTANCES_KHR = 1000150000,
+    VK_GEOMETRY_TYPE_TRIANGLES_NV = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
+    VK_GEOMETRY_TYPE_AABBS_NV = VK_GEOMETRY_TYPE_AABBS_KHR,
+    VK_GEOMETRY_TYPE_BEGIN_RANGE_KHR = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
+    VK_GEOMETRY_TYPE_END_RANGE_KHR = VK_GEOMETRY_TYPE_AABBS_KHR,
+    VK_GEOMETRY_TYPE_RANGE_SIZE_KHR = (VK_GEOMETRY_TYPE_AABBS_KHR - VK_GEOMETRY_TYPE_TRIANGLES_KHR + 1),
+    VK_GEOMETRY_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkGeometryTypeKHR;
+typedef VkGeometryTypeKHR VkGeometryTypeNV;
+
+
+typedef enum VkAccelerationStructureTypeKHR {
+    VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0,
+    VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1,
+    VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
+    VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
+    VK_ACCELERATION_STRUCTURE_TYPE_BEGIN_RANGE_KHR = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
+    VK_ACCELERATION_STRUCTURE_TYPE_END_RANGE_KHR = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
+    VK_ACCELERATION_STRUCTURE_TYPE_RANGE_SIZE_KHR = (VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR - VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR + 1),
+    VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkAccelerationStructureTypeKHR;
+typedef VkAccelerationStructureTypeKHR VkAccelerationStructureTypeNV;
+
+
+typedef enum VkCopyAccelerationStructureModeKHR {
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR = 0,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR = 1,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR = 2,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR = 3,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_KHR = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_END_RANGE_KHR = VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR,
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_KHR = (VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR - VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR + 1),
+    VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkCopyAccelerationStructureModeKHR;
+typedef VkCopyAccelerationStructureModeKHR VkCopyAccelerationStructureModeNV;
+
+
+typedef enum VkAccelerationStructureMemoryRequirementsTypeKHR {
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR = 0,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR = 1,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR = 2,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BEGIN_RANGE_KHR = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_END_RANGE_KHR = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR,
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_RANGE_SIZE_KHR = (VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR + 1),
+    VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkAccelerationStructureMemoryRequirementsTypeKHR;
+typedef VkAccelerationStructureMemoryRequirementsTypeKHR VkAccelerationStructureMemoryRequirementsTypeNV;
+
+
+typedef enum VkGeometryFlagBitsKHR {
+    VK_GEOMETRY_OPAQUE_BIT_KHR = 0x00000001,
+    VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR = 0x00000002,
+    VK_GEOMETRY_OPAQUE_BIT_NV = VK_GEOMETRY_OPAQUE_BIT_KHR,
+    VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV = VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR,
+    VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkGeometryFlagBitsKHR;
+typedef VkFlags VkGeometryFlagsKHR;
+typedef VkGeometryFlagsKHR VkGeometryFlagsNV;
+
+typedef VkGeometryFlagBitsKHR VkGeometryFlagBitsNV;
+
+
+typedef enum VkGeometryInstanceFlagBitsKHR {
+    VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR = 0x00000001,
+    VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR = 0x00000002,
+    VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 0x00000004,
+    VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 0x00000008,
+    VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
+    VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
+    VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,
+    VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,
+    VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkGeometryInstanceFlagBitsKHR;
+typedef VkFlags VkGeometryInstanceFlagsKHR;
+typedef VkGeometryInstanceFlagsKHR VkGeometryInstanceFlagsNV;
+
+typedef VkGeometryInstanceFlagBitsKHR VkGeometryInstanceFlagBitsNV;
+
+
+typedef enum VkBuildAccelerationStructureFlagBitsKHR {
+    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR = 0x00000001,
+    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR = 0x00000002,
+    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 0x00000004,
+    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,
+    VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 0x00000010,
+    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
+    VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkBuildAccelerationStructureFlagBitsKHR;
+typedef VkFlags VkBuildAccelerationStructureFlagsKHR;
+typedef VkBuildAccelerationStructureFlagsKHR VkBuildAccelerationStructureFlagsNV;
+
+typedef VkBuildAccelerationStructureFlagBitsKHR VkBuildAccelerationStructureFlagBitsNV;
+
 typedef struct VkRayTracingShaderGroupCreateInfoNV {
-    VkStructureType                  sType;
-    const void*                      pNext;
-    VkRayTracingShaderGroupTypeNV    type;
-    uint32_t                         generalShader;
-    uint32_t                         closestHitShader;
-    uint32_t                         anyHitShader;
-    uint32_t                         intersectionShader;
+    VkStructureType                   sType;
+    const void*                       pNext;
+    VkRayTracingShaderGroupTypeKHR    type;
+    uint32_t                          generalShader;
+    uint32_t                          closestHitShader;
+    uint32_t                          anyHitShader;
+    uint32_t                          intersectionShader;
 } VkRayTracingShaderGroupCreateInfoNV;
 
 typedef struct VkRayTracingPipelineCreateInfoNV {
@@ -9410,11 +9317,11 @@ typedef struct VkGeometryDataNV {
 } VkGeometryDataNV;
 
 typedef struct VkGeometryNV {
-    VkStructureType      sType;
-    const void*          pNext;
-    VkGeometryTypeNV     geometryType;
-    VkGeometryDataNV     geometry;
-    VkGeometryFlagsNV    flags;
+    VkStructureType       sType;
+    const void*           pNext;
+    VkGeometryTypeKHR     geometryType;
+    VkGeometryDataNV      geometry;
+    VkGeometryFlagsKHR    flags;
 } VkGeometryNV;
 
 typedef struct VkAccelerationStructureInfoNV {
@@ -9434,22 +9341,26 @@ typedef struct VkAccelerationStructureCreateInfoNV {
     VkAccelerationStructureInfoNV    info;
 } VkAccelerationStructureCreateInfoNV;
 
-typedef struct VkBindAccelerationStructureMemoryInfoNV {
-    VkStructureType              sType;
-    const void*                  pNext;
-    VkAccelerationStructureNV    accelerationStructure;
-    VkDeviceMemory               memory;
-    VkDeviceSize                 memoryOffset;
-    uint32_t                     deviceIndexCount;
-    const uint32_t*              pDeviceIndices;
-} VkBindAccelerationStructureMemoryInfoNV;
-
-typedef struct VkWriteDescriptorSetAccelerationStructureNV {
-    VkStructureType                     sType;
-    const void*                         pNext;
-    uint32_t                            accelerationStructureCount;
-    const VkAccelerationStructureNV*    pAccelerationStructures;
-} VkWriteDescriptorSetAccelerationStructureNV;
+typedef struct VkBindAccelerationStructureMemoryInfoKHR {
+    VkStructureType               sType;
+    const void*                   pNext;
+    VkAccelerationStructureKHR    accelerationStructure;
+    VkDeviceMemory                memory;
+    VkDeviceSize                  memoryOffset;
+    uint32_t                      deviceIndexCount;
+    const uint32_t*               pDeviceIndices;
+} VkBindAccelerationStructureMemoryInfoKHR;
+
+typedef VkBindAccelerationStructureMemoryInfoKHR VkBindAccelerationStructureMemoryInfoNV;
+
+typedef struct VkWriteDescriptorSetAccelerationStructureKHR {
+    VkStructureType                      sType;
+    const void*                          pNext;
+    uint32_t                             accelerationStructureCount;
+    const VkAccelerationStructureKHR*    pAccelerationStructures;
+} VkWriteDescriptorSetAccelerationStructureKHR;
+
+typedef VkWriteDescriptorSetAccelerationStructureKHR VkWriteDescriptorSetAccelerationStructureNV;
 
 typedef struct VkAccelerationStructureMemoryRequirementsInfoNV {
     VkStructureType                                    sType;
@@ -9471,17 +9382,49 @@ typedef struct VkPhysicalDeviceRayTracingPropertiesNV {
     uint32_t           maxDescriptorSetAccelerationStructures;
 } VkPhysicalDeviceRayTracingPropertiesNV;
 
+typedef struct VkTransformMatrixKHR {
+    float    matrix[3][4];
+} VkTransformMatrixKHR;
+
+typedef VkTransformMatrixKHR VkTransformMatrixNV;
+
+typedef struct VkAabbPositionsKHR {
+    float    minX;
+    float    minY;
+    float    minZ;
+    float    maxX;
+    float    maxY;
+    float    maxZ;
+} VkAabbPositionsKHR;
+
+typedef VkAabbPositionsKHR VkAabbPositionsNV;
+
+typedef struct VkAccelerationStructureInstanceKHR {
+    VkTransformMatrixKHR          transform;
+    uint32_t                      instanceCustomIndex:24;
+    uint32_t                      mask:8;
+    uint32_t                      instanceShaderBindingTableRecordOffset:24;
+    VkGeometryInstanceFlagsKHR    flags:8;
+    uint64_t                      accelerationStructureReference;
+} VkAccelerationStructureInstanceKHR;
+
+typedef VkAccelerationStructureInstanceKHR VkAccelerationStructureInstanceNV;
+
 typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureNV)(VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureNV* pAccelerationStructure);
-typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureNV)(VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureKHR)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkDestroyAccelerationStructureNV)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator);
 typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2KHR* pMemoryRequirements);
-typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryNV)(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV* pBindInfos);
-typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset);
-typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeNV mode);
+typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryKHR)(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
+typedef VkResult (VKAPI_PTR *PFN_vkBindAccelerationStructureMemoryNV)(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
+typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV* pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode);
 typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysNV)(VkCommandBuffer commandBuffer, VkBuffer raygenShaderBindingTableBuffer, VkDeviceSize raygenShaderBindingOffset, VkBuffer missShaderBindingTableBuffer, VkDeviceSize missShaderBindingOffset, VkDeviceSize missShaderBindingStride, VkBuffer hitShaderBindingTableBuffer, VkDeviceSize hitShaderBindingOffset, VkDeviceSize hitShaderBindingStride, VkBuffer callableShaderBindingTableBuffer, VkDeviceSize callableShaderBindingOffset, VkDeviceSize callableShaderBindingStride, uint32_t width, uint32_t height, uint32_t depth);
 typedef VkResult (VKAPI_PTR *PFN_vkCreateRayTracingPipelinesNV)(VkDevice device, VkPipelineCache pipelineCache, uint32_t createInfoCount, const VkRayTracingPipelineCreateInfoNV* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkPipeline* pPipelines);
+typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupHandlesKHR)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData);
 typedef VkResult (VKAPI_PTR *PFN_vkGetRayTracingShaderGroupHandlesNV)(VkDevice device, VkPipeline pipeline, uint32_t firstGroup, uint32_t groupCount, size_t dataSize, void* pData);
-typedef VkResult (VKAPI_PTR *PFN_vkGetAccelerationStructureHandleNV)(VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void* pData);
-typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureNV* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery);
+typedef VkResult (VKAPI_PTR *PFN_vkGetAccelerationStructureHandleNV)(VkDevice device, VkAccelerationStructureKHR accelerationStructure, size_t dataSize, void* pData);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR* pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery);
 typedef VkResult (VKAPI_PTR *PFN_vkCompileDeferredNV)(VkDevice device, VkPipeline pipeline, uint32_t shader);
 
 #ifndef VK_NO_PROTOTYPES
@@ -9491,9 +9434,14 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateAccelerationStructureNV(
     const VkAllocationCallbacks*                pAllocator,
     VkAccelerationStructureNV*                  pAccelerationStructure);
 
+VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureKHR(
+    VkDevice                                    device,
+    VkAccelerationStructureKHR                  accelerationStructure,
+    const VkAllocationCallbacks*                pAllocator);
+
 VKAPI_ATTR void VKAPI_CALL vkDestroyAccelerationStructureNV(
     VkDevice                                    device,
-    VkAccelerationStructureNV                   accelerationStructure,
+    VkAccelerationStructureKHR                  accelerationStructure,
     const VkAllocationCallbacks*                pAllocator);
 
 VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsNV(
@@ -9501,10 +9449,15 @@ VKAPI_ATTR void VKAPI_CALL vkGetAccelerationStructureMemoryRequirementsNV(
     const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo,
     VkMemoryRequirements2KHR*                   pMemoryRequirements);
 
+VKAPI_ATTR VkResult VKAPI_CALL vkBindAccelerationStructureMemoryKHR(
+    VkDevice                                    device,
+    uint32_t                                    bindInfoCount,
+    const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
+
 VKAPI_ATTR VkResult VKAPI_CALL vkBindAccelerationStructureMemoryNV(
     VkDevice                                    device,
     uint32_t                                    bindInfoCount,
-    const VkBindAccelerationStructureMemoryInfoNV* pBindInfos);
+    const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
 
 VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureNV(
     VkCommandBuffer                             commandBuffer,
@@ -9512,16 +9465,16 @@ VKAPI_ATTR void VKAPI_CALL vkCmdBuildAccelerationStructureNV(
     VkBuffer                                    instanceData,
     VkDeviceSize                                instanceOffset,
     VkBool32                                    update,
-    VkAccelerationStructureNV                   dst,
-    VkAccelerationStructureNV                   src,
+    VkAccelerationStructureKHR                  dst,
+    VkAccelerationStructureKHR                  src,
     VkBuffer                                    scratch,
     VkDeviceSize                                scratchOffset);
 
 VKAPI_ATTR void VKAPI_CALL vkCmdCopyAccelerationStructureNV(
     VkCommandBuffer                             commandBuffer,
-    VkAccelerationStructureNV                   dst,
-    VkAccelerationStructureNV                   src,
-    VkCopyAccelerationStructureModeNV           mode);
+    VkAccelerationStructureKHR                  dst,
+    VkAccelerationStructureKHR                  src,
+    VkCopyAccelerationStructureModeKHR          mode);
 
 VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysNV(
     VkCommandBuffer                             commandBuffer,
@@ -9548,6 +9501,14 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateRayTracingPipelinesNV(
     const VkAllocationCallbacks*                pAllocator,
     VkPipeline*                                 pPipelines);
 
+VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesKHR(
+    VkDevice                                    device,
+    VkPipeline                                  pipeline,
+    uint32_t                                    firstGroup,
+    uint32_t                                    groupCount,
+    size_t                                      dataSize,
+    void*                                       pData);
+
 VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesNV(
     VkDevice                                    device,
     VkPipeline                                  pipeline,
@@ -9558,14 +9519,22 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetRayTracingShaderGroupHandlesNV(
 
 VKAPI_ATTR VkResult VKAPI_CALL vkGetAccelerationStructureHandleNV(
     VkDevice                                    device,
-    VkAccelerationStructureNV                   accelerationStructure,
+    VkAccelerationStructureKHR                  accelerationStructure,
     size_t                                      dataSize,
     void*                                       pData);
 
+VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesKHR(
+    VkCommandBuffer                             commandBuffer,
+    uint32_t                                    accelerationStructureCount,
+    const VkAccelerationStructureKHR*           pAccelerationStructures,
+    VkQueryType                                 queryType,
+    VkQueryPool                                 queryPool,
+    uint32_t                                    firstQuery);
+
 VKAPI_ATTR void VKAPI_CALL vkCmdWriteAccelerationStructuresPropertiesNV(
     VkCommandBuffer                             commandBuffer,
     uint32_t                                    accelerationStructureCount,
-    const VkAccelerationStructureNV*            pAccelerationStructures,
+    const VkAccelerationStructureKHR*           pAccelerationStructures,
     VkQueryType                                 queryType,
     VkQueryPool                                 queryPool,
     uint32_t                                    firstQuery);
@@ -10008,7 +9977,7 @@ typedef struct VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL {
 
 #define VK_INTEL_performance_query 1
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPerformanceConfigurationINTEL)
-#define VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION 1
+#define VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION 2
 #define VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME "VK_INTEL_performance_query"
 
 typedef enum VkPerformanceConfigurationTypeINTEL {
@@ -10075,11 +10044,13 @@ typedef struct VkInitializePerformanceApiInfoINTEL {
     void*              pUserData;
 } VkInitializePerformanceApiInfoINTEL;
 
-typedef struct VkQueryPoolCreateInfoINTEL {
+typedef struct VkQueryPoolPerformanceQueryCreateInfoINTEL {
     VkStructureType                 sType;
     const void*                     pNext;
     VkQueryPoolSamplingModeINTEL    performanceCountersSampling;
-} VkQueryPoolCreateInfoINTEL;
+} VkQueryPoolPerformanceQueryCreateInfoINTEL;
+
+typedef VkQueryPoolPerformanceQueryCreateInfoINTEL VkQueryPoolCreateInfoINTEL;
 
 typedef struct VkPerformanceMarkerInfoINTEL {
     VkStructureType    sType;
@@ -10408,16 +10379,17 @@ typedef VkImageStencilUsageCreateInfo VkImageStencilUsageCreateInfoEXT;
 
 
 #define VK_EXT_validation_features 1
-#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 2
+#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 3
 #define VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME "VK_EXT_validation_features"
 
 typedef enum VkValidationFeatureEnableEXT {
     VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT = 0,
     VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT = 1,
     VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT = 2,
+    VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT = 3,
     VK_VALIDATION_FEATURE_ENABLE_BEGIN_RANGE_EXT = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT,
-    VK_VALIDATION_FEATURE_ENABLE_END_RANGE_EXT = VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT,
-    VK_VALIDATION_FEATURE_ENABLE_RANGE_SIZE_EXT = (VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT - VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT + 1),
+    VK_VALIDATION_FEATURE_ENABLE_END_RANGE_EXT = VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT,
+    VK_VALIDATION_FEATURE_ENABLE_RANGE_SIZE_EXT = (VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT - VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT + 1),
     VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT = 0x7FFFFFFF
 } VkValidationFeatureEnableEXT;
 
@@ -10691,6 +10663,199 @@ typedef struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT {
 
 
 
+#define VK_NV_device_generated_commands 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNV)
+#define VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 3
+#define VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME "VK_NV_device_generated_commands"
+
+typedef enum VkIndirectCommandsTokenTypeNV {
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV = 0,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV = 1,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV = 2,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV = 3,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV = 4,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV = 5,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV = 6,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV = 7,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NV = VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NV = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV,
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NV = (VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV - VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV + 1),
+    VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV = 0x7FFFFFFF
+} VkIndirectCommandsTokenTypeNV;
+
+typedef enum VkIndirectStateFlagBitsNV {
+    VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV = 0x00000001,
+    VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkIndirectStateFlagBitsNV;
+typedef VkFlags VkIndirectStateFlagsNV;
+
+typedef enum VkIndirectCommandsLayoutUsageFlagBitsNV {
+    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV = 0x00000001,
+    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV = 0x00000002,
+    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV = 0x00000004,
+    VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkIndirectCommandsLayoutUsageFlagBitsNV;
+typedef VkFlags VkIndirectCommandsLayoutUsageFlagsNV;
+typedef struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV {
+    VkStructureType    sType;
+    void*              pNext;
+    uint32_t           maxGraphicsShaderGroupCount;
+    uint32_t           maxIndirectSequenceCount;
+    uint32_t           maxIndirectCommandsTokenCount;
+    uint32_t           maxIndirectCommandsStreamCount;
+    uint32_t           maxIndirectCommandsTokenOffset;
+    uint32_t           maxIndirectCommandsStreamStride;
+    uint32_t           minSequencesCountBufferOffsetAlignment;
+    uint32_t           minSequencesIndexBufferOffsetAlignment;
+    uint32_t           minIndirectCommandsBufferOffsetAlignment;
+} VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV;
+
+typedef struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           deviceGeneratedCommands;
+} VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV;
+
+typedef struct VkGraphicsShaderGroupCreateInfoNV {
+    VkStructureType                                 sType;
+    const void*                                     pNext;
+    uint32_t                                        stageCount;
+    const VkPipelineShaderStageCreateInfo*          pStages;
+    const VkPipelineVertexInputStateCreateInfo*     pVertexInputState;
+    const VkPipelineTessellationStateCreateInfo*    pTessellationState;
+} VkGraphicsShaderGroupCreateInfoNV;
+
+typedef struct VkGraphicsPipelineShaderGroupsCreateInfoNV {
+    VkStructureType                             sType;
+    const void*                                 pNext;
+    uint32_t                                    groupCount;
+    const VkGraphicsShaderGroupCreateInfoNV*    pGroups;
+    uint32_t                                    pipelineCount;
+    const VkPipeline*                           pPipelines;
+} VkGraphicsPipelineShaderGroupsCreateInfoNV;
+
+typedef struct VkBindShaderGroupIndirectCommandNV {
+    uint32_t    groupIndex;
+} VkBindShaderGroupIndirectCommandNV;
+
+typedef struct VkBindIndexBufferIndirectCommandNV {
+    VkDeviceAddress    bufferAddress;
+    uint32_t           size;
+    VkIndexType        indexType;
+} VkBindIndexBufferIndirectCommandNV;
+
+typedef struct VkBindVertexBufferIndirectCommandNV {
+    VkDeviceAddress    bufferAddress;
+    uint32_t           size;
+    uint32_t           stride;
+} VkBindVertexBufferIndirectCommandNV;
+
+typedef struct VkSetStateFlagsIndirectCommandNV {
+    uint32_t    data;
+} VkSetStateFlagsIndirectCommandNV;
+
+typedef struct VkIndirectCommandsStreamNV {
+    VkBuffer        buffer;
+    VkDeviceSize    offset;
+} VkIndirectCommandsStreamNV;
+
+typedef struct VkIndirectCommandsLayoutTokenNV {
+    VkStructureType                  sType;
+    const void*                      pNext;
+    VkIndirectCommandsTokenTypeNV    tokenType;
+    uint32_t                         stream;
+    uint32_t                         offset;
+    uint32_t                         vertexBindingUnit;
+    VkBool32                         vertexDynamicStride;
+    VkPipelineLayout                 pushconstantPipelineLayout;
+    VkShaderStageFlags               pushconstantShaderStageFlags;
+    uint32_t                         pushconstantOffset;
+    uint32_t                         pushconstantSize;
+    VkIndirectStateFlagsNV           indirectStateFlags;
+    uint32_t                         indexTypeCount;
+    const VkIndexType*               pIndexTypes;
+    const uint32_t*                  pIndexTypeValues;
+} VkIndirectCommandsLayoutTokenNV;
+
+typedef struct VkIndirectCommandsLayoutCreateInfoNV {
+    VkStructureType                           sType;
+    const void*                               pNext;
+    VkIndirectCommandsLayoutUsageFlagsNV      flags;
+    VkPipelineBindPoint                       pipelineBindPoint;
+    uint32_t                                  tokenCount;
+    const VkIndirectCommandsLayoutTokenNV*    pTokens;
+    uint32_t                                  streamCount;
+    const uint32_t*                           pStreamStrides;
+} VkIndirectCommandsLayoutCreateInfoNV;
+
+typedef struct VkGeneratedCommandsInfoNV {
+    VkStructureType                      sType;
+    const void*                          pNext;
+    VkPipelineBindPoint                  pipelineBindPoint;
+    VkPipeline                           pipeline;
+    VkIndirectCommandsLayoutNV           indirectCommandsLayout;
+    uint32_t                             streamCount;
+    const VkIndirectCommandsStreamNV*    pStreams;
+    uint32_t                             sequencesCount;
+    VkBuffer                             preprocessBuffer;
+    VkDeviceSize                         preprocessOffset;
+    VkDeviceSize                         preprocessSize;
+    VkBuffer                             sequencesCountBuffer;
+    VkDeviceSize                         sequencesCountOffset;
+    VkBuffer                             sequencesIndexBuffer;
+    VkDeviceSize                         sequencesIndexOffset;
+} VkGeneratedCommandsInfoNV;
+
+typedef struct VkGeneratedCommandsMemoryRequirementsInfoNV {
+    VkStructureType               sType;
+    const void*                   pNext;
+    VkPipelineBindPoint           pipelineBindPoint;
+    VkPipeline                    pipeline;
+    VkIndirectCommandsLayoutNV    indirectCommandsLayout;
+    uint32_t                      maxSequencesCount;
+} VkGeneratedCommandsMemoryRequirementsInfoNV;
+
+typedef void (VKAPI_PTR *PFN_vkGetGeneratedCommandsMemoryRequirementsNV)(VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo, VkMemoryRequirements2* pMemoryRequirements);
+typedef void (VKAPI_PTR *PFN_vkCmdPreprocessGeneratedCommandsNV)(VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdExecuteGeneratedCommandsNV)(VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdBindPipelineShaderGroupNV)(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex);
+typedef VkResult (VKAPI_PTR *PFN_vkCreateIndirectCommandsLayoutNV)(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout);
+typedef void (VKAPI_PTR *PFN_vkDestroyIndirectCommandsLayoutNV)(VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkGetGeneratedCommandsMemoryRequirementsNV(
+    VkDevice                                    device,
+    const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo,
+    VkMemoryRequirements2*                      pMemoryRequirements);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdPreprocessGeneratedCommandsNV(
+    VkCommandBuffer                             commandBuffer,
+    const VkGeneratedCommandsInfoNV*            pGeneratedCommandsInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdExecuteGeneratedCommandsNV(
+    VkCommandBuffer                             commandBuffer,
+    VkBool32                                    isPreprocessed,
+    const VkGeneratedCommandsInfoNV*            pGeneratedCommandsInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdBindPipelineShaderGroupNV(
+    VkCommandBuffer                             commandBuffer,
+    VkPipelineBindPoint                         pipelineBindPoint,
+    VkPipeline                                  pipeline,
+    uint32_t                                    groupIndex);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateIndirectCommandsLayoutNV(
+    VkDevice                                    device,
+    const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo,
+    const VkAllocationCallbacks*                pAllocator,
+    VkIndirectCommandsLayoutNV*                 pIndirectCommandsLayout);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyIndirectCommandsLayoutNV(
+    VkDevice                                    device,
+    VkIndirectCommandsLayoutNV                  indirectCommandsLayout,
+    const VkAllocationCallbacks*                pAllocator);
+#endif
+
+
 #define VK_EXT_texel_buffer_alignment 1
 #define VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION 1
 #define VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME "VK_EXT_texel_buffer_alignment"
@@ -10711,10 +10876,64 @@ typedef struct VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT {
 
 
 
+#define VK_QCOM_render_pass_transform 1
+#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 1
+#define VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME "VK_QCOM_render_pass_transform"
+typedef struct VkRenderPassTransformBeginInfoQCOM {
+    VkStructureType                  sType;
+    void*                            pNext;
+    VkSurfaceTransformFlagBitsKHR    transform;
+} VkRenderPassTransformBeginInfoQCOM;
+
+typedef struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM {
+    VkStructureType                  sType;
+    void*                            pNext;
+    VkSurfaceTransformFlagBitsKHR    transform;
+    VkRect2D                         renderArea;
+} VkCommandBufferInheritanceRenderPassTransformInfoQCOM;
+
+
+
 #define VK_GOOGLE_user_type 1
 #define VK_GOOGLE_USER_TYPE_SPEC_VERSION  1
 #define VK_GOOGLE_USER_TYPE_EXTENSION_NAME "VK_GOOGLE_user_type"
 
+
+#define VK_EXT_pipeline_creation_cache_control 1
+#define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION 2
+#define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME "VK_EXT_pipeline_creation_cache_control"
+typedef struct VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           pipelineCreationCacheControl;
+} VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT;
+
+
+
+#define VK_NV_device_diagnostics_config 1
+#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION 1
+#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME "VK_NV_device_diagnostics_config"
+
+typedef enum VkDeviceDiagnosticsConfigFlagBitsNV {
+    VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV = 0x00000001,
+    VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV = 0x00000002,
+    VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV = 0x00000004,
+    VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkDeviceDiagnosticsConfigFlagBitsNV;
+typedef VkFlags VkDeviceDiagnosticsConfigFlagsNV;
+typedef struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           diagnosticsConfig;
+} VkPhysicalDeviceDiagnosticsConfigFeaturesNV;
+
+typedef struct VkDeviceDiagnosticsConfigCreateInfoNV {
+    VkStructureType                     sType;
+    const void*                         pNext;
+    VkDeviceDiagnosticsConfigFlagsNV    flags;
+} VkDeviceDiagnosticsConfigCreateInfoNV;
+
+
 #ifdef __cplusplus
 }
 #endif