diff options
author | Jon Leech <[email protected]> | 2022-09-12 21:02:44 -0700 |
---|---|---|
committer | Jon Leech <[email protected]> | 2022-09-12 21:03:27 -0700 |
commit | 39a669f332985de4c4d8215f7c0d19d5fb90f5e1 (patch) | |
tree | 216b3bd6f96d8b915a8da45d5d1e272a185803b3 /registry | |
parent | 87e53f6cc7b7c57e778d42df09df3c2fe80919b3 (diff) | |
download | Vulkan-Headers-39a669f332985de4c4d8215f7c0d19d5fb90f5e1.tar.gz Vulkan-Headers-39a669f332985de4c4d8215f7c0d19d5fb90f5e1.zip |
Update for VulkanSC-Docs 1.0.11vksc1.0.11
Diffstat (limited to 'registry')
-rw-r--r-- | registry/cgenerator.py | 2 | ||||
-rwxr-xr-x | registry/genvk.py | 1 | ||||
-rw-r--r-- | registry/validusage.json | 292 | ||||
-rw-r--r-- | registry/vk.xml | 106 |
4 files changed, 320 insertions, 81 deletions
diff --git a/registry/cgenerator.py b/registry/cgenerator.py index 6685f24..2d86604 100644 --- a/registry/cgenerator.py +++ b/registry/cgenerator.py @@ -274,6 +274,8 @@ class COutputGenerator(OutputGenerator): body += self.genOpts.apientry + noneStr(elem.tail) else: body += noneStr(elem.text) + noneStr(elem.tail) + if category == 'define' and self.misracppstyle(): + body = body.replace("(uint32_t)", "static_cast<uint32_t>") if body: # Add extra newline after multi-line entries. if '\n' in body[0:-1]: diff --git a/registry/genvk.py b/registry/genvk.py index 0a172f9..a0f0f70 100755 --- a/registry/genvk.py +++ b/registry/genvk.py @@ -408,6 +408,7 @@ def makeGenOpts(args): [ 'vulkan_metal.h', [ 'VK_EXT_metal_surface' ], commonSuppressExtensions ], [ 'vulkan_screen.h', [ 'VK_QNX_screen_surface' ], commonSuppressExtensions ], [ 'vulkan_sci.h', [ 'VK_NV_external_sci_sync', + 'VK_NV_external_sci_sync2', 'VK_NV_external_memory_sci_buf'], commonSuppressExtensions ], [ 'vulkan_beta.h', betaRequireExtensions, betaSuppressExtensions ], ] diff --git a/registry/validusage.json b/registry/validusage.json index 00731dd..d872d24 100644 --- a/registry/validusage.json +++ b/registry/validusage.json @@ -1,9 +1,9 @@ { "version info": { "schema version": 2, - "api version": "1.0.10", - "comment": "from git branch: github-sc_main commit: f300e4d9e81b12998c872e3e31c7a28b8b48036e", - "date": "2022-05-26 09:59:01Z" + "api version": "1.0.11", + "comment": "from git branch: github-sc_main commit: 0caf3f1da2ce143a0f500d7f4083fe2899a31f30", + "date": "2022-09-13 03:42:50Z" }, "validation": { "vkGetInstanceProcAddr": { @@ -626,7 +626,7 @@ }, { "vuid": "VUID-VkDeviceCreateInfo-pNext-pNext", - "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkApplicationParametersEXT\">VkApplicationParametersEXT</a>, <a href=\"#VkDeviceGroupDeviceCreateInfo\">VkDeviceGroupDeviceCreateInfo</a>, <a href=\"#VkDeviceObjectReservationCreateInfo\">VkDeviceObjectReservationCreateInfo</a>, <a href=\"#VkFaultCallbackInfo\">VkFaultCallbackInfo</a>, <a href=\"#VkPhysicalDevice16BitStorageFeatures\">VkPhysicalDevice16BitStorageFeatures</a>, <a href=\"#VkPhysicalDevice4444FormatsFeaturesEXT\">VkPhysicalDevice4444FormatsFeaturesEXT</a>, <a href=\"#VkPhysicalDevice8BitStorageFeatures\">VkPhysicalDevice8BitStorageFeatures</a>, <a href=\"#VkPhysicalDeviceASTCDecodeFeaturesEXT\">VkPhysicalDeviceASTCDecodeFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT\">VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceBufferDeviceAddressFeatures\">VkPhysicalDeviceBufferDeviceAddressFeatures</a>, <a href=\"#VkPhysicalDeviceColorWriteEnableFeaturesEXT\">VkPhysicalDeviceColorWriteEnableFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceCustomBorderColorFeaturesEXT\">VkPhysicalDeviceCustomBorderColorFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceDepthClipEnableFeaturesEXT\">VkPhysicalDeviceDepthClipEnableFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceDescriptorIndexingFeatures\">VkPhysicalDeviceDescriptorIndexingFeatures</a>, <a href=\"#VkPhysicalDeviceExtendedDynamicState2FeaturesEXT\">VkPhysicalDeviceExtendedDynamicState2FeaturesEXT</a>, <a href=\"#VkPhysicalDeviceExtendedDynamicStateFeaturesEXT\">VkPhysicalDeviceExtendedDynamicStateFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceExternalSciBufFeaturesNV\">VkPhysicalDeviceExternalSciBufFeaturesNV</a>, <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>, <a href=\"#VkPhysicalDeviceFeatures2\">VkPhysicalDeviceFeatures2</a>, <a href=\"#VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT\">VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceFragmentShadingRateFeaturesKHR\">VkPhysicalDeviceFragmentShadingRateFeaturesKHR</a>, <a href=\"#VkPhysicalDeviceHostQueryResetFeatures\">VkPhysicalDeviceHostQueryResetFeatures</a>, <a href=\"#VkPhysicalDeviceImageRobustnessFeaturesEXT\">VkPhysicalDeviceImageRobustnessFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceImagelessFramebufferFeatures\">VkPhysicalDeviceImagelessFramebufferFeatures</a>, <a href=\"#VkPhysicalDeviceIndexTypeUint8FeaturesEXT\">VkPhysicalDeviceIndexTypeUint8FeaturesEXT</a>, <a href=\"#VkPhysicalDeviceLineRasterizationFeaturesEXT\">VkPhysicalDeviceLineRasterizationFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceMultiviewFeatures\">VkPhysicalDeviceMultiviewFeatures</a>, <a href=\"#VkPhysicalDevicePerformanceQueryFeaturesKHR\">VkPhysicalDevicePerformanceQueryFeaturesKHR</a>, <a href=\"#VkPhysicalDeviceProtectedMemoryFeatures\">VkPhysicalDeviceProtectedMemoryFeatures</a>, <a href=\"#VkPhysicalDeviceRobustness2FeaturesEXT\">VkPhysicalDeviceRobustness2FeaturesEXT</a>, <a href=\"#VkPhysicalDeviceSamplerYcbcrConversionFeatures\">VkPhysicalDeviceSamplerYcbcrConversionFeatures</a>, <a href=\"#VkPhysicalDeviceScalarBlockLayoutFeatures\">VkPhysicalDeviceScalarBlockLayoutFeatures</a>, <a href=\"#VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures\">VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures</a>, <a href=\"#VkPhysicalDeviceShaderAtomicFloatFeaturesEXT\">VkPhysicalDeviceShaderAtomicFloatFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceShaderAtomicInt64Features\">VkPhysicalDeviceShaderAtomicInt64Features</a>, <a href=\"#VkPhysicalDeviceShaderClockFeaturesKHR\">VkPhysicalDeviceShaderClockFeaturesKHR</a>, <a href=\"#VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT\">VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceShaderDrawParametersFeatures\">VkPhysicalDeviceShaderDrawParametersFeatures</a>, <a href=\"#VkPhysicalDeviceShaderFloat16Int8Features\">VkPhysicalDeviceShaderFloat16Int8Features</a>, <a href=\"#VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT\">VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT</a>, <a href=\"#VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures\">VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures</a>, <a href=\"#VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR\">VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR</a>, <a href=\"#VkPhysicalDeviceSubgroupSizeControlFeaturesEXT\">VkPhysicalDeviceSubgroupSizeControlFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceSynchronization2FeaturesKHR\">VkPhysicalDeviceSynchronization2FeaturesKHR</a>, <a href=\"#VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT\">VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT\">VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceTimelineSemaphoreFeatures\">VkPhysicalDeviceTimelineSemaphoreFeatures</a>, <a href=\"#VkPhysicalDeviceUniformBufferStandardLayoutFeatures\">VkPhysicalDeviceUniformBufferStandardLayoutFeatures</a>, <a href=\"#VkPhysicalDeviceVariablePointersFeatures\">VkPhysicalDeviceVariablePointersFeatures</a>, <a href=\"#VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT\">VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT\">VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceVulkan11Features\">VkPhysicalDeviceVulkan11Features</a>, <a href=\"#VkPhysicalDeviceVulkan12Features\">VkPhysicalDeviceVulkan12Features</a>, <a href=\"#VkPhysicalDeviceVulkanMemoryModelFeatures\">VkPhysicalDeviceVulkanMemoryModelFeatures</a>, <a href=\"#VkPhysicalDeviceVulkanSC10Features\">VkPhysicalDeviceVulkanSC10Features</a>, <a href=\"#VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT\">VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT</a>, or <a href=\"#VkPhysicalDeviceYcbcrImageArraysFeaturesEXT\">VkPhysicalDeviceYcbcrImageArraysFeaturesEXT</a>" + "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkApplicationParametersEXT\">VkApplicationParametersEXT</a>, <a href=\"#VkDeviceGroupDeviceCreateInfo\">VkDeviceGroupDeviceCreateInfo</a>, <a href=\"#VkDeviceObjectReservationCreateInfo\">VkDeviceObjectReservationCreateInfo</a>, <a href=\"#VkFaultCallbackInfo\">VkFaultCallbackInfo</a>, <a href=\"#VkPhysicalDevice16BitStorageFeatures\">VkPhysicalDevice16BitStorageFeatures</a>, <a href=\"#VkPhysicalDevice4444FormatsFeaturesEXT\">VkPhysicalDevice4444FormatsFeaturesEXT</a>, <a href=\"#VkPhysicalDevice8BitStorageFeatures\">VkPhysicalDevice8BitStorageFeatures</a>, <a href=\"#VkPhysicalDeviceASTCDecodeFeaturesEXT\">VkPhysicalDeviceASTCDecodeFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT\">VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceBufferDeviceAddressFeatures\">VkPhysicalDeviceBufferDeviceAddressFeatures</a>, <a href=\"#VkPhysicalDeviceColorWriteEnableFeaturesEXT\">VkPhysicalDeviceColorWriteEnableFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceCustomBorderColorFeaturesEXT\">VkPhysicalDeviceCustomBorderColorFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceDepthClipEnableFeaturesEXT\">VkPhysicalDeviceDepthClipEnableFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceDescriptorIndexingFeatures\">VkPhysicalDeviceDescriptorIndexingFeatures</a>, <a href=\"#VkPhysicalDeviceExtendedDynamicState2FeaturesEXT\">VkPhysicalDeviceExtendedDynamicState2FeaturesEXT</a>, <a href=\"#VkPhysicalDeviceExtendedDynamicStateFeaturesEXT\">VkPhysicalDeviceExtendedDynamicStateFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceExternalSciBufFeaturesNV\">VkPhysicalDeviceExternalSciBufFeaturesNV</a>, <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>, <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>, <a href=\"#VkPhysicalDeviceFeatures2\">VkPhysicalDeviceFeatures2</a>, <a href=\"#VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT\">VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceFragmentShadingRateFeaturesKHR\">VkPhysicalDeviceFragmentShadingRateFeaturesKHR</a>, <a href=\"#VkPhysicalDeviceHostQueryResetFeatures\">VkPhysicalDeviceHostQueryResetFeatures</a>, <a href=\"#VkPhysicalDeviceImageRobustnessFeaturesEXT\">VkPhysicalDeviceImageRobustnessFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceImagelessFramebufferFeatures\">VkPhysicalDeviceImagelessFramebufferFeatures</a>, <a href=\"#VkPhysicalDeviceIndexTypeUint8FeaturesEXT\">VkPhysicalDeviceIndexTypeUint8FeaturesEXT</a>, <a href=\"#VkPhysicalDeviceLineRasterizationFeaturesEXT\">VkPhysicalDeviceLineRasterizationFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceMultiviewFeatures\">VkPhysicalDeviceMultiviewFeatures</a>, <a href=\"#VkPhysicalDevicePerformanceQueryFeaturesKHR\">VkPhysicalDevicePerformanceQueryFeaturesKHR</a>, <a href=\"#VkPhysicalDeviceProtectedMemoryFeatures\">VkPhysicalDeviceProtectedMemoryFeatures</a>, <a href=\"#VkPhysicalDeviceRobustness2FeaturesEXT\">VkPhysicalDeviceRobustness2FeaturesEXT</a>, <a href=\"#VkPhysicalDeviceSamplerYcbcrConversionFeatures\">VkPhysicalDeviceSamplerYcbcrConversionFeatures</a>, <a href=\"#VkPhysicalDeviceScalarBlockLayoutFeatures\">VkPhysicalDeviceScalarBlockLayoutFeatures</a>, <a href=\"#VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures\">VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures</a>, <a href=\"#VkPhysicalDeviceShaderAtomicFloatFeaturesEXT\">VkPhysicalDeviceShaderAtomicFloatFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceShaderAtomicInt64Features\">VkPhysicalDeviceShaderAtomicInt64Features</a>, <a href=\"#VkPhysicalDeviceShaderClockFeaturesKHR\">VkPhysicalDeviceShaderClockFeaturesKHR</a>, <a href=\"#VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT\">VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceShaderDrawParametersFeatures\">VkPhysicalDeviceShaderDrawParametersFeatures</a>, <a href=\"#VkPhysicalDeviceShaderFloat16Int8Features\">VkPhysicalDeviceShaderFloat16Int8Features</a>, <a href=\"#VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT\">VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT</a>, <a href=\"#VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures\">VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures</a>, <a href=\"#VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR\">VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR</a>, <a href=\"#VkPhysicalDeviceSubgroupSizeControlFeaturesEXT\">VkPhysicalDeviceSubgroupSizeControlFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceSynchronization2FeaturesKHR\">VkPhysicalDeviceSynchronization2FeaturesKHR</a>, <a href=\"#VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT\">VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT\">VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceTimelineSemaphoreFeatures\">VkPhysicalDeviceTimelineSemaphoreFeatures</a>, <a href=\"#VkPhysicalDeviceUniformBufferStandardLayoutFeatures\">VkPhysicalDeviceUniformBufferStandardLayoutFeatures</a>, <a href=\"#VkPhysicalDeviceVariablePointersFeatures\">VkPhysicalDeviceVariablePointersFeatures</a>, <a href=\"#VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT\">VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT\">VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT</a>, <a href=\"#VkPhysicalDeviceVulkan11Features\">VkPhysicalDeviceVulkan11Features</a>, <a href=\"#VkPhysicalDeviceVulkan12Features\">VkPhysicalDeviceVulkan12Features</a>, <a href=\"#VkPhysicalDeviceVulkanMemoryModelFeatures\">VkPhysicalDeviceVulkanMemoryModelFeatures</a>, <a href=\"#VkPhysicalDeviceVulkanSC10Features\">VkPhysicalDeviceVulkanSC10Features</a>, <a href=\"#VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT\">VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT</a>, or <a href=\"#VkPhysicalDeviceYcbcrImageArraysFeaturesEXT\">VkPhysicalDeviceYcbcrImageArraysFeaturesEXT</a>" }, { "vuid": "VUID-VkDeviceCreateInfo-sType-unique", @@ -726,6 +726,14 @@ } ] }, + "VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV": { + "(VKSC_VERSION_1_0)+(VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV</code>" + } + ] + }, "VkPipelinePoolSize": { "(VKSC_VERSION_1_0)": [ { @@ -739,28 +747,34 @@ ] }, "vkDestroyDevice": { - "core": [ + "(VKSC_VERSION_1_0)": [ + { + "vuid": "VUID-vkDestroyDevice-device-05137", + "text": " All child objects created on <code>device</code> except query pools, descriptor pools, command pools, and device memory <strong class=\"purple\">must</strong> have been destroyed prior to destroying <code>device</code>" + } + ], + "!(VKSC_VERSION_1_0)": [ { "vuid": "VUID-vkDestroyDevice-device-00378", "text": " All child objects created on <code>device</code> <strong class=\"purple\">must</strong> have been destroyed prior to destroying <code>device</code>" }, { - "vuid": "VUID-vkDestroyDevice-device-parameter", - "text": " If <code>device</code> is not <code>NULL</code>, <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" + "vuid": "VUID-vkDestroyDevice-device-00379", + "text": " If <code>VkAllocationCallbacks</code> were provided when <code>device</code> was created, a compatible set of callbacks <strong class=\"purple\">must</strong> be provided here" }, { - "vuid": "VUID-vkDestroyDevice-pAllocator-null", - "text": " <code>pAllocator</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "vuid": "VUID-vkDestroyDevice-device-00380", + "text": " If no <code>VkAllocationCallbacks</code> were provided when <code>device</code> was created, <code>pAllocator</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ], - "!(VKSC_VERSION_1_0)": [ + "core": [ { - "vuid": "VUID-vkDestroyDevice-device-00379", - "text": " If <code>VkAllocationCallbacks</code> were provided when <code>device</code> was created, a compatible set of callbacks <strong class=\"purple\">must</strong> be provided here" + "vuid": "VUID-vkDestroyDevice-device-parameter", + "text": " If <code>device</code> is not <code>NULL</code>, <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" }, { - "vuid": "VUID-vkDestroyDevice-device-00380", - "text": " If no <code>VkAllocationCallbacks</code> were provided when <code>device</code> was created, <code>pAllocator</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "vuid": "VUID-vkDestroyDevice-pAllocator-null", + "text": " <code>pAllocator</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" } ] }, @@ -933,10 +947,6 @@ ], "(VKSC_VERSION_1_0)": [ { - "vuid": "VUID-VkCommandPoolCreateInfo-commandPoolResetCommandBuffer-05001", - "text": " If <a href=\"#limits-commandPoolResetCommandBuffer\"><code>commandPoolResetCommandBuffer</code></a> is <code>VK_FALSE</code>, <code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT</code>" - }, - { "vuid": "VUID-VkCommandPoolCreateInfo-pNext-05002", "text": " The <code>pNext</code> chain <strong class=\"purple\">must</strong> include a <a href=\"#VkCommandPoolMemoryReservationCreateInfo\">VkCommandPoolMemoryReservationCreateInfo</a> structure" } @@ -1134,6 +1144,12 @@ "vuid": "VUID-vkResetCommandBuffer-flags-parameter", "text": " <code>flags</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkCommandBufferResetFlagBits\">VkCommandBufferResetFlagBits</a> values" } + ], + "(VKSC_VERSION_1_0)": [ + { + "vuid": "VUID-vkResetCommandBuffer-commandPoolResetCommandBuffer-05135", + "text": " <a href=\"#limits-commandPoolResetCommandBuffer\"><code>commandPoolResetCommandBuffer</code></a> <strong class=\"purple\">must</strong> be supported" + } ] }, "vkFreeCommandBuffers": { @@ -1201,6 +1217,10 @@ ], "(VKSC_VERSION_1_0)": [ { + "vuid": "VUID-vkBeginCommandBuffer-commandPoolResetCommandBuffer-05136", + "text": " If <a href=\"#limits-commandPoolResetCommandBuffer\"><code>commandPoolResetCommandBuffer</code></a> is not supported, <code>commandBuffer</code> <strong class=\"purple\">must</strong> be in the <a href=\"#commandbuffers-lifecycle\">initial state</a>" + }, + { "vuid": "VUID-vkBeginCommandBuffer-commandPoolMultipleCommandBuffersRecording-05007", "text": " If <a href=\"#limits-commandPoolMultipleCommandBuffersRecording\"><code>commandPoolMultipleCommandBuffersRecording</code></a> is <code>VK_FALSE</code>, then the command pool that <code>commandBuffer</code> was created from <strong class=\"purple\">must</strong> have no other command buffers in the <a href=\"#commandbuffers-lifecycle\">recording state</a>" }, @@ -1693,7 +1713,7 @@ "text": " If the <code>device</code> that <code>semaphore</code> was created on is a device group, <code>deviceIndex</code> <strong class=\"purple\">must</strong> be a valid device index" } ], - "(VK_KHR_synchronization2)+(VK_NV_external_sci_sync)": [ + "(VK_KHR_synchronization2)+(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-VkSemaphoreSubmitInfoKHR-semaphore-05094", "text": " If <code>semaphore</code> has a payload of <code>NvSciSyncObj</code>, <code>value</code> <strong class=\"purple\">must</strong> be calculated by application via <a href=\"#NvSciSync-extension-page\">NvSciSync APIs</a>." @@ -2359,7 +2379,7 @@ "text": " The number of {objectnameplural} currently allocated from <code>device</code> plus {objectcount} <strong class=\"purple\">must</strong> be less than or equal to the total number of {objectnameplural} requested via <a href=\"#VkDeviceObjectReservationCreateInfo\">VkDeviceObjectReservationCreateInfo</a>::pname:{objectnamecamelcase}RequestCount specified when <code>device</code> was created" } ], - "(VK_NV_external_sci_sync)": [ + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-vkCreateFence-pNext-05106", "text": " If the <code>pNext</code> chain of <a href=\"#VkFenceCreateInfo\">VkFenceCreateInfo</a> includes <a href=\"#VkExportFenceSciSyncInfoNV\">VkExportFenceSciSyncInfoNV</a>, then <a href=\"#VkFenceCreateInfo\">VkFenceCreateInfo</a>::<code>flags</code> <strong class=\"purple\">must</strong> not include <code>VK_FENCE_CREATE_SIGNALED_BIT</code>" @@ -2419,10 +2439,10 @@ "text": " <code>handleTypes</code> <strong class=\"purple\">must</strong> be a valid combination of <a href=\"#VkExternalFenceHandleTypeFlagBits\">VkExternalFenceHandleTypeFlagBits</a> values" } ], - "(VK_VERSION_1_1,VK_KHR_external_fence)+(VK_NV_external_sci_sync)": [ + "(VK_VERSION_1_1,VK_KHR_external_fence)+(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-VkExportFenceCreateInfo-pNext-05107", - "text": " If the <code>pNext</code> chain includes a <a href=\"#VkExportFenceSciSyncInfoNV\">VkExportFenceSciSyncInfoNV</a> structure, <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code> and <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncExport</code> <strong class=\"purple\">must</strong> be enabled" + "text": " If the <code>pNext</code> chain includes a <a href=\"#VkExportFenceSciSyncInfoNV\">VkExportFenceSciSyncInfoNV</a> structure, <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code> and <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncExport</code>, or <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncFence</code> and <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncExport</code> <strong class=\"purple\">must</strong> be enabled" } ] }, @@ -2511,7 +2531,7 @@ ] }, "VkExportFenceSciSyncInfoNV": { - "(VK_NV_external_sci_sync)": [ + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-VkExportFenceSciSyncInfoNV-pAttributes-05108", "text": " <code>pAttributes</code> <strong class=\"purple\">must</strong> be a reconciled <code>NvSciSyncAttrList</code>" @@ -2523,14 +2543,14 @@ ] }, "vkGetPhysicalDeviceSciSyncAttributesNV": { - "(VK_NV_external_sci_sync)": [ + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-vkGetPhysicalDeviceSciSyncAttributesNV-pSciSyncAttributesInfo-05109", - "text": " If <code>pSciSyncAttributesInfo->primitiveType</code> is <code>VK_SCI_SYNC_PRIMITIVE_TYPE_FENCE_NV</code> then <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code> <strong class=\"purple\">must</strong> be enabled" + "text": " If <code>pSciSyncAttributesInfo->primitiveType</code> is <code>VK_SCI_SYNC_PRIMITIVE_TYPE_FENCE_NV</code> then <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code> or <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncFence</code> <strong class=\"purple\">must</strong> be enabled" }, { "vuid": "VUID-vkGetPhysicalDeviceSciSyncAttributesNV-pSciSyncAttributesInfo-05110", - "text": " If <code>pSciSyncAttributesInfo->primitiveType</code> is <code>VK_SCI_SYNC_PRIMITIVE_TYPE_SEMAPHORE_NV</code> then <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncSemaphore</code> <strong class=\"purple\">must</strong> be enabled" + "text": " If <code>pSciSyncAttributesInfo->primitiveType</code> is <code>VK_SCI_SYNC_PRIMITIVE_TYPE_SEMAPHORE_NV</code> then <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncSemaphore</code> or <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncSemaphore2</code> <strong class=\"purple\">must</strong> be enabled" }, { "vuid": "VUID-vkGetPhysicalDeviceSciSyncAttributesNV-pAttributes-05111", @@ -2547,7 +2567,7 @@ ] }, "VkSciSyncAttributesInfoNV": { - "(VK_NV_external_sci_sync)": [ + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-VkSciSyncAttributesInfoNV-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV</code>" @@ -2567,14 +2587,14 @@ ] }, "vkGetFenceSciSyncFenceNV": { - "(VK_NV_external_sci_sync)": [ + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-vkGetFenceSciSyncFenceNV-pGetSciSyncHandleInfo-05112", "text": " <code>pGetSciSyncHandleInfo->handleType</code> <strong class=\"purple\">must</strong> be <code>VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV</code>" }, { "vuid": "VUID-vkGetFenceSciSyncFenceNV-sciSyncFence-05113", - "text": " <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code> <strong class=\"purple\">must</strong> be enabled" + "text": " <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code> or <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncFence</code> <strong class=\"purple\">must</strong> be enabled" }, { "vuid": "VUID-vkGetFenceSciSyncFenceNV-device-parameter", @@ -2591,14 +2611,14 @@ ] }, "vkGetFenceSciSyncObjNV": { - "(VK_NV_external_sci_sync)": [ + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-vkGetFenceSciSyncObjNV-pGetSciSyncHandleInfo-05114", "text": " <code>pGetSciSyncHandleInfo->handleType</code> <strong class=\"purple\">must</strong> be <code>VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV</code>" }, { "vuid": "VUID-vkGetFenceSciSyncObjNV-sciSyncFence-05115", - "text": " <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code> <strong class=\"purple\">must</strong> be enabled" + "text": " <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code> or <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncFence</code> <strong class=\"purple\">must</strong> be enabled" }, { "vuid": "VUID-vkGetFenceSciSyncObjNV-device-parameter", @@ -2615,11 +2635,7 @@ ] }, "VkFenceGetSciSyncInfoNV": { - "(VK_NV_external_sci_sync)": [ - { - "vuid": "VUID-VkFenceGetSciSyncInfoNV-handleType-05116", - "text": " <code>handleType</code> <strong class=\"purple\">must</strong> be <code>VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV</code> or <code>VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV</code>" - }, + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-VkFenceGetSciSyncInfoNV-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV</code>" @@ -2901,7 +2917,19 @@ ] }, "vkImportFenceSciSyncFenceNV": { - "(VK_NV_external_sci_sync)": [ + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-vkImportFenceSciSyncFenceNV-sciSyncImport-05140", + "text": " <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncImport</code> and <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code>, or <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncImport</code> and <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncFence</code> <strong class=\"purple\">must</strong> be enabled" + }, + { + "vuid": "VUID-vkImportFenceSciSyncFenceNV-fence-05141", + "text": " <code>fence</code> <strong class=\"purple\">must</strong> not be associated with any queue command that has not yet completed execution on that queue" + }, + { + "vuid": "VUID-vkImportFenceSciSyncFenceNV-pImportFenceSciSyncInfo-05142", + "text": " <code>pImportFenceSciSyncInfo->handleType</code> <strong class=\"purple\">must</strong> be <code>VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV</code>" + }, { "vuid": "VUID-vkImportFenceSciSyncFenceNV-device-parameter", "text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" @@ -2913,7 +2941,19 @@ ] }, "vkImportFenceSciSyncObjNV": { - "(VK_NV_external_sci_sync)": [ + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-vkImportFenceSciSyncObjNV-sciSyncImport-05143", + "text": " <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncImport</code> and <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncFence</code>, or <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncImport</code> and <a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncFence</code> <strong class=\"purple\">must</strong> be enabled" + }, + { + "vuid": "VUID-vkImportFenceSciSyncObjNV-fence-05144", + "text": " <code>fence</code> <strong class=\"purple\">must</strong> not be associated with any queue command that has not yet completed execution on that queue" + }, + { + "vuid": "VUID-vkImportFenceSciSyncObjNV-pImportFenceSciSyncInfo-05145", + "text": " <code>pImportFenceSciSyncInfo->handleType</code> <strong class=\"purple\">must</strong> be <code>VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV</code>" + }, { "vuid": "VUID-vkImportFenceSciSyncObjNV-device-parameter", "text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" @@ -2925,11 +2965,7 @@ ] }, "VkImportFenceSciSyncInfoNV": { - "(VK_NV_external_sci_sync)": [ - { - "vuid": "VUID-VkImportFenceSciSyncInfoNV-handleType-05117", - "text": " <code>handleType</code> <strong class=\"purple\">must</strong> be a value included in the <a href=\"#synchronization-fence-handletypes-sci-sync\">Handle Types Supported by <code>VkImportFenceSciSyncInfoNV</code></a> table" - }, + "(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-VkImportFenceSciSyncInfoNV-sType-sType", "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV</code>" @@ -2982,7 +3018,13 @@ "(VK_NV_external_sci_sync)": [ { "vuid": "VUID-VkSemaphoreCreateInfo-pNext-05118", - "text": " If the <code>pNext</code> chain includes <a href=\"#VkExportSemaphoreSciSyncInfoNV\">VkExportSemaphoreSciSyncInfoNV</a>, it <strong class=\"purple\">must</strong> also include <a href=\"#VkSemaphoreTypeCreateInfo\">VkSemaphoreTypeCreateInfo</a> with a <a href=\"#VkSemaphoreTypeCreateInfo\">VkSemaphoreTypeCreateInfo</a>→<code>semaphoreType</code> of <code>VK_SEMAPHORE_TYPE_TIMELINE</code>" + "text": " If the <code>pNext</code> chain includes <a href=\"#VkExportSemaphoreSciSyncInfoNV\">VkExportSemaphoreSciSyncInfoNV</a>, it <strong class=\"purple\">must</strong> also include <a href=\"#VkSemaphoreTypeCreateInfo\">VkSemaphoreTypeCreateInfo</a> with a <a href=\"#VkSemaphoreTypeCreateInfo\">VkSemaphoreTypeCreateInfo</a>::<code>semaphoreType</code> of <code>VK_SEMAPHORE_TYPE_TIMELINE</code>" + } + ], + "(VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-VkSemaphoreCreateInfo-pNext-05146", + "text": " If the <code>pNext</code> chain includes <a href=\"#VkSemaphoreSciSyncCreateInfoNV\">VkSemaphoreSciSyncCreateInfoNV</a>, it <strong class=\"purple\">must</strong> also include <a href=\"#VkSemaphoreTypeCreateInfo\">VkSemaphoreTypeCreateInfo</a> with a <a href=\"#VkSemaphoreTypeCreateInfo\">VkSemaphoreTypeCreateInfo</a>::<code>semaphoreType</code> of <code>VK_SEMAPHORE_TYPE_TIMELINE</code>" } ], "core": [ @@ -2992,7 +3034,7 @@ }, { "vuid": "VUID-VkSemaphoreCreateInfo-pNext-pNext", - "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkExportSemaphoreCreateInfo\">VkExportSemaphoreCreateInfo</a>, <a href=\"#VkExportSemaphoreSciSyncInfoNV\">VkExportSemaphoreSciSyncInfoNV</a>, or <a href=\"#VkSemaphoreTypeCreateInfo\">VkSemaphoreTypeCreateInfo</a>" + "text": " Each <code>pNext</code> member of any structure (including this one) in the <code>pNext</code> chain <strong class=\"purple\">must</strong> be either <code>NULL</code> or a pointer to a valid instance of <a href=\"#VkExportSemaphoreCreateInfo\">VkExportSemaphoreCreateInfo</a>, <a href=\"#VkExportSemaphoreSciSyncInfoNV\">VkExportSemaphoreSciSyncInfoNV</a>, <a href=\"#VkSemaphoreSciSyncCreateInfoNV\">VkSemaphoreSciSyncCreateInfoNV</a>, or <a href=\"#VkSemaphoreTypeCreateInfo\">VkSemaphoreTypeCreateInfo</a>" }, { "vuid": "VUID-VkSemaphoreCreateInfo-sType-unique", @@ -3197,6 +3239,10 @@ "vkGetSemaphoreSciSyncObjNV": { "(VK_NV_external_sci_sync)": [ { + "vuid": "VUID-vkGetSemaphoreSciSyncObjNV-sciSyncSemaphore-05147", + "text": " <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncSemaphore</code> <strong class=\"purple\">must</strong> be enabled" + }, + { "vuid": "VUID-vkGetSemaphoreSciSyncObjNV-device-parameter", "text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" }, @@ -3242,13 +3288,51 @@ } ] }, + "VkSemaphoreSciSyncCreateInfoNV": { + "(VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-VkSemaphoreSciSyncCreateInfoNV-sciSyncSemaphore2-05148", + "text": " The <a href=\"#features-sciSyncSemaphore2\"><a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncSemaphore2</code></a> feature <strong class=\"purple\">must</strong> be enabled" + }, + { + "vuid": "VUID-VkSemaphoreSciSyncCreateInfoNV-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV</code>" + }, + { + "vuid": "VUID-VkSemaphoreSciSyncCreateInfoNV-semaphorePool-parameter", + "text": " <code>semaphorePool</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSemaphoreSciSyncPoolNV\">VkSemaphoreSciSyncPoolNV</a> handle" + }, + { + "vuid": "VUID-VkSemaphoreSciSyncCreateInfoNV-pFence-parameter", + "text": " <code>pFence</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <code>NvSciSyncFence</code> value" + } + ] + }, "vkDestroySemaphore": { - "core": [ + "!(VK_NV_external_sci_sync2)": [ { "vuid": "VUID-vkDestroySemaphore-semaphore-01137", "text": " All submitted batches that refer to <code>semaphore</code> <strong class=\"purple\">must</strong> have completed execution" + } + ], + "(VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-vkDestroySemaphore-semaphore-05149", + "text": " If <code>semaphore</code> was not created with <a href=\"#VkSemaphoreSciSyncCreateInfoNV\">VkSemaphoreSciSyncCreateInfoNV</a> present in the <a href=\"#VkSemaphoreCreateInfo\">VkSemaphoreCreateInfo</a>::<code>pNext</code> chain when it was created, all submitted batches that refer to <code>semaphore</code> <strong class=\"purple\">must</strong> have completed execution" + } + ], + "!(VKSC_VERSION_1_0)": [ + { + "vuid": "VUID-vkDestroySemaphore-semaphore-01138", + "text": " If <code>VkAllocationCallbacks</code> were provided when <code>semaphore</code> was created, a compatible set of callbacks <strong class=\"purple\">must</strong> be provided here" }, { + "vuid": "VUID-vkDestroySemaphore-semaphore-01139", + "text": " If no <code>VkAllocationCallbacks</code> were provided when <code>semaphore</code> was created, <code>pAllocator</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + } + ], + "core": [ + { "vuid": "VUID-vkDestroySemaphore-device-parameter", "text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" }, @@ -3264,15 +3348,79 @@ "vuid": "VUID-vkDestroySemaphore-semaphore-parent", "text": " If <code>semaphore</code> is a valid handle, it <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>" } + ] + }, + "vkCreateSemaphoreSciSyncPoolNV": { + "(VK_NV_external_sci_sync2)+(VKSC_VERSION_1_0)": [ + { + "vuid": "VUID-vkCreateSemaphoreSciSyncPoolNV-device-05150", + "text": " The number of semaphore pools currently allocated from <code>device</code> plus 1 <strong class=\"purple\">must</strong> be less than or equal to the total number of semaphore pools requested via <a href=\"#VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV\">VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV</a>::<code>semaphoreSciSyncPoolRequestCount</code> specified when <code>device</code> was created" + } ], - "!(VKSC_VERSION_1_0)": [ + "(VK_NV_external_sci_sync2)": [ { - "vuid": "VUID-vkDestroySemaphore-semaphore-01138", - "text": " If <code>VkAllocationCallbacks</code> were provided when <code>semaphore</code> was created, a compatible set of callbacks <strong class=\"purple\">must</strong> be provided here" + "vuid": "VUID-vkCreateSemaphoreSciSyncPoolNV-sciSyncSemaphore2-05151", + "text": " The <a href=\"#features-sciSyncSemaphore2\"><a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncSemaphore2</code></a> feature <strong class=\"purple\">must</strong> be enabled" }, { - "vuid": "VUID-vkDestroySemaphore-semaphore-01139", - "text": " If no <code>VkAllocationCallbacks</code> were provided when <code>semaphore</code> was created, <code>pAllocator</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + "vuid": "VUID-vkCreateSemaphoreSciSyncPoolNV-device-parameter", + "text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" + }, + { + "vuid": "VUID-vkCreateSemaphoreSciSyncPoolNV-pCreateInfo-parameter", + "text": " <code>pCreateInfo</code> <strong class=\"purple\">must</strong> be a valid pointer to a valid <a href=\"#VkSemaphoreSciSyncPoolCreateInfoNV\">VkSemaphoreSciSyncPoolCreateInfoNV</a> structure" + }, + { + "vuid": "VUID-vkCreateSemaphoreSciSyncPoolNV-pAllocator-null", + "text": " <code>pAllocator</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + }, + { + "vuid": "VUID-vkCreateSemaphoreSciSyncPoolNV-pSemaphorePool-parameter", + "text": " <code>pSemaphorePool</code> <strong class=\"purple\">must</strong> be a valid pointer to a <a href=\"#VkSemaphoreSciSyncPoolNV\">VkSemaphoreSciSyncPoolNV</a> handle" + } + ] + }, + "VkSemaphoreSciSyncPoolCreateInfoNV": { + "(VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-VkSemaphoreSciSyncPoolCreateInfoNV-handle-05152", + "text": " <code>handle</code> <strong class=\"purple\">must</strong> a valid <code>NvSciSyncObj</code>" + }, + { + "vuid": "VUID-VkSemaphoreSciSyncPoolCreateInfoNV-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV</code>" + }, + { + "vuid": "VUID-VkSemaphoreSciSyncPoolCreateInfoNV-pNext-pNext", + "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + } + ] + }, + "vkDestroySemaphoreSciSyncPoolNV": { + "(VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-vkDestroySemaphoreSciSyncPoolNV-semaphorePool-05153", + "text": " All submitted batches that refer to a semaphore created from <code>semaphorePool</code> <strong class=\"purple\">must</strong> have completed execution" + }, + { + "vuid": "VUID-vkDestroySemaphoreSciSyncPoolNV-sciSyncSemaphore2-05154", + "text": " The <a href=\"#features-sciSyncSemaphore2\"><a href=\"#VkPhysicalDeviceExternalSciSync2FeaturesNV\">VkPhysicalDeviceExternalSciSync2FeaturesNV</a>::<code>sciSyncSemaphore2</code></a> feature <strong class=\"purple\">must</strong> be enabled" + }, + { + "vuid": "VUID-vkDestroySemaphoreSciSyncPoolNV-device-parameter", + "text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" + }, + { + "vuid": "VUID-vkDestroySemaphoreSciSyncPoolNV-semaphorePool-parameter", + "text": " If <code>semaphorePool</code> is not <a href=\"#VK_NULL_HANDLE\">VK_NULL_HANDLE</a>, <code>semaphorePool</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSemaphoreSciSyncPoolNV\">VkSemaphoreSciSyncPoolNV</a> handle" + }, + { + "vuid": "VUID-vkDestroySemaphoreSciSyncPoolNV-pAllocator-null", + "text": " <code>pAllocator</code> <strong class=\"purple\">must</strong> be <code>NULL</code>" + }, + { + "vuid": "VUID-vkDestroySemaphoreSciSyncPoolNV-semaphorePool-parent", + "text": " If <code>semaphorePool</code> is a valid handle, it <strong class=\"purple\">must</strong> have been created, allocated, or retrieved from <code>device</code>" } ] }, @@ -3343,10 +3491,10 @@ "text": " <code>semaphoreCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" } ], - "(VK_VERSION_1_2,VK_KHR_timeline_semaphore)+(VK_NV_external_sci_sync)": [ + "(VK_VERSION_1_2,VK_KHR_timeline_semaphore)+(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-VkSemaphoreWaitInfo-pSemaphores-05124", - "text": " If any of the semaphores in <code>pSemaphores</code> have <code>NvSciSyncObj</code> as payload, application <strong class=\"purple\">must</strong> calculate the corresponding timeline semaphore values in <code>pValues</code> by calling <a href=\"#NvSciSync-extension-page\">NvSciSync APIs</a>." + "text": " If any of the semaphores in <code>pSemaphores</code> have <code>NvSciSyncObj</code> as payload, application <strong class=\"purple\">must</strong> calculate the corresponding timeline semaphore values in <code>pValues</code> by calling <a href=\"#NvSciSync2-extension-page\">NvSciSync APIs</a>." } ] }, @@ -3393,10 +3541,10 @@ "text": " <code>semaphore</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkSemaphore\">VkSemaphore</a> handle" } ], - "(VK_VERSION_1_2,VK_KHR_timeline_semaphore)+(VK_NV_external_sci_sync)": [ + "(VK_VERSION_1_2,VK_KHR_timeline_semaphore)+(VK_NV_external_sci_sync,VK_NV_external_sci_sync2)": [ { "vuid": "VUID-VkSemaphoreSignalInfo-semaphores-05125", - "text": " If <code>semaphores</code> has <code>NvSciSyncObj</code> as payload, application <strong class=\"purple\">must</strong> calculate the corresponding timeline semaphore value in <code>value</code> by calling <a href=\"#NvSciSync-extension-page\">NvSciSync APIs</a>." + "text": " If <code>semaphores</code> has <code>NvSciSyncObj</code> as payload, application <strong class=\"purple\">must</strong> calculate the corresponding timeline semaphore value in <code>value</code> by calling <a href=\"#NvSciSync2-extension-page\">NvSciSync APIs</a>." } ] }, @@ -3541,6 +3689,10 @@ "vkImportSemaphoreSciSyncObjNV": { "(VK_NV_external_sci_sync)": [ { + "vuid": "VUID-vkImportSemaphoreSciSyncObjNV-sciSyncImport-05155", + "text": " <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncImport</code> and <a href=\"#VkPhysicalDeviceExternalSciSyncFeaturesNV\">VkPhysicalDeviceExternalSciSyncFeaturesNV</a>::<code>sciSyncSemaphore</code> <strong class=\"purple\">must</strong> be enabled" + }, + { "vuid": "VUID-vkImportSemaphoreSciSyncObjNV-device-parameter", "text": " <code>device</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#VkDevice\">VkDevice</a> handle" }, @@ -11601,6 +11753,10 @@ { "vuid": "VUID-VkPipelineCacheCreateInfo-pInitialData-05045", "text": " The contents of this structure and data pointed to by <code>pInitialData</code> <strong class=\"purple\">must</strong> be the same as specified in one of the <a href=\"#VkDeviceObjectReservationCreateInfo\">VkDeviceObjectReservationCreateInfo</a>::<code>pPipelineCacheCreateInfos</code> structures when the device was created" + }, + { + "vuid": "VUID-VkPipelineCacheCreateInfo-pInitialData-05139", + "text": " The pipeline cache data pointed to by <code>pInitialData</code> <strong class=\"purple\">must</strong> not contain any pipelines with duplicate pipeline identifiers." } ], "core": [ @@ -17648,11 +17804,7 @@ }, { "vuid": "VUID-VkDescriptorPoolCreateInfo-pPoolSizes-parameter", - "text": " <code>pPoolSizes</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>poolSizeCount</code> valid <a href=\"#VkDescriptorPoolSize\">VkDescriptorPoolSize</a> structures" - }, - { - "vuid": "VUID-VkDescriptorPoolCreateInfo-poolSizeCount-arraylength", - "text": " <code>poolSizeCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" + "text": " If <code>poolSizeCount</code> is not <code>0</code>, <code>pPoolSizes</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>poolSizeCount</code> valid <a href=\"#VkDescriptorPoolSize\">VkDescriptorPoolSize</a> structures" } ], "(VK_VERSION_1_2,VK_EXT_descriptor_indexing)+(VK_VALVE_mutable_descriptor_type)": [ @@ -39252,6 +39404,14 @@ } ] }, + "VkPhysicalDeviceExternalSciSync2FeaturesNV": { + "(VK_NV_external_sci_sync2)": [ + { + "vuid": "VUID-VkPhysicalDeviceExternalSciSync2FeaturesNV-sType-sType", + "text": " <code>sType</code> <strong class=\"purple\">must</strong> be <code>VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV</code>" + } + ] + }, "VkPhysicalDeviceExternalSciBufFeaturesNV": { "(VK_NV_external_memory_sci_buf)": [ { @@ -40580,7 +40740,7 @@ "(VKSC_VERSION_1_0)": [ { "vuid": "VUID-VkFaultData-pNext-05019", - "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code> or a valid host pointer to an implementation-specific amount of writeable memory." + "text": " <code>pNext</code> <strong class=\"purple\">must</strong> be <code>NULL</code> or a valid pointer to an implementation-specific structure" }, { "vuid": "VUID-VkFaultData-sType-sType", @@ -40631,8 +40791,8 @@ "VkFaultCallbackInfo": { "(VKSC_VERSION_1_0)": [ { - "vuid": "VUID-VkFaultCallbackInfo-faultCount-05088", - "text": " <code>faultCount</code> <strong class=\"purple\">must</strong> be equal to <a href=\"#limits-maxCallbackFaultCount\"><code>VkPhysicalDeviceVulkanSC10Properties</code>::<code>maxCallbackFaultCount</code></a>" + "vuid": "VUID-VkFaultCallbackInfo-faultCount-05138", + "text": " <code>faultCount</code> <strong class=\"purple\">must</strong> either be 0, or equal to <a href=\"#limits-maxCallbackFaultCount\"><code>VkPhysicalDeviceVulkanSC10Properties</code>::<code>maxCallbackFaultCount</code></a>" }, { "vuid": "VUID-VkFaultCallbackInfo-sType-sType", @@ -40640,15 +40800,11 @@ }, { "vuid": "VUID-VkFaultCallbackInfo-pFaults-parameter", - "text": " <code>pFaults</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>faultCount</code> <a href=\"#VkFaultData\">VkFaultData</a> structures" + "text": " If <code>faultCount</code> is not <code>0</code>, and <code>pFaults</code> is not <code>NULL</code>, <code>pFaults</code> <strong class=\"purple\">must</strong> be a valid pointer to an array of <code>faultCount</code> <a href=\"#VkFaultData\">VkFaultData</a> structures" }, { "vuid": "VUID-VkFaultCallbackInfo-pfnFaultCallback-parameter", "text": " <code>pfnFaultCallback</code> <strong class=\"purple\">must</strong> be a valid <a href=\"#PFN_vkFaultCallbackFunction\">PFN_vkFaultCallbackFunction</a> value" - }, - { - "vuid": "VUID-VkFaultCallbackInfo-faultCount-arraylength", - "text": " <code>faultCount</code> <strong class=\"purple\">must</strong> be greater than <code>0</code>" } ] }, diff --git a/registry/vk.xml b/registry/vk.xml index a077c3b..3c3a199 100644 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -132,6 +132,8 @@ branch of the member gitlab server. <type requires="screen/screen.h" name="_screen_context"/> <type requires="screen/screen.h" name="_screen_window"/> <type requires="nvscisync.h" name="NvSciSyncAttrList"/> + <type requires="nvscisync.h" name="NvSciSyncObj"/> + <type requires="nvscisync.h" name="NvSciSyncFence"/> <type requires="nvscibuf.h" name="NvSciBufAttrList"/> <type requires="nvscibuf.h" name="NvSciBufObj"/> @@ -172,7 +174,7 @@ branch of the member gitlab server. #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 2, VK_HEADER_VERSION)</type> <type api="vulkansc" category="define">// Version of this file -#define <name>VK_HEADER_VERSION</name> 10</type> +#define <name>VK_HEADER_VERSION</name> 11</type> <type api="vulkansc" category="define" requires="VKSC_API_VARIANT">// Complete version of this file #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(VKSC_API_VARIANT, 1, 0, VK_HEADER_VERSION)</type> @@ -501,6 +503,9 @@ typedef void <name>CAMetalLayer</name>; <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_VIDEO_SESSION_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkVideoSessionKHR</name>)</type> <type category="handle" parent="VkVideoSessionKHR" objtypeenum="VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkVideoSessionParametersKHR</name>)</type> + <comment>VK_NV_external_sci_sync2</comment> + <type category="handle" parent="VkDevice" objtypeenum="VK_OBJECT_TYPE_SEMAPHORE_SCI_SYNC_POOL_NV"><type>VK_DEFINE_NON_DISPATCHABLE_HANDLE</type>(<name>VkSemaphoreSciSyncPoolNV</name>)</type> + <comment>Types generated from corresponding enums tags below</comment> <type name="VkAttachmentLoadOp" category="enum"/> <type name="VkAttachmentStoreOp" category="enum"/> @@ -1255,7 +1260,7 @@ typedef void <name>CAMetalLayer</name>; <member optional="true">const <type>void</type>* <name>pNext</name></member> <member optional="true"><type>VkDescriptorPoolCreateFlags</type> <name>flags</name></member> <member><type>uint32_t</type> <name>maxSets</name></member> - <member><type>uint32_t</type> <name>poolSizeCount</name></member> + <member optional="true"><type>uint32_t</type> <name>poolSizeCount</name></member> <member len="poolSizeCount">const <type>VkDescriptorPoolSize</type>* <name>pPoolSizes</name></member> </type> <type category="struct" name="VkDescriptorSetAllocateInfo"> @@ -2683,7 +2688,7 @@ typedef void <name>CAMetalLayer</name>; <member optional="true">const <type>void</type>* <name>pNext</name></member> <member externsync="true"><type>VkFence</type> <name>fence</name></member> <member><type>VkExternalFenceHandleTypeFlagBits</type> <name>handleType</name></member> - <member>const <type>void</type>* <name>handle</name></member> + <member><type>void</type>* <name>handle</name></member> </type> <type category="struct" name="VkFenceGetSciSyncInfoNV"> <member values="VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> @@ -2701,7 +2706,7 @@ typedef void <name>CAMetalLayer</name>; <member optional="true">const <type>void</type>* <name>pNext</name></member> <member externsync="true"><type>VkSemaphore</type> <name>semaphore</name></member> <member><type>VkExternalSemaphoreHandleTypeFlagBits</type> <name>handleType</name></member> - <member>const <type>void</type>* <name>handle</name></member> + <member><type>void</type>* <name>handle</name></member> </type> <type category="struct" name="VkSemaphoreGetSciSyncInfoNV"> <member values="VK_STRUCTURE_TYPE_SEMAPHORE_GET_SCI_SYNC_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> @@ -2723,6 +2728,30 @@ typedef void <name>CAMetalLayer</name>; <member><type>VkBool32</type> <name>sciSyncImport</name></member> <member><type>VkBool32</type> <name>sciSyncExport</name></member> </type> + <type category="struct" name="VkPhysicalDeviceExternalSciSync2FeaturesNV" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> + <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true"><type>void</type>* <name>pNext</name></member> + <member><type>VkBool32</type> <name>sciSyncFence</name></member> + <member><type>VkBool32</type> <name>sciSyncSemaphore2</name></member> + <member><type>VkBool32</type> <name>sciSyncImport</name></member> + <member><type>VkBool32</type> <name>sciSyncExport</name></member> + </type> + <type category="struct" name="VkSemaphoreSciSyncPoolCreateInfoNV"> + <member values="VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>NvSciSyncObj</type> <name>handle</name></member> + </type> + <type category="struct" name="VkSemaphoreSciSyncCreateInfoNV" structextends="VkSemaphoreCreateInfo"> + <member values="VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>VkSemaphoreSciSyncPoolNV</type> <name>semaphorePool</name></member> + <member>const <type>NvSciSyncFence</type>* <name>pFence</name></member> + </type> + <type category="struct" name="VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV" allowduplicate="true" structextends="VkDeviceObjectReservationCreateInfo"> + <member values="VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV"><type>VkStructureType</type> <name>sType</name></member> + <member optional="true">const <type>void</type>* <name>pNext</name></member> + <member><type>uint32_t</type> <name>semaphoreSciSyncPoolRequestCount</name></member> + </type> <type category="struct" name="VkPhysicalDeviceMultiviewFeatures" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES"><type>VkStructureType</type> <name>sType</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member> @@ -5157,8 +5186,8 @@ typedef void <name>CAMetalLayer</name>; <type category="struct" name="VkFaultCallbackInfo" structextends="VkDeviceCreateInfo"> <member values="VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO"><type>VkStructureType</type> <name>sType</name></member> <member optional="true"><type>void</type>* <name>pNext</name></member> - <member><type>uint32_t</type> <name>faultCount</name></member> - <member len="faultCount"><type>VkFaultData</type>*<name>pFaults</name></member> + <member optional="true"><type>uint32_t</type> <name>faultCount</name></member> + <member optional="true" len="faultCount"><type>VkFaultData</type>*<name>pFaults</name></member> <member><type>PFN_vkFaultCallbackFunction</type> <name>pfnFaultCallback</name></member> </type> <type category="struct" name="VkPhysicalDeviceToolPropertiesEXT" returnedonly="true"> @@ -10100,6 +10129,19 @@ typedef void <name>CAMetalLayer</name>; <param>const <type>VkSciSyncAttributesInfoNV</type>* <name>pSciSyncAttributesInfo</name></param> <param><type>NvSciSyncAttrList</type> <name>pAttributes</name></param> </command> + <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_INITIALIZATION_FAILED,VK_ERROR_OUT_OF_HOST_MEMORY"> + <proto><type>VkResult</type> <name>vkCreateSemaphoreSciSyncPoolNV</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param>const <type>VkSemaphoreSciSyncPoolCreateInfoNV</type>* <name>pCreateInfo</name></param> + <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> + <param><type>VkSemaphoreSciSyncPoolNV</type>* <name>pSemaphorePool</name></param> + </command> + <command> + <proto><type>void</type> <name>vkDestroySemaphoreSciSyncPoolNV</name></proto> + <param><type>VkDevice</type> <name>device</name></param> + <param optional="true" externsync="true"><type>VkSemaphoreSciSyncPoolNV</type> <name>semaphorePool</name></param> + <param optional="true">const <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param> + </command> <command successcodes="VK_SUCCESS"> <proto><type>VkResult</type> <name>vkReleaseDisplayEXT</name></proto> <param><type>VkPhysicalDevice</type> <name>physicalDevice</name></param> @@ -12815,7 +12857,7 @@ typedef void <name>CAMetalLayer</name>; <remove comment="SC 1.0 removes some features from Vulkan 1.0/1.1/1.2"> <enum name="VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO"/> - <enum name="VK_OBJECT_TYPE_SHADER_MODULE"/> + <!--enum name="VK_OBJECT_TYPE_SHADER_MODULE" comment="leave this present for compatibility"/--> <enum name="VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"/> <enum name="VK_PIPELINE_CREATE_DERIVATIVE_BIT"/> <enum name="VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT"/> @@ -13668,12 +13710,11 @@ typedef void <name>CAMetalLayer</name>; <type name="VkPhysicalDeviceCornerSampledImageFeaturesNV"/> </require> </extension> - <extension name="VK_NV_extension_52" number="52" author="NV" contact="Daniel Koch @dgkoch" supported="disabled"> + <extension name="VK_NV_private_vendor_info" number="52" type="device" author="NV" contact="Daniel Koch @dgkoch" supported="vulkansc"> <require> - <enum value="0" name="VK_NV_EXTENSION_52_SPEC_VERSION"/> - <enum value=""VK_NV_extension_52"" name="VK_NV_EXTENSION_52_EXTENSION_NAME"/> - <enum bitpos="0" extends="VkShaderModuleCreateFlagBits" name="VK_SHADER_MODULE_CREATE_RESERVED_0_BIT_NV"/> - <enum bitpos="2" extends="VkPipelineShaderStageCreateFlagBits" name="VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_2_BIT_NV"/> + <enum value="2" name="VK_NV_PRIVATE_VENDOR_INFO_SPEC_VERSION"/> + <enum value=""VK_NV_private_vendor_info"" name="VK_NV_PRIVATE_VENDOR_INFO_EXTENSION_NAME"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PRIVATE_VENDOR_INFO_RESERVED_OFFSET_0_NV"/> </require> </extension> <extension name="VK_NV_extension_53" number="53" author="NV" contact="Jeff Bolz @jeffbolznv" supported="disabled"> @@ -17714,7 +17755,7 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_NV_extension_373"" name="VK_NV_EXTENSION_373_EXTENSION_NAME"/> </require> </extension> - <extension name="VK_NV_external_sci_sync" number="374" requiresCore="1.1" platform="sci" type="device" author="NV" contact="Kai Zhang @kazhang" supported="vulkansc"> + <extension name="VK_NV_external_sci_sync" number="374" requiresCore="1.1" platform="sci" type="device" author="NV" contact="Kai Zhang @kazhang" supported="vulkansc" deprecatedby="VK_NV_external_sci_sync2"> <require> <enum value="2" name="VK_NV_EXTERNAL_SCI_SYNC_SPEC_VERSION"/> <enum value=""VK_NV_external_sci_sync"" name="VK_NV_EXTERNAL_SCI_SYNC_EXTENSION_NAME"/> @@ -18257,6 +18298,45 @@ typedef void <name>CAMetalLayer</name>; <enum value=""VK_COREAVI_extension_447"" name="VK_COREAVI_EXTENSION_447_EXTENSION_NAME"/> </require> </extension> + <extension name="VK_NV_external_sci_sync2" number="490" author="NV" requiresCore="1.1" platform="sci" type="device" contact="Kai Zhang @kazhang" supported="vulkansc"> + <require> + <enum value="1" name="VK_NV_EXTERNAL_SCI_SYNC_2_SPEC_VERSION"/> + <enum value=""VK_NV_external_sci_sync2"" name="VK_NV_EXTERNAL_SCI_SYNC_2_EXTENSION_NAME"/> + <enum offset="0" extends="VkObjectType" name="VK_OBJECT_TYPE_SEMAPHORE_SCI_SYNC_POOL_NV" comment="VkSemaphoreSciSyncPoolNV" protect="VK_USE_PLATFORM_SCI"/> + <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV"/> + <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV"/> + <enum offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV"/> + <type name="VkSemaphoreSciSyncPoolNV"/> + <type name="VkPhysicalDeviceExternalSciSync2FeaturesNV"/> + <type name="VkSemaphoreSciSyncPoolCreateInfoNV"/> + <type name="VkSemaphoreSciSyncCreateInfoNV"/> + <command name="vkCreateSemaphoreSciSyncPoolNV"/> + <command name="vkDestroySemaphoreSciSyncPoolNV"/> + </require> + <require comment="functionality re-used unmodified from VK_NV_external_sci_sync"> + <enum extnumber="374" offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV"/> + <enum extnumber="374" offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV"/> + <enum extnumber="374" offset="2" extends="VkStructureType" name="VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV"/> + <enum extnumber="374" offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV"/> + <enum bitpos="4" extends="VkExternalFenceHandleTypeFlagBits" name="VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV"/> + <enum bitpos="5" extends="VkExternalFenceHandleTypeFlagBits" name="VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV"/> + <type name="VkSciSyncClientTypeNV"/> + <type name="VkSciSyncPrimitiveTypeNV"/> + <type name="VkExportFenceSciSyncInfoNV"/> + <type name="VkImportFenceSciSyncInfoNV"/> + <type name="VkFenceGetSciSyncInfoNV"/> + <type name="VkSciSyncAttributesInfoNV"/> + <command name="vkGetFenceSciSyncFenceNV"/> + <command name="vkGetFenceSciSyncObjNV"/> + <command name="vkImportFenceSciSyncFenceNV"/> + <command name="vkImportFenceSciSyncObjNV"/> + <command name="vkGetPhysicalDeviceSciSyncAttributesNV"/> + </require> + <require feature="VKSC_VERSION_1_0"> + <enum offset="3" extends="VkStructureType" name="VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV"/> + <type name="VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV"/> + </require> + </extension> </extensions> <formats> <format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8"> |