diff --git a/REGISTRY_COMMIT b/REGISTRY_COMMIT index f48d587..b0e4ea4 100644 --- a/REGISTRY_COMMIT +++ b/REGISTRY_COMMIT @@ -1 +1 @@ -9fbc2a782ee3f8a4db64e7d991e23da75e893f44 +88487f687f3100ebe1d3559a8a34d971ee85b977 diff --git a/VERSION b/VERSION index 6d08582..8d2a50d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -v1.4.367 +v1.4.368 diff --git a/c/vendor/include/vulkan/vulkan_core.h b/c/vendor/include/vulkan/vulkan_core.h index 3d08ac8..e595aee 100644 --- a/c/vendor/include/vulkan/vulkan_core.h +++ b/c/vendor/include/vulkan/vulkan_core.h @@ -61,7 +61,7 @@ extern "C" { //#define VK_API_VERSION VK_MAKE_API_VERSION(0, 1, 0, 0) // Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 367 +#define VK_HEADER_VERSION 368 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION) @@ -1482,6 +1482,7 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_NEURAL_STATISTICS_CREATE_INFO_ARM = 1000676001, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_NEURAL_ACCELERATOR_STATISTICS_FEATURES_ARM = 1000676002, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_RESTART_INDEX_FEATURES_EXT = 1000678000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ADDRESS_BINDING_UNRESTRICTED_FEATURES_EXT = 1000679000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_12_FEATURES_KHR = 1000680000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_12_PROPERTIES_KHR = 1000680001, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_TILING_CONTROL_FEATURES_EXT = 1000687000, @@ -26981,6 +26982,44 @@ typedef struct VkPhysicalDeviceShaderSubgroupPartitionedFeaturesEXT { +// VK_NV_internal_handle is a preprocessor guard. Do not pass it to API calls. +#define VK_NV_internal_handle 1 + +typedef struct VkInternalObjectNV* VkInternalHandleNV; + +#define VK_NV_INTERNAL_HANDLE_SPEC_VERSION 1 +#define VK_NV_INTERNAL_HANDLE_EXTENSION_NAME "VK_NV_internal_handle" + +typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceInternalHandleNV)(VkPhysicalDevice physicalDevice, VkInternalHandleNV* pHandle); +typedef void (VKAPI_PTR *PFN_vkGetDeviceInternalHandleNV)(VkDevice device, VkInternalHandleNV* pHandle); +typedef void (VKAPI_PTR *PFN_vkGetQueueInternalHandleNV)(VkQueue queue, VkInternalHandleNV* pHandle); +typedef void (VKAPI_PTR *PFN_vkGetCommandBufferInternalHandleNV)(VkCommandBuffer commandBuffer, VkInternalHandleNV* pHandle); + +#ifndef VK_NO_PROTOTYPES + +#ifndef VK_ONLY_EXPORTED_PROTOTYPES +VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceInternalHandleNV( + VkPhysicalDevice physicalDevice, + VkInternalHandleNV* pHandle); +#endif +#ifndef VK_ONLY_EXPORTED_PROTOTYPES +VKAPI_ATTR void VKAPI_CALL vkGetDeviceInternalHandleNV( + VkDevice device, + VkInternalHandleNV* pHandle); +#endif +#ifndef VK_ONLY_EXPORTED_PROTOTYPES +VKAPI_ATTR void VKAPI_CALL vkGetQueueInternalHandleNV( + VkQueue queue, + VkInternalHandleNV* pHandle); +#endif +#ifndef VK_ONLY_EXPORTED_PROTOTYPES +VKAPI_ATTR void VKAPI_CALL vkGetCommandBufferInternalHandleNV( + VkCommandBuffer commandBuffer, + VkInternalHandleNV* pHandle); +#endif +#endif + + // VK_ARM_cooperative_matrix_layouts is a preprocessor guard. Do not pass it to API calls. #define VK_ARM_cooperative_matrix_layouts 1 @@ -27114,6 +27153,20 @@ VKAPI_ATTR void VKAPI_CALL vkCmdSetPrimitiveRestartIndexEXT( #endif +// VK_EXT_vertex_address_binding_unrestricted is a preprocessor guard. Do not pass it to API calls. +#define VK_EXT_vertex_address_binding_unrestricted 1 + +#define VK_EXT_VERTEX_ADDRESS_BINDING_UNRESTRICTED_SPEC_VERSION 1 +#define VK_EXT_VERTEX_ADDRESS_BINDING_UNRESTRICTED_EXTENSION_NAME "VK_EXT_vertex_address_binding_unrestricted" + +typedef struct VkPhysicalDeviceVertexAddressBindingUnrestrictedFeaturesEXT { + VkStructureType sType; + void* pNext; + VkBool32 vertexAddressBindingUnrestricted; +} VkPhysicalDeviceVertexAddressBindingUnrestrictedFeaturesEXT; + + + // VK_EXT_image_tiling_control is a preprocessor guard. Do not pass it to API calls. #define VK_EXT_image_tiling_control 1 diff --git a/c/vendor/include/vulkan/vulkan_metal.h b/c/vendor/include/vulkan/vulkan_metal.h index 22d3dc0..d34b8c7 100644 --- a/c/vendor/include/vulkan/vulkan_metal.h +++ b/c/vendor/include/vulkan/vulkan_metal.h @@ -37,7 +37,7 @@ typedef struct VkMetalSurfaceCreateInfoEXT { VkStructureType sType; const void* pNext; VkMetalSurfaceCreateFlagsEXT flags; - const CAMetalLayer* pLayer; + CAMetalLayer* pLayer; } VkMetalSurfaceCreateInfoEXT; diff --git a/vulkan.v b/vulkan.v index e0640dd..83fc15f 100644 --- a/vulkan.v +++ b/vulkan.v @@ -43,7 +43,7 @@ pub fn make_api_version(variant u32, major u32, minor u32, patch u32) u32 { } pub const api_version = make_api_version(0, 1, 0, 0) // Patch version should always be set to 0 -pub const header_version = 367 +pub const header_version = 368 pub const header_version_complete = make_api_version(0, 1, 4, header_version) pub fn make_version(major u32, minor u32, patch u32) u32 { @@ -1468,6 +1468,7 @@ pub enum StructureType as u32 { data_graph_pipeline_session_neural_statistics_create_info_arm = 1000676001 physical_device_data_graph_neural_accelerator_statistics_features_arm = 1000676002 physical_device_primitive_restart_index_features_ext = 1000678000 + physical_device_vertex_address_binding_unrestricted_features_ext = 1000679000 physical_device_maintenance12_features_khr = 1000680000 physical_device_maintenance12_properties_khr = 1000680001 physical_device_image_tiling_control_features_ext = 1000687000 @@ -38236,6 +38237,66 @@ $if vulkan_ubm ? { } } +pub type InternalHandleNV = C.VkInternalHandleNV + +@[typedef] +pub struct C.VkInternalHandleNV {} + +pub const nv_internal_handle_spec_version = 1 +pub const nv_internal_handle_extension_name = c'VK_NV_internal_handle' + +@[keep_args_alive] +fn C.vkGetPhysicalDeviceInternalHandleNV( + physicalDevice PhysicalDevice, mut_pHandle &InternalHandleNV) + +pub type PFN_vkGetPhysicalDeviceInternalHandleNV = fn (physicalDevice PhysicalDevice, mut_pHandle &InternalHandleNV) + +@[inline] +pub fn get_physical_device_internal_handle_nv( + physicalDevice PhysicalDevice, + mut mut_pHandle InternalHandleNV) { + C.vkGetPhysicalDeviceInternalHandleNV(physicalDevice, mut_pHandle) +} + +@[keep_args_alive] +fn C.vkGetDeviceInternalHandleNV( + device Device, mut_pHandle &InternalHandleNV) + +pub type PFN_vkGetDeviceInternalHandleNV = fn (device Device, mut_pHandle &InternalHandleNV) + +@[inline] +pub fn get_device_internal_handle_nv( + device Device, + mut mut_pHandle InternalHandleNV) { + C.vkGetDeviceInternalHandleNV(device, mut_pHandle) +} + +@[keep_args_alive] +fn C.vkGetQueueInternalHandleNV( + queue Queue, mut_pHandle &InternalHandleNV) + +pub type PFN_vkGetQueueInternalHandleNV = fn (queue Queue, mut_pHandle &InternalHandleNV) + +@[inline] +pub fn get_queue_internal_handle_nv( + queue Queue, + mut mut_pHandle InternalHandleNV) { + C.vkGetQueueInternalHandleNV(queue, mut_pHandle) +} + +@[keep_args_alive] +fn C.vkGetCommandBufferInternalHandleNV( + commandBuffer CommandBuffer, mut_pHandle &InternalHandleNV) + +pub type PFN_vkGetCommandBufferInternalHandleNV = fn (commandBuffer CommandBuffer, mut_pHandle &InternalHandleNV) + +@[inline] +pub fn get_command_buffer_internal_handle_nv( + commandBuffer CommandBuffer, + mut mut_pHandle InternalHandleNV) { + C.vkGetCommandBufferInternalHandleNV(commandBuffer, mut_pHandle) +} + pub const arm_cooperative_matrix_layouts_spec_version = 1 pub const arm_cooperative_matrix_layouts_extension_name = c'VK_ARM_cooperative_matrix_layouts' // PhysicalDeviceCooperativeMatrixLayoutsFeaturesARM extends VkPhysicalDeviceFeatures2,VkDeviceCreateInfo @@ -38381,6 +38442,19 @@ pub fn cmd_set_primitive_restart_index_ext( C.vkCmdSetPrimitiveRestartIndexEXT(commandBuffer, primitiveRestartIndex) } +pub const ext_vertex_address_binding_unrestricted_spec_version = 1 +pub const ext_vertex_address_binding_unrestricted_extension_name = c'VK_EXT_vertex_address_binding_unrestricted' +// PhysicalDeviceVertexAddressBindingUnrestrictedFeaturesEXT extends VkPhysicalDeviceFeatures2,VkDeviceCreateInfo +pub type PhysicalDeviceVertexAddressBindingUnrestrictedFeaturesEXT = C.VkPhysicalDeviceVertexAddressBindingUnrestrictedFeaturesEXT + +@[typedef] +pub struct C.VkPhysicalDeviceVertexAddressBindingUnrestrictedFeaturesEXT { +pub mut: + sType StructureType = StructureType.physical_device_vertex_address_binding_unrestricted_features_ext + pNext voidptr = unsafe { nil } + vertexAddressBindingUnrestricted Bool32 +} + pub const ext_image_tiling_control_spec_version = 1 pub const ext_image_tiling_control_extension_name = c'VK_EXT_image_tiling_control'