aboutsummaryrefslogtreecommitdiff
path: root/layers
diff options
context:
space:
mode:
authorMark Young <marky@lunarg.com>2017-07-07 07:59:56 -0600
committerMark Young <marky@lunarg.com>2017-07-13 10:06:43 -0600
commit2c4bbf3f049e561125501baab93c79d149d49394 (patch)
tree41af5db3bdbcb7d67ab4f074fadb3c86a5f27d8e /layers
parent797e93c3aa9e547aeaee12db34cac3b745ad111d (diff)
downloadusermoji-2c4bbf3f049e561125501baab93c79d149d49394.tar.xz
header: Update to 1.0.54 Vulkan release
Update the headers and xml file with the latest spec changes for Vulkan 1.0.54. Also, make corresponding loader and layer changes to support the new extensions. Change-Id: I11273c5e3e828743f904e4f0b4b2f2c3a7804df0
Diffstat (limited to 'layers')
-rw-r--r--layers/linux/VkLayer_core_validation.json2
-rw-r--r--layers/linux/VkLayer_object_tracker.json2
-rw-r--r--layers/linux/VkLayer_parameter_validation.json2
-rw-r--r--layers/linux/VkLayer_standard_validation.json2
-rw-r--r--layers/linux/VkLayer_threading.json2
-rw-r--r--layers/linux/VkLayer_unique_objects.json2
-rw-r--r--layers/object_tracker.cpp447
-rw-r--r--layers/parameter_validation.cpp585
-rw-r--r--layers/vk_validation_error_database.txt543
-rw-r--r--layers/vk_validation_error_messages.h628
-rw-r--r--layers/windows/VkLayer_core_validation.json2
-rw-r--r--layers/windows/VkLayer_object_tracker.json2
-rw-r--r--layers/windows/VkLayer_parameter_validation.json2
-rw-r--r--layers/windows/VkLayer_standard_validation.json2
-rw-r--r--layers/windows/VkLayer_threading.json2
-rw-r--r--layers/windows/VkLayer_unique_objects.json2
16 files changed, 1447 insertions, 780 deletions
diff --git a/layers/linux/VkLayer_core_validation.json b/layers/linux/VkLayer_core_validation.json
index 437c41d9..f7f91564 100644
--- a/layers/linux/VkLayer_core_validation.json
+++ b/layers/linux/VkLayer_core_validation.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_LUNARG_core_validation",
"type": "GLOBAL",
"library_path": "./libVkLayer_core_validation.so",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "LunarG Validation Layer",
"instance_extensions": [
diff --git a/layers/linux/VkLayer_object_tracker.json b/layers/linux/VkLayer_object_tracker.json
index 68fa9d5a..e5cb7a13 100644
--- a/layers/linux/VkLayer_object_tracker.json
+++ b/layers/linux/VkLayer_object_tracker.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_LUNARG_object_tracker",
"type": "GLOBAL",
"library_path": "./libVkLayer_object_tracker.so",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "LunarG Validation Layer",
"instance_extensions": [
diff --git a/layers/linux/VkLayer_parameter_validation.json b/layers/linux/VkLayer_parameter_validation.json
index e10b964d..1290ac54 100644
--- a/layers/linux/VkLayer_parameter_validation.json
+++ b/layers/linux/VkLayer_parameter_validation.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_LUNARG_parameter_validation",
"type": "GLOBAL",
"library_path": "./libVkLayer_parameter_validation.so",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "LunarG Validation Layer",
"instance_extensions": [
diff --git a/layers/linux/VkLayer_standard_validation.json b/layers/linux/VkLayer_standard_validation.json
index 6b52306e..e5f52394 100644
--- a/layers/linux/VkLayer_standard_validation.json
+++ b/layers/linux/VkLayer_standard_validation.json
@@ -3,7 +3,7 @@
"layer": {
"name": "VK_LAYER_LUNARG_standard_validation",
"type": "GLOBAL",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "LunarG Standard Validation",
"component_layers": [
diff --git a/layers/linux/VkLayer_threading.json b/layers/linux/VkLayer_threading.json
index d48872ce..3fba647c 100644
--- a/layers/linux/VkLayer_threading.json
+++ b/layers/linux/VkLayer_threading.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_GOOGLE_threading",
"type": "GLOBAL",
"library_path": "./libVkLayer_threading.so",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "Google Validation Layer",
"instance_extensions": [
diff --git a/layers/linux/VkLayer_unique_objects.json b/layers/linux/VkLayer_unique_objects.json
index 2f9d95ca..f2bc92a9 100644
--- a/layers/linux/VkLayer_unique_objects.json
+++ b/layers/linux/VkLayer_unique_objects.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_GOOGLE_unique_objects",
"type": "GLOBAL",
"library_path": "./libVkLayer_unique_objects.so",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "Google Validation Layer"
}
diff --git a/layers/object_tracker.cpp b/layers/object_tracker.cpp
index 87903173..43ceaa11 100644
--- a/layers/object_tracker.cpp
+++ b/layers/object_tracker.cpp
@@ -4130,53 +4130,56 @@ VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetWithTemplateKHR(VkCommandBuffer c
}
}
-// VK_KHR_maintenance1 Extension
-VKAPI_ATTR void VKAPI_CALL TrimCommandPoolKHR(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags) {
- bool skip = VK_FALSE;
+// VK_KHR_external_fence_capabilities Extension
+VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalFencePropertiesKHR(
+ VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfoKHR *pExternalFenceInfo,
+ VkExternalFencePropertiesKHR *pExternalFenceProperties) {
+ bool skip = false;
+ {
std::unique_lock<std::mutex> lock(global_lock);
- skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
- skip |= ValidateObject(device, commandPool, kVulkanObjectTypeCommandPool, false, VALIDATION_ERROR_UNDEFINED,
+ skip |= ValidateObject(physicalDevice, physicalDevice, kVulkanObjectTypePhysicalDevice, false, VALIDATION_ERROR_UNDEFINED,
VALIDATION_ERROR_UNDEFINED);
- lock.unlock();
+ }
if (!skip) {
- layer_data *dev_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
- dev_data->dispatch_table.TrimCommandPoolKHR(device, commandPool, flags);
+ get_dispatch_table(ot_instance_table_map, physicalDevice)
+ ->GetPhysicalDeviceExternalFencePropertiesKHR(physicalDevice, pExternalFenceInfo, pExternalFenceProperties);
}
}
-// VK_KHR_push_descriptor Extension
-VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint,
- VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount,
- const VkWriteDescriptorSet *pDescriptorWrites) {
+// VK_KHR_external_memory_capabilities Extension
+VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalBufferPropertiesKHR(
+ VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfoKHR *pExternalBufferInfo,
+ VkExternalBufferPropertiesKHR *pExternalBufferProperties) {
bool skip = false;
+ {
std::unique_lock<std::mutex> lock(global_lock);
- skip |= ValidateObject(commandBuffer, commandBuffer, kVulkanObjectTypeCommandBuffer, false, VALIDATION_ERROR_UNDEFINED,
- VALIDATION_ERROR_UNDEFINED);
- skip |= ValidateObject(commandBuffer, layout, kVulkanObjectTypePipelineLayout, false, VALIDATION_ERROR_UNDEFINED,
+ skip |= ValidateObject(physicalDevice, physicalDevice, kVulkanObjectTypePhysicalDevice, false, VALIDATION_ERROR_UNDEFINED,
VALIDATION_ERROR_UNDEFINED);
- lock.unlock();
+ }
if (!skip) {
- get_dispatch_table(ot_device_table_map, commandBuffer)
- ->CmdPushDescriptorSetKHR(commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount, pDescriptorWrites);
+ get_dispatch_table(ot_instance_table_map, physicalDevice)
+ ->GetPhysicalDeviceExternalBufferPropertiesKHR(physicalDevice, pExternalBufferInfo, pExternalBufferProperties);
}
}
-// VK_KHX_device_group Extension
-VKAPI_ATTR void VKAPI_CALL GetDeviceGroupPeerMemoryFeaturesKHX(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex,
- uint32_t remoteDeviceIndex,
- VkPeerMemoryFeatureFlagsKHX *pPeerMemoryFeatures) {
+// VK_KHR_external_memory_fd Extension
+VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdKHR(VkDevice device, const VkMemoryGetFdInfoKHR *pGetFdInfo, int *pFd) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pGetFdInfo->memory, kVulkanObjectTypeDeviceMemory, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
lock.unlock();
- if (!skip) {
- get_dispatch_table(ot_device_table_map, device)
- ->GetDeviceGroupPeerMemoryFeaturesKHX(device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures);
+ if (skip) {
+ return VK_ERROR_VALIDATION_FAILED_EXT;
}
+ VkResult result = VK_SUCCESS;
+ result = get_dispatch_table(ot_device_table_map, device)->GetMemoryFdKHR(device, pGetFdInfo, pFd);
+ return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory2KHX(VkDevice device, uint32_t bindInfoCount,
- const VkBindBufferMemoryInfoKHX *pBindInfos) {
+VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdPropertiesKHR(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHR handleType, int fd,
+ VkMemoryFdPropertiesKHR *pMemoryFdProperties) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
@@ -4185,94 +4188,118 @@ VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory2KHX(VkDevice device, uint32_t bi
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->BindBufferMemory2KHX(device, bindInfoCount, pBindInfos);
+ result = get_dispatch_table(ot_device_table_map, device)->GetMemoryFdPropertiesKHR(device, handleType, fd, pMemoryFdProperties);
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL BindImageMemory2KHX(VkDevice device, uint32_t bindInfoCount,
- const VkBindImageMemoryInfoKHX *pBindInfos) {
+// VK_KHR_external_fence_fd extension
+
+VKAPI_ATTR VkResult VKAPI_CALL ImportFenceFdKHR(VkDevice device, const VkImportFenceFdInfoKHR *pImportFenceFdInfo) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pImportFenceFdInfo->fence, kVulkanObjectTypeFence, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
lock.unlock();
if (skip) {
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->BindImageMemory2KHX(device, bindInfoCount, pBindInfos);
+ result = get_dispatch_table(ot_device_table_map, device)->ImportFenceFdKHR(device, pImportFenceFdInfo);
return result;
}
-VKAPI_ATTR void VKAPI_CALL CmdSetDeviceMaskKHX(VkCommandBuffer commandBuffer, uint32_t deviceMask) {
+VKAPI_ATTR VkResult VKAPI_CALL GetFenceFdKHR(VkDevice device, const VkFenceGetFdInfoKHR *pGetFdInfo, int *pFd) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
- skip |= ValidateObject(commandBuffer, commandBuffer, kVulkanObjectTypeCommandBuffer, false, VALIDATION_ERROR_UNDEFINED,
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pGetFdInfo->fence, kVulkanObjectTypeFence, false, VALIDATION_ERROR_UNDEFINED,
VALIDATION_ERROR_UNDEFINED);
lock.unlock();
- if (!skip) {
- get_dispatch_table(ot_device_table_map, commandBuffer)->CmdSetDeviceMaskKHX(commandBuffer, deviceMask);
+ if (skip) {
+ return VK_ERROR_VALIDATION_FAILED_EXT;
}
+ VkResult result = VK_SUCCESS;
+ result = get_dispatch_table(ot_device_table_map, device)->GetFenceFdKHR(device, pGetFdInfo, pFd);
+ return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL
-GetDeviceGroupPresentCapabilitiesKHX(VkDevice device, VkDeviceGroupPresentCapabilitiesKHX *pDeviceGroupPresentCapabilities) {
+#ifdef VK_USE_PLATFORM_WIN32_KHR
+// VK_KHR_external_fence_win32 extension
+
+VKAPI_ATTR VkResult VKAPI_CALL ImportFenceWin32HandleKHR(VkDevice device,
+ const VkImportFenceWin32HandleInfoKHR *pImportFenceWin32HandleInfo) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pImportFenceWin32HandleInfo->fence, kVulkanObjectTypeFence, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
lock.unlock();
if (skip) {
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)
- ->GetDeviceGroupPresentCapabilitiesKHX(device, pDeviceGroupPresentCapabilities);
+ result = get_dispatch_table(ot_device_table_map, device)->ImportFenceWin32HandleKHR(device, pImportFenceWin32HandleInfo);
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupSurfacePresentModesKHX(VkDevice device, VkSurfaceKHR surface,
- VkDeviceGroupPresentModeFlagsKHX *pModes) {
+VKAPI_ATTR VkResult VKAPI_CALL GetFenceWin32HandleKHR(VkDevice device, const VkFenceGetWin32HandleInfoKHR *pGetWin32HandleInfo,
+ HANDLE *pHandle) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pGetWin32HandleInfo->fence, kVulkanObjectTypeFence, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
lock.unlock();
if (skip) {
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->GetDeviceGroupSurfacePresentModesKHX(device, surface, pModes);
+ result = get_dispatch_table(ot_device_table_map, device)->GetFenceWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL AcquireNextImage2KHX(VkDevice device, const VkAcquireNextImageInfoKHX *pAcquireInfo,
- uint32_t *pImageIndex) {
+#endif // VK_USE_PLATFORM_WIN32_KHR
+
+// VK_KHR_external_memory_win32 Extension
+#ifdef VK_USE_PLATFORM_WIN32_KHR
+VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandleKHR(VkDevice device, const VkMemoryGetWin32HandleInfoKHR *pGetWin32HandleInfo,
+ HANDLE *pHandle) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pGetWin32HandleInfo->memory, kVulkanObjectTypeDeviceMemory, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
lock.unlock();
if (skip) {
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->AcquireNextImage2KHX(device, pAcquireInfo, pImageIndex);
+ result = get_dispatch_table(ot_device_table_map, device)->GetMemoryWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
return result;
}
-VKAPI_ATTR void VKAPI_CALL CmdDispatchBaseKHX(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY,
- uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY,
- uint32_t groupCountZ) {
+VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandlePropertiesKHR(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHR handleType,
+ HANDLE handle,
+ VkMemoryWin32HandlePropertiesKHR *pMemoryWin32HandleProperties) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
- skip |= ValidateObject(commandBuffer, commandBuffer, kVulkanObjectTypeCommandBuffer, false, VALIDATION_ERROR_UNDEFINED,
- VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
lock.unlock();
- if (!skip) {
- get_dispatch_table(ot_device_table_map, commandBuffer)
- ->CmdDispatchBaseKHX(commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ);
+ if (skip) {
+ return VK_ERROR_VALIDATION_FAILED_EXT;
}
+ VkResult result = VK_SUCCESS;
+ result = get_dispatch_table(ot_device_table_map, device)
+ ->GetMemoryWin32HandlePropertiesKHR(device, handleType, handle, pMemoryWin32HandleProperties);
+ return result;
}
+#endif // VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR void VKAPI_CALL GetPhysicalDevicePresentRectanglesKHX(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface,
- uint32_t *pRectCount, VkRect2D *pRects) {
+// VK_KHR_external_semaphore_capabilities Extension
+VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfoKHR *pExternalSemaphoreInfo,
+ VkExternalSemaphorePropertiesKHR *pExternalSemaphoreProperties) {
bool skip = false;
{
std::unique_lock<std::mutex> lock(global_lock);
@@ -4281,109 +4308,183 @@ VKAPI_ATTR void VKAPI_CALL GetPhysicalDevicePresentRectanglesKHX(VkPhysicalDevic
}
if (!skip) {
get_dispatch_table(ot_instance_table_map, physicalDevice)
- ->GetPhysicalDevicePresentRectanglesKHX(physicalDevice, surface, pRectCount, pRects);
+ ->GetPhysicalDeviceExternalSemaphorePropertiesKHR(physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties);
}
}
-// VK_KHX_device_group_creation Extension
-VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDeviceGroupsKHX(
- VkInstance instance, uint32_t *pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupPropertiesKHX *pPhysicalDeviceGroupProperties) {
+// VK_KHR_external_semaphore_fd Extension
+VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreFdKHR(VkDevice device, const VkImportSemaphoreFdInfoKHR *pImportSemaphoreFdInfo) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
- skip |= ValidateObject(instance, instance, kVulkanObjectTypeInstance, false, VALIDATION_ERROR_UNDEFINED,
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ lock.unlock();
+ if (skip) {
+ return VK_ERROR_VALIDATION_FAILED_EXT;
+ }
+ VkResult result = VK_SUCCESS;
+ result = get_dispatch_table(ot_device_table_map, device)->ImportSemaphoreFdKHR(device, pImportSemaphoreFdInfo);
+ return result;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreFdKHR(VkDevice device, const VkSemaphoreGetFdInfoKHR *pGetFdInfo, int *pFd) {
+ bool skip = false;
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pGetFdInfo->semaphore, kVulkanObjectTypeSemaphore, false, VALIDATION_ERROR_UNDEFINED,
VALIDATION_ERROR_UNDEFINED);
lock.unlock();
if (skip) {
return VK_ERROR_VALIDATION_FAILED_EXT;
}
- VkResult result = get_dispatch_table(ot_instance_table_map, instance)
- ->EnumeratePhysicalDeviceGroupsKHX(instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties);
- {
- lock.lock();
- if (result == VK_SUCCESS) {
- if (nullptr != pPhysicalDeviceGroupProperties) {
- // NOTE: Each physical device should only appear in one group
- for (uint32_t i = 0; i < *pPhysicalDeviceGroupCount; i++) {
- for (uint32_t j = 0; j < pPhysicalDeviceGroupProperties[i].physicalDeviceCount; j++) {
- CreateObject(instance, pPhysicalDeviceGroupProperties[i].physicalDevices[j],
- kVulkanObjectTypePhysicalDevice, nullptr);
+ VkResult result = VK_SUCCESS;
+ result = get_dispatch_table(ot_device_table_map, device)->GetSemaphoreFdKHR(device, pGetFdInfo, pFd);
+ return result;
}
+
+// VK_KHR_external_semaphore_win32 Extension
+#ifdef VK_USE_PLATFORM_WIN32_KHR
+VKAPI_ATTR VkResult VKAPI_CALL
+ImportSemaphoreWin32HandleKHR(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR *pImportSemaphoreWin32HandleInfo) {
+ bool skip = false;
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pImportSemaphoreWin32HandleInfo->semaphore, kVulkanObjectTypeSemaphore, false,
+ VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ lock.unlock();
+ if (skip) {
+ return VK_ERROR_VALIDATION_FAILED_EXT;
}
+ VkResult result = VK_SUCCESS;
+ result =
+ get_dispatch_table(ot_device_table_map, device)->ImportSemaphoreWin32HandleKHR(device, pImportSemaphoreWin32HandleInfo);
+ return result;
}
- }
+
+VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreWin32HandleKHR(VkDevice device,
+ const VkSemaphoreGetWin32HandleInfoKHR *pGetWin32HandleInfo,
+ HANDLE *pHandle) {
+ bool skip = false;
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pGetWin32HandleInfo->semaphore, kVulkanObjectTypeSemaphore, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
lock.unlock();
+ if (skip) {
+ return VK_ERROR_VALIDATION_FAILED_EXT;
}
+ VkResult result = VK_SUCCESS;
+ result = get_dispatch_table(ot_device_table_map, device)->GetSemaphoreWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
return result;
}
+#endif // VK_USE_PLATFORM_WIN32_KHR
-// VK_KHX_external_memory_capabilities Extension
-VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalBufferPropertiesKHX(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfoKHX *pExternalBufferInfo,
- VkExternalBufferPropertiesKHX *pExternalBufferProperties) {
- bool skip = false;
- {
- std::unique_lock<std::mutex> lock(global_lock);
- skip |= ValidateObject(physicalDevice, physicalDevice, kVulkanObjectTypePhysicalDevice, false, VALIDATION_ERROR_UNDEFINED,
- VALIDATION_ERROR_UNDEFINED);
+// VK_KHR_get_memory_requirements2
+VKAPI_ATTR void VKAPI_CALL GetImageMemoryRequirements2KHR(VkDevice device, const VkImageMemoryRequirementsInfo2KHR *pInfo,
+ VkMemoryRequirements2KHR *pMemoryRequirements) {
+ bool skip = VK_FALSE;
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |=
+ ValidateObject(device, pInfo->image, kVulkanObjectTypeImage, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ lock.unlock();
+ if (!skip) {
+ layer_data *dev_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ dev_data->dispatch_table.GetImageMemoryRequirements2KHR(device, pInfo, pMemoryRequirements);
}
+}
+
+VKAPI_ATTR void VKAPI_CALL GetBufferMemoryRequirements2KHR(VkDevice device, const VkBufferMemoryRequirementsInfo2KHR *pInfo,
+ VkMemoryRequirements2KHR *pMemoryRequirements) {
+ bool skip = VK_FALSE;
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, pInfo->buffer, kVulkanObjectTypeBuffer, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
+ lock.unlock();
if (!skip) {
- get_dispatch_table(ot_instance_table_map, physicalDevice)
- ->GetPhysicalDeviceExternalBufferPropertiesKHX(physicalDevice, pExternalBufferInfo, pExternalBufferProperties);
+ layer_data *dev_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ dev_data->dispatch_table.GetBufferMemoryRequirements2KHR(device, pInfo, pMemoryRequirements);
}
}
-// VK_KHX_external_memory_fd Extension
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdKHX(VkDevice device, VkDeviceMemory memory,
- VkExternalMemoryHandleTypeFlagBitsKHX handleType, int *pFd) {
- bool skip = false;
+VKAPI_ATTR void VKAPI_CALL GetImageSparseMemoryRequirements2KHR(VkDevice device,
+ const VkImageSparseMemoryRequirementsInfo2KHR *pInfo,
+ uint32_t *pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements2KHR *pSparseMemoryRequirements) {
+ bool skip = VK_FALSE;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
- skip |= ValidateObject(device, memory, kVulkanObjectTypeDeviceMemory, false, VALIDATION_ERROR_UNDEFINED,
+ skip |=
+ ValidateObject(device, pInfo->image, kVulkanObjectTypeImage, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ lock.unlock();
+ if (!skip) {
+ layer_data *dev_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ dev_data->dispatch_table.GetImageSparseMemoryRequirements2KHR(device, pInfo, pSparseMemoryRequirementCount,
+ pSparseMemoryRequirements);
+ }
+}
+
+// VK_KHR_maintenance1 Extension
+VKAPI_ATTR void VKAPI_CALL TrimCommandPoolKHR(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags) {
+ bool skip = VK_FALSE;
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(device, commandPool, kVulkanObjectTypeCommandPool, false, VALIDATION_ERROR_UNDEFINED,
VALIDATION_ERROR_UNDEFINED);
lock.unlock();
- if (skip) {
- return VK_ERROR_VALIDATION_FAILED_EXT;
+ if (!skip) {
+ layer_data *dev_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ dev_data->dispatch_table.TrimCommandPoolKHR(device, commandPool, flags);
}
- VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->GetMemoryFdKHX(device, memory, handleType, pFd);
- return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdPropertiesKHX(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHX handleType, int fd,
- VkMemoryFdPropertiesKHX *pMemoryFdProperties) {
+// VK_KHR_push_descriptor Extension
+VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint,
+ VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount,
+ const VkWriteDescriptorSet *pDescriptorWrites) {
+ bool skip = false;
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(commandBuffer, commandBuffer, kVulkanObjectTypeCommandBuffer, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(commandBuffer, layout, kVulkanObjectTypePipelineLayout, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
+ lock.unlock();
+ if (!skip) {
+ get_dispatch_table(ot_device_table_map, commandBuffer)
+ ->CmdPushDescriptorSetKHR(commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount, pDescriptorWrites);
+ }
+}
+
+// VK_KHX_device_group Extension
+VKAPI_ATTR void VKAPI_CALL GetDeviceGroupPeerMemoryFeaturesKHX(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ VkPeerMemoryFeatureFlagsKHX *pPeerMemoryFeatures) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
lock.unlock();
- if (skip) {
- return VK_ERROR_VALIDATION_FAILED_EXT;
+ if (!skip) {
+ get_dispatch_table(ot_device_table_map, device)
+ ->GetDeviceGroupPeerMemoryFeaturesKHX(device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures);
}
- VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->GetMemoryFdPropertiesKHX(device, handleType, fd, pMemoryFdProperties);
- return result;
}
-// VK_KHX_external_memory_win32 Extension
-#ifdef VK_USE_PLATFORM_WIN32_KHX
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandleKHX(VkDevice device, VkDeviceMemory memory,
- VkExternalMemoryHandleTypeFlagBitsKHX handleType, HANDLE *pHandle) {
+VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory2KHX(VkDevice device, uint32_t bindInfoCount,
+ const VkBindBufferMemoryInfoKHX *pBindInfos) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
- skip |= ValidateObject(device, memory, kVulkanObjectTypeDeviceMemory, false, VALIDATION_ERROR_UNDEFINED,
- VALIDATION_ERROR_UNDEFINED);
lock.unlock();
if (skip) {
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->GetMemoryWin32HandleKHX(device, memory, handleType, pHandle);
+ result = get_dispatch_table(ot_device_table_map, device)->BindBufferMemory2KHX(device, bindInfoCount, pBindInfos);
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandlePropertiesKHX(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHX handleType,
- HANDLE handle,
- VkMemoryWin32HandlePropertiesKHX *pMemoryWin32HandleProperties) {
+VKAPI_ATTR VkResult VKAPI_CALL BindImageMemory2KHX(VkDevice device, uint32_t bindInfoCount,
+ const VkBindImageMemoryInfoKHX *pBindInfos) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
@@ -4392,30 +4493,23 @@ VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandlePropertiesKHX(VkDevice device
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)
- ->GetMemoryWin32HandlePropertiesKHX(device, handleType, handle, pMemoryWin32HandleProperties);
+ result = get_dispatch_table(ot_device_table_map, device)->BindImageMemory2KHX(device, bindInfoCount, pBindInfos);
return result;
}
-#endif // VK_USE_PLATFORM_WIN32_KHX
-// VK_KHX_external_semaphore_capabilities Extension
-VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalSemaphorePropertiesKHX(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfoKHX *pExternalSemaphoreInfo,
- VkExternalSemaphorePropertiesKHX *pExternalSemaphoreProperties) {
+VKAPI_ATTR void VKAPI_CALL CmdSetDeviceMaskKHX(VkCommandBuffer commandBuffer, uint32_t deviceMask) {
bool skip = false;
- {
std::unique_lock<std::mutex> lock(global_lock);
- skip |= ValidateObject(physicalDevice, physicalDevice, kVulkanObjectTypePhysicalDevice, false, VALIDATION_ERROR_UNDEFINED,
+ skip |= ValidateObject(commandBuffer, commandBuffer, kVulkanObjectTypeCommandBuffer, false, VALIDATION_ERROR_UNDEFINED,
VALIDATION_ERROR_UNDEFINED);
- }
+ lock.unlock();
if (!skip) {
- get_dispatch_table(ot_instance_table_map, physicalDevice)
- ->GetPhysicalDeviceExternalSemaphorePropertiesKHX(physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties);
+ get_dispatch_table(ot_device_table_map, commandBuffer)->CmdSetDeviceMaskKHX(commandBuffer, deviceMask);
}
}
-// VK_KHX_external_semaphore_fd Extension
-VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreFdKHX(VkDevice device, const VkImportSemaphoreFdInfoKHX *pImportSemaphoreFdInfo) {
+VKAPI_ATTR VkResult VKAPI_CALL
+GetDeviceGroupPresentCapabilitiesKHX(VkDevice device, VkDeviceGroupPresentCapabilitiesKHX *pDeviceGroupPresentCapabilities) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
@@ -4424,12 +4518,13 @@ VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreFdKHX(VkDevice device, const VkImp
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->ImportSemaphoreFdKHX(device, pImportSemaphoreFdInfo);
+ result = get_dispatch_table(ot_device_table_map, device)
+ ->GetDeviceGroupPresentCapabilitiesKHX(device, pDeviceGroupPresentCapabilities);
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreFdKHX(VkDevice device, VkSemaphore semaphore,
- VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, int *pFd) {
+VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupSurfacePresentModesKHX(VkDevice device, VkSurfaceKHR surface,
+ VkDeviceGroupPresentModeFlagsKHX *pModes) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
@@ -4438,14 +4533,12 @@ VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreFdKHX(VkDevice device, VkSemaphore se
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->GetSemaphoreFdKHX(device, semaphore, handleType, pFd);
+ result = get_dispatch_table(ot_device_table_map, device)->GetDeviceGroupSurfacePresentModesKHX(device, surface, pModes);
return result;
}
-// VK_KHX_external_semaphore_win32 Extension
-#ifdef VK_USE_PLATFORM_WIN32_KHX
-VKAPI_ATTR VkResult VKAPI_CALL
-ImportSemaphoreWin32HandleKHX(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHX *pImportSemaphoreWin32HandleInfo) {
+VKAPI_ATTR VkResult VKAPI_CALL AcquireNextImage2KHX(VkDevice device, const VkAcquireNextImageInfoKHX *pAcquireInfo,
+ uint32_t *pImageIndex) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
@@ -4454,25 +4547,68 @@ ImportSemaphoreWin32HandleKHX(VkDevice device, const VkImportSemaphoreWin32Handl
return VK_ERROR_VALIDATION_FAILED_EXT;
}
VkResult result = VK_SUCCESS;
- result =
- get_dispatch_table(ot_device_table_map, device)->ImportSemaphoreWin32HandleKHX(device, pImportSemaphoreWin32HandleInfo);
+ result = get_dispatch_table(ot_device_table_map, device)->AcquireNextImage2KHX(device, pAcquireInfo, pImageIndex);
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreWin32HandleKHX(VkDevice device, VkSemaphore semaphore,
- VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, HANDLE *pHandle) {
+VKAPI_ATTR void VKAPI_CALL CmdDispatchBaseKHX(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY,
+ uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY,
+ uint32_t groupCountZ) {
bool skip = false;
std::unique_lock<std::mutex> lock(global_lock);
- skip |= ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(commandBuffer, commandBuffer, kVulkanObjectTypeCommandBuffer, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
+ lock.unlock();
+ if (!skip) {
+ get_dispatch_table(ot_device_table_map, commandBuffer)
+ ->CmdDispatchBaseKHX(commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ);
+ }
+}
+
+VKAPI_ATTR void VKAPI_CALL GetPhysicalDevicePresentRectanglesKHX(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface,
+ uint32_t *pRectCount, VkRect2D *pRects) {
+ bool skip = false;
+ {
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(physicalDevice, physicalDevice, kVulkanObjectTypePhysicalDevice, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
+ }
+ if (!skip) {
+ get_dispatch_table(ot_instance_table_map, physicalDevice)
+ ->GetPhysicalDevicePresentRectanglesKHX(physicalDevice, surface, pRectCount, pRects);
+ }
+}
+
+// VK_KHX_device_group_creation Extension
+VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDeviceGroupsKHX(
+ VkInstance instance, uint32_t *pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupPropertiesKHX *pPhysicalDeviceGroupProperties) {
+ bool skip = false;
+ std::unique_lock<std::mutex> lock(global_lock);
+ skip |= ValidateObject(instance, instance, kVulkanObjectTypeInstance, false, VALIDATION_ERROR_UNDEFINED,
+ VALIDATION_ERROR_UNDEFINED);
lock.unlock();
if (skip) {
return VK_ERROR_VALIDATION_FAILED_EXT;
}
- VkResult result = VK_SUCCESS;
- result = get_dispatch_table(ot_device_table_map, device)->GetSemaphoreWin32HandleKHX(device, semaphore, handleType, pHandle);
+ VkResult result = get_dispatch_table(ot_instance_table_map, instance)
+ ->EnumeratePhysicalDeviceGroupsKHX(instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties);
+ {
+ lock.lock();
+ if (result == VK_SUCCESS) {
+ if (nullptr != pPhysicalDeviceGroupProperties) {
+ // NOTE: Each physical device should only appear in one group
+ for (uint32_t i = 0; i < *pPhysicalDeviceGroupCount; i++) {
+ for (uint32_t j = 0; j < pPhysicalDeviceGroupProperties[i].physicalDeviceCount; j++) {
+ CreateObject(instance, pPhysicalDeviceGroupProperties[i].physicalDevices[j],
+ kVulkanObjectTypePhysicalDevice, nullptr);
+ }
+ }
+ }
+ }
+ lock.unlock();
+ }
return result;
}
-#endif // VK_USE_PLATFORM_WIN32_KHX
// VK_EXT_acquire_xlib_display Extension
#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
@@ -5030,6 +5166,8 @@ VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceFormats2KHR(VkPhysicalDev
std::lock_guard<std::mutex> lock(global_lock);
skip |= ValidateObject(physicalDevice, physicalDevice, kVulkanObjectTypePhysicalDevice, false, VALIDATION_ERROR_2e827a01,
VALIDATION_ERROR_UNDEFINED);
+ skip |= ValidateObject(physicalDevice, pSurfaceInfo->surface, kVulkanObjectTypeSurfaceKHR, false,
+ VALIDATION_ERROR_UNDEFINED, VALIDATION_ERROR_UNDEFINED);
}
if (skip) {
return VK_ERROR_VALIDATION_FAILED_EXT;
@@ -5194,8 +5332,8 @@ static const std::unordered_map<std::string, void*> name_to_funcptr_map = {
{"vkGetPhysicalDeviceQueueFamilyProperties2KHR", (void*)GetPhysicalDeviceQueueFamilyProperties2KHR},
{"vkGetPhysicalDevicePresentRectanglesKHX", (void*)GetPhysicalDevicePresentRectanglesKHX},
{"vkEnumeratePhysicalDeviceGroupsKHX", (void*)EnumeratePhysicalDeviceGroupsKHX},
- {"vkGetPhysicalDeviceExternalBufferPropertiesKHX", (void*)GetPhysicalDeviceExternalBufferPropertiesKHX},
- {"vkGetPhysicalDeviceExternalSemaphorePropertiesKHX", (void*)GetPhysicalDeviceExternalSemaphorePropertiesKHX},
+ {"vkGetPhysicalDeviceExternalBufferPropertiesKHR", (void*)GetPhysicalDeviceExternalBufferPropertiesKHR},
+ {"vkGetPhysicalDeviceExternalSemaphorePropertiesKHR", (void*)GetPhysicalDeviceExternalSemaphorePropertiesKHR},
{"vkReleaseDisplayEXT", (void*)ReleaseDisplayEXT},
{"vkGetPhysicalDeviceSurfaceCapabilities2EXT", (void*)GetPhysicalDeviceSurfaceCapabilities2EXT},
{"vkCmdSetViewportWScalingNV", (void*)CmdSetViewportWScalingNV},
@@ -5214,10 +5352,10 @@ static const std::unordered_map<std::string, void*> name_to_funcptr_map = {
{"vkGetDeviceGroupSurfacePresentModesKHX", (void*)GetDeviceGroupSurfacePresentModesKHX},
{"vkAcquireNextImage2KHX", (void*)AcquireNextImage2KHX},
{"vkCmdDispatchBaseKHX", (void*)CmdDispatchBaseKHX},
- {"vkGetMemoryFdKHX", (void*)GetMemoryFdKHX},
- {"vkGetMemoryFdPropertiesKHX", (void*)GetMemoryFdPropertiesKHX},
- {"vkImportSemaphoreFdKHX", (void*)ImportSemaphoreFdKHX},
- {"vkGetSemaphoreFdKHX", (void*)GetSemaphoreFdKHX},
+ {"vkGetMemoryFdKHR", (void*)GetMemoryFdKHR},
+ {"vkGetMemoryFdPropertiesKHR", (void*)GetMemoryFdPropertiesKHR},
+ {"vkImportSemaphoreFdKHR", (void*)ImportSemaphoreFdKHR},
+ {"vkGetSemaphoreFdKHR", (void*)GetSemaphoreFdKHR},
{"vkCmdSetDiscardRectangleEXT", (void*)CmdSetDiscardRectangleEXT},
{"vkDisplayPowerControlEXT", (void*)DisplayPowerControlEXT},
{"vkRegisterDeviceEventEXT", (void*)RegisterDeviceEventEXT},
@@ -5255,20 +5393,25 @@ static const std::unordered_map<std::string, void*> name_to_funcptr_map = {
{"vkCreateDebugReportCallbackEXT", (void*)CreateDebugReportCallbackEXT},
{"vkDestroyDebugReportCallbackEXT", (void*)DestroyDebugReportCallbackEXT},
{"vkDebugReportMessageEXT", (void*)DebugReportMessageEXT},
+ {"vkGetPhysicalDeviceExternalFencePropertiesKHR", (void*)GetPhysicalDeviceExternalFencePropertiesKHR},
+ {"vkImportFenceFdKHR", (void*)ImportFenceFdKHR},
+ {"vkGetFenceFdKHR", (void*)GetFenceFdKHR},
+ {"vkGetBufferMemoryRequirements2KHR", (void*)GetBufferMemoryRequirements2KHR},
+ {"vkGetImageSparseMemoryRequirements2KHR", (void*)GetImageSparseMemoryRequirements2KHR},
#ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
{"vkAcquireXlibDisplayEXT", (void*)AcquireXlibDisplayEXT},
{"vkGetRandROutputDisplayEXT", (void*)GetRandROutputDisplayEXT},
#endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
-#ifdef VK_USE_PLATFORM_WIN32_KHX
- {"vkGetMemoryWin32HandleKHX", (void*)GetMemoryWin32HandleKHX},
- {"vkGetMemoryWin32HandlePropertiesKHX", (void*)GetMemoryWin32HandlePropertiesKHX},
- {"vkImportSemaphoreWin32HandleKHX", (void*)ImportSemaphoreWin32HandleKHX},
- {"vkGetSemaphoreWin32HandleKHX", (void*)GetSemaphoreWin32HandleKHX},
-#endif
#ifdef VK_USE_PLATFORM_WIN32_KHR
{"vkCreateWin32SurfaceKHR", (void*)CreateWin32SurfaceKHR},
{"vkGetPhysicalDeviceWin32PresentationSupportKHR", (void*)GetPhysicalDeviceWin32PresentationSupportKHR},
{"vkGetMemoryWin32HandleNV", (void*)GetMemoryWin32HandleNV},
+ {"vkImportFenceWin32HandleKHR", (void*)ImportFenceWin32HandleKHR},
+ {"vkGetFenceWin32HandleKHR", (void*)GetFenceWin32HandleKHR},
+ {"vkGetMemoryWin32HandleKHR", (void*)GetMemoryWin32HandleKHR},
+ {"vkGetMemoryWin32HandlePropertiesKHR", (void*)GetMemoryWin32HandlePropertiesKHR},
+ {"vkImportSemaphoreWin32HandleKHR", (void*)ImportSemaphoreWin32HandleKHR},
+ {"vkGetSemaphoreWin32HandleKHR", (void*)GetSemaphoreWin32HandleKHR},
#endif // VK_USE_PLATFORM_WIN32_KHR
#ifdef VK_USE_PLATFORM_XCB_KHR
{"vkCreateXcbSurfaceKHR", (void*)CreateXcbSurfaceKHR},
diff --git a/layers/parameter_validation.cpp b/layers/parameter_validation.cpp
index c933a595..e5a12941 100644
--- a/layers/parameter_validation.cpp
+++ b/layers/parameter_validation.cpp
@@ -4665,6 +4665,115 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateDisplayPlaneSurfaceKHR(VkInstance instance,
return result;
}
+// Definitions for the VK_KHR_descriptor_update_template extension
+
+VKAPI_ATTR VkResult VKAPI_CALL CreateDescriptorUpdateTemplateKHR(VkDevice device,
+ const VkDescriptorUpdateTemplateCreateInfoKHR *pCreateInfo,
+ const VkAllocationCallbacks *pAllocator,
+ VkDescriptorUpdateTemplateKHR *pDescriptorUpdateTemplate) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
+
+ skip |= parameter_validation_vkCreateDescriptorUpdateTemplateKHR(my_data, pCreateInfo, pAllocator, pDescriptorUpdateTemplate);
+
+ if (!skip) {
+ result =
+ my_data->dispatch_table.CreateDescriptorUpdateTemplateKHR(device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate);
+ validate_result(my_data->report_data, "vkCreateDescriptorUpdateTemplateKHR", {}, result);
+ }
+
+ return result;
+}
+
+VKAPI_ATTR void VKAPI_CALL DestroyDescriptorUpdateTemplateKHR(VkDevice device,
+ VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,
+ const VkAllocationCallbacks *pAllocator) {
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
+
+ skip |= parameter_validation_vkDestroyDescriptorUpdateTemplateKHR(my_data, descriptorUpdateTemplate, pAllocator);
+
+ if (!skip) {
+ my_data->dispatch_table.DestroyDescriptorUpdateTemplateKHR(device, descriptorUpdateTemplate, pAllocator);
+ }
+}
+
+VKAPI_ATTR void VKAPI_CALL UpdateDescriptorSetWithTemplateKHR(VkDevice device, VkDescriptorSet descriptorSet,
+ VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,
+ const void *pData) {
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
+
+ skip |= parameter_validation_vkUpdateDescriptorSetWithTemplateKHR(my_data, descriptorSet, descriptorUpdateTemplate, pData);
+
+ if (!skip) {
+ my_data->dispatch_table.UpdateDescriptorSetWithTemplateKHR(device, descriptorSet, descriptorUpdateTemplate, pData);
+ }
+}
+
+VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetWithTemplateKHR(VkCommandBuffer commandBuffer,
+ VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,
+ VkPipelineLayout layout, uint32_t set, const void *pData) {
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map);
+ assert(my_data != NULL);
+
+ skip |= parameter_validation_vkCmdPushDescriptorSetWithTemplateKHR(my_data, descriptorUpdateTemplate, layout, set, pData);
+
+ if (!skip) {
+ my_data->dispatch_table.CmdPushDescriptorSetWithTemplateKHR(commandBuffer, descriptorUpdateTemplate, layout, set, pData);
+ }
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL GetSwapchainStatusKHR(VkDevice device, VkSwapchainKHR swapchain) {
+ bool skip = false;
+ layer_data *dev_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+
+ skip = parameter_validation_vkGetSwapchainStatusKHR(dev_data, swapchain);
+
+ if (!skip) {
+ result = dev_data->dispatch_table.GetSwapchainStatusKHR(device, swapchain);
+ }
+ return result;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceCapabilities2KHR(VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
+ VkSurfaceCapabilities2KHR *pSurfaceCapabilities) {
+ bool skip = false;
+ instance_layer_data *instance_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+
+ skip = parameter_validation_vkGetPhysicalDeviceSurfaceCapabilities2KHR(instance_data, pSurfaceInfo, pSurfaceCapabilities);
+
+ if (!skip) {
+ result = instance_data->dispatch_table.GetPhysicalDeviceSurfaceCapabilities2KHR(physicalDevice, pSurfaceInfo,
+ pSurfaceCapabilities);
+ }
+ return result;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceFormats2KHR(VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
+ uint32_t *pSurfaceFormatCount,
+ VkSurfaceFormat2KHR *pSurfaceFormats) {
+ bool skip = false;
+ instance_layer_data *instance_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+ skip = parameter_validation_vkGetPhysicalDeviceSurfaceFormats2KHR(instance_data, pSurfaceInfo, pSurfaceFormatCount,
+ pSurfaceFormats);
+ if (!skip) {
+ result = instance_data->dispatch_table.GetPhysicalDeviceSurfaceFormats2KHR(physicalDevice, pSurfaceInfo,
+ pSurfaceFormatCount, pSurfaceFormats);
+ }
+ return result;
+}
+
// Definitions for the VK_KHR_get_physical_device_properties2 extension
VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFeatures2KHR(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2KHR *pFeatures) {
@@ -4794,493 +4903,511 @@ VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceSparseImageFormatProperties2KHR(
}
}
-// Definitions for the VK_KHR_maintenance1 extension
+// Definitions for the VK_KHR_external_fence_capabilities extension
-VKAPI_ATTR void VKAPI_CALL TrimCommandPoolKHR(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags) {
+VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalFencePropertiesKHR(
+ VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfoKHR *pExternalFenceInfo,
+ VkExternalFencePropertiesKHR *pExternalFenceProperties) {
+ auto my_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
+ assert(my_data != NULL);
+ bool skip = false;
+ skip |=
+ parameter_validation_vkGetPhysicalDeviceExternalFencePropertiesKHR(my_data, pExternalFenceInfo, pExternalFenceProperties);
+ if (!skip) {
+ my_data->dispatch_table.GetPhysicalDeviceExternalFencePropertiesKHR(physicalDevice, pExternalFenceInfo,
+ pExternalFenceProperties);
+ }
+}
+
+// Definitions for the VK_KHR_external_fence_fd extension
+
+VKAPI_ATTR VkResult VKAPI_CALL ImportFenceFdKHR(VkDevice device, const VkImportFenceFdInfoKHR *pImportFenceFdInfo) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkTrimCommandPoolKHR(my_data, commandPool, flags);
+ skip |= parameter_validation_vkImportFenceFdKHR(my_data, pImportFenceFdInfo);
if (!skip) {
- my_data->dispatch_table.TrimCommandPoolKHR(device, commandPool, flags);
+ result = my_data->dispatch_table.ImportFenceFdKHR(device, pImportFenceFdInfo);
+ validate_result(my_data->report_data, "vkImportFenceFdKHR", {}, result);
}
-}
-// Definitions for the VK_KHR_push_descriptor extension
+ return result;
+}
-VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint,
- VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount,
- const VkWriteDescriptorSet *pDescriptorWrites) {
+VKAPI_ATTR VkResult VKAPI_CALL GetFenceFdKHR(VkDevice device, const VkFenceGetFdInfoKHR *pGetFdInfo, int *pFd) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
- auto my_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkCmdPushDescriptorSetKHR(my_data, pipelineBindPoint, layout, set,
- descriptorWriteCount, pDescriptorWrites);
+ skip |= parameter_validation_vkGetFenceFdKHR(my_data, pGetFdInfo, pFd);
if (!skip) {
- my_data->dispatch_table.CmdPushDescriptorSetKHR(commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount,
- pDescriptorWrites);
+ result = my_data->dispatch_table.GetFenceFdKHR(device, pGetFdInfo, pFd);
+ validate_result(my_data->report_data, "vkGetFenceFdKHR", {}, result);
}
+
+ return result;
}
-// Definitions for the VK_KHR_descriptor_update_template extension
+#ifdef VK_USE_PLATFORM_WIN32_KHR
+// Definitions for the VK_KHR_external_fence_win32 extension
-VKAPI_ATTR VkResult VKAPI_CALL CreateDescriptorUpdateTemplateKHR(VkDevice device,
- const VkDescriptorUpdateTemplateCreateInfoKHR *pCreateInfo,
- const VkAllocationCallbacks *pAllocator,
- VkDescriptorUpdateTemplateKHR *pDescriptorUpdateTemplate) {
+VKAPI_ATTR VkResult VKAPI_CALL ImportFenceWin32HandleKHR(VkDevice device,
+ const VkImportFenceWin32HandleInfoKHR *pImportFenceWin32HandleInfo) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkCreateDescriptorUpdateTemplateKHR(my_data, pCreateInfo, pAllocator,
- pDescriptorUpdateTemplate);
+ skip |= parameter_validation_vkImportFenceWin32HandleKHR(my_data, pImportFenceWin32HandleInfo);
if (!skip) {
- result =
- my_data->dispatch_table.CreateDescriptorUpdateTemplateKHR(device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate);
- validate_result(my_data->report_data, "vkCreateDescriptorUpdateTemplateKHR", {}, result);
+ result = my_data->dispatch_table.ImportFenceWin32HandleKHR(device, pImportFenceWin32HandleInfo);
+ validate_result(my_data->report_data, "vkImportFenceWin32HandleKHR", {}, result);
}
return result;
}
-VKAPI_ATTR void VKAPI_CALL DestroyDescriptorUpdateTemplateKHR(VkDevice device,
- VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,
- const VkAllocationCallbacks *pAllocator) {
+VKAPI_ATTR VkResult VKAPI_CALL GetFenceWin32HandleKHR(VkDevice device, const VkFenceGetWin32HandleInfoKHR *pGetWin32HandleInfo,
+ HANDLE *pHandle) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkDestroyDescriptorUpdateTemplateKHR(my_data, descriptorUpdateTemplate, pAllocator);
+ skip |= parameter_validation_vkGetFenceWin32HandleKHR(my_data, pGetWin32HandleInfo, pHandle);
if (!skip) {
- my_data->dispatch_table.DestroyDescriptorUpdateTemplateKHR(device, descriptorUpdateTemplate, pAllocator);
+ result = my_data->dispatch_table.GetFenceWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
+ validate_result(my_data->report_data, "vkGetFenceWin32HandleKHR", {}, result);
}
+
+ return result;
}
+#endif // VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR void VKAPI_CALL UpdateDescriptorSetWithTemplateKHR(VkDevice device, VkDescriptorSet descriptorSet,
- VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,
- const void *pData) {
+// Definitions for the VK_KHR_external_memory_capabilities extension
+
+VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalBufferPropertiesKHR(
+ VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfoKHR *pExternalBufferInfo,
+ VkExternalBufferPropertiesKHR *pExternalBufferProperties) {
+ auto my_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
+ assert(my_data != NULL);
+ bool skip = false;
+ skip |= parameter_validation_vkGetPhysicalDeviceExternalBufferPropertiesKHR(my_data, pExternalBufferInfo,
+ pExternalBufferProperties);
+ if (!skip) {
+ my_data->dispatch_table.GetPhysicalDeviceExternalBufferPropertiesKHR(physicalDevice, pExternalBufferInfo,
+ pExternalBufferProperties);
+ }
+}
+
+// Definitions for the VK_KHR_external_memory_fd extension
+
+VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdKHR(VkDevice device, const VkMemoryGetFdInfoKHR* pGetFdInfo, int *pFd) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkUpdateDescriptorSetWithTemplateKHR(my_data, descriptorSet, descriptorUpdateTemplate,
- pData);
+ skip |= parameter_validation_vkGetMemoryFdKHR(my_data, pGetFdInfo, pFd);
if (!skip) {
- my_data->dispatch_table.UpdateDescriptorSetWithTemplateKHR(device, descriptorSet, descriptorUpdateTemplate, pData);
+ result = my_data->dispatch_table.GetMemoryFdKHR(device, pGetFdInfo, pFd);
+ validate_result(my_data->report_data, "vkGetMemoryFdKHR", {}, result);
}
+
+ return result;
}
-VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetWithTemplateKHR(VkCommandBuffer commandBuffer,
- VkDescriptorUpdateTemplateKHR descriptorUpdateTemplate,
- VkPipelineLayout layout, uint32_t set, const void *pData) {
+VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdPropertiesKHR(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHR handleType, int fd,
+ VkMemoryFdPropertiesKHR *pMemoryFdProperties) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
- auto my_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkCmdPushDescriptorSetWithTemplateKHR(my_data, descriptorUpdateTemplate, layout, set,
- pData);
+ skip |= parameter_validation_vkGetMemoryFdPropertiesKHR(my_data, handleType, fd, pMemoryFdProperties);
if (!skip) {
- my_data->dispatch_table.CmdPushDescriptorSetWithTemplateKHR(commandBuffer, descriptorUpdateTemplate, layout, set, pData);
+ result = my_data->dispatch_table.GetMemoryFdPropertiesKHR(device, handleType, fd, pMemoryFdProperties);
+ validate_result(my_data->report_data, "vkGetMemoryFdPropertiesKHR", {}, result);
}
+
+ return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetSwapchainStatusKHR(VkDevice device, VkSwapchainKHR swapchain) {
- bool skip = false;
- layer_data *dev_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+// Definitions for the VK_KHR_external_memory_win32 extension
+
+#ifdef VK_USE_PLATFORM_WIN32_KHR
+VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandleKHR(VkDevice device, const VkMemoryGetWin32HandleInfoKHR *pGetWin32HandleInfo,
+ HANDLE *pHandle) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
- skip = parameter_validation_vkGetSwapchainStatusKHR(dev_data, swapchain);
+ skip |= parameter_validation_vkGetMemoryWin32HandleKHR(my_data, pGetWin32HandleInfo, pHandle);
if (!skip) {
- result = dev_data->dispatch_table.GetSwapchainStatusKHR(device, swapchain);
+ result = my_data->dispatch_table.GetMemoryWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
+ validate_result(my_data->report_data, "vkGetMemoryWin32HandleKHR", {}, result);
}
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceCapabilities2KHR(VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
- VkSurfaceCapabilities2KHR *pSurfaceCapabilities) {
- bool skip = false;
- instance_layer_data *instance_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
+VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandlePropertiesKHR(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHR handleType,
+ HANDLE handle,
+ VkMemoryWin32HandlePropertiesKHR *pMemoryWin32HandleProperties) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
- skip = parameter_validation_vkGetPhysicalDeviceSurfaceCapabilities2KHR(instance_data, pSurfaceInfo,
- pSurfaceCapabilities);
+ skip |= parameter_validation_vkGetMemoryWin32HandlePropertiesKHR(my_data, handleType, handle, pMemoryWin32HandleProperties);
if (!skip) {
- result = instance_data->dispatch_table.GetPhysicalDeviceSurfaceCapabilities2KHR(physicalDevice, pSurfaceInfo,
- pSurfaceCapabilities);
+ result =
+ my_data->dispatch_table.GetMemoryWin32HandlePropertiesKHR(device, handleType, handle, pMemoryWin32HandleProperties);
+ validate_result(my_data->report_data, "vkGetMemoryWin32HandlePropertiesKHR", {}, result);
}
return result;
}
+#endif // VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceFormats2KHR(VkPhysicalDevice physicalDevice,
- const VkPhysicalDeviceSurfaceInfo2KHR *pSurfaceInfo,
- uint32_t *pSurfaceFormatCount,
- VkSurfaceFormat2KHR *pSurfaceFormats) {
+// Definitions for the VK_KHR_external_semaphore_capabilities extension
+
+VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalSemaphorePropertiesKHR(
+ VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfoKHR *pExternalSemaphoreInfo,
+ VkExternalSemaphorePropertiesKHR *pExternalSemaphoreProperties) {
+ auto my_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
+ assert(my_data != NULL);
bool skip = false;
- instance_layer_data *instance_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
- VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
- skip = parameter_validation_vkGetPhysicalDeviceSurfaceFormats2KHR(instance_data, pSurfaceInfo, pSurfaceFormatCount,
- pSurfaceFormats);
+ skip |= parameter_validation_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(my_data, pExternalSemaphoreInfo,
+ pExternalSemaphoreProperties);
if (!skip) {
- result = instance_data->dispatch_table.GetPhysicalDeviceSurfaceFormats2KHR(physicalDevice, pSurfaceInfo,
- pSurfaceFormatCount, pSurfaceFormats);
+ my_data->dispatch_table.GetPhysicalDeviceExternalSemaphorePropertiesKHR(physicalDevice, pExternalSemaphoreInfo,
+ pExternalSemaphoreProperties);
}
- return result;
}
-// Definitions for the VK_KHX_device_group_creation extension
+// Definitions for the VK_KHR_external_semaphore_fd extension
-VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDeviceGroupsKHX(
- VkInstance instance, uint32_t *pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupPropertiesKHX *pPhysicalDeviceGroupProperties) {
+VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreFdKHR(VkDevice device, const VkImportSemaphoreFdInfoKHR *pImportSemaphoreFdInfo) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
- auto my_data = GetLayerDataPtr(get_dispatch_key(instance), instance_layer_data_map);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkEnumeratePhysicalDeviceGroupsKHX(my_data, pPhysicalDeviceGroupCount,
- pPhysicalDeviceGroupProperties);
+ skip |= parameter_validation_vkImportSemaphoreFdKHR(my_data, pImportSemaphoreFdInfo);
if (!skip) {
- result = my_data->dispatch_table.EnumeratePhysicalDeviceGroupsKHX(instance, pPhysicalDeviceGroupCount,
- pPhysicalDeviceGroupProperties);
- validate_result(my_data->report_data, "vkEnumeratePhysicalDeviceGroupsKHX", {}, result);
+ result = my_data->dispatch_table.ImportSemaphoreFdKHR(device, pImportSemaphoreFdInfo);
+ validate_result(my_data->report_data, "vkImportSemaphoreFdKHR", {}, result);
}
+
return result;
}
-// Definitions for the VK_KHX_device_group extension
-
-VKAPI_ATTR void VKAPI_CALL GetDeviceGroupPeerMemoryFeaturesKHX(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex,
- uint32_t remoteDeviceIndex,
- VkPeerMemoryFeatureFlagsKHX *pPeerMemoryFeatures) {
+VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreFdKHR(VkDevice device, const VkSemaphoreGetFdInfoKHR* pGetFdInfo, int *pFd) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetDeviceGroupPeerMemoryFeaturesKHX(my_data, heapIndex, localDeviceIndex,
- remoteDeviceIndex, pPeerMemoryFeatures);
+ skip |= parameter_validation_vkGetSemaphoreFdKHR(my_data, pGetFdInfo, pFd);
if (!skip) {
- my_data->dispatch_table.GetDeviceGroupPeerMemoryFeaturesKHX(device, heapIndex, localDeviceIndex, remoteDeviceIndex,
- pPeerMemoryFeatures);
+ result = my_data->dispatch_table.GetSemaphoreFdKHR(device, pGetFdInfo, pFd);
+ validate_result(my_data->report_data, "vkGetSemaphoreFdKHR", {}, result);
}
+
+ return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory2KHX(VkDevice device, uint32_t bindInfoCount,
- const VkBindBufferMemoryInfoKHX *pBindInfos) {
+// Definitions for the VK_KHR_external_semaphore_win32 extension
+
+#ifdef VK_USE_PLATFORM_WIN32_KHR
+VKAPI_ATTR VkResult VKAPI_CALL
+ImportSemaphoreWin32HandleKHR(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR *pImportSemaphoreWin32HandleInfo) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkBindBufferMemory2KHX(my_data, bindInfoCount, pBindInfos);
-
+ skip |= parameter_validation_vkImportSemaphoreWin32HandleKHR(my_data, pImportSemaphoreWin32HandleInfo);
if (!skip) {
- result = my_data->dispatch_table.BindBufferMemory2KHX(device, bindInfoCount, pBindInfos);
- validate_result(my_data->report_data, "vkBindBufferMemory2KHX", {}, result);
+ result = my_data->dispatch_table.ImportSemaphoreWin32HandleKHR(device, pImportSemaphoreWin32HandleInfo);
+ validate_result(my_data->report_data, "vkImportSemaphoreWin32HandleKHR", {}, result);
}
-
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL BindImageMemory2KHX(VkDevice device, uint32_t bindInfoCount,
- const VkBindImageMemoryInfoKHX *pBindInfos) {
+VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreWin32HandleKHR(VkDevice device,
+ const VkSemaphoreGetWin32HandleInfoKHR *pGetWin32HandleInfo,
+ HANDLE *pHandle) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkBindImageMemory2KHX(my_data, bindInfoCount, pBindInfos);
-
+ skip |= parameter_validation_vkGetSemaphoreWin32HandleKHR(my_data, pGetWin32HandleInfo, pHandle);
if (!skip) {
- result = my_data->dispatch_table.BindImageMemory2KHX(device, bindInfoCount, pBindInfos);
- validate_result(my_data->report_data, "vkBindImageMemory2KHX", {}, result);
+ result = my_data->dispatch_table.GetSemaphoreWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
+ validate_result(my_data->report_data, "vkGetSemaphoreWin32HandleKHR", {}, result);
}
-
return result;
}
+#endif // VK_USE_PLATFORM_WIN32_KHR
-VKAPI_ATTR void VKAPI_CALL CmdSetDeviceMaskKHX(VkCommandBuffer commandBuffer, uint32_t deviceMask) {
+// Definitions for the VK_KHR_get_memory_requirements2 extension
+
+VKAPI_ATTR void VKAPI_CALL GetImageMemoryRequirements2KHR(VkDevice device, const VkImageMemoryRequirementsInfo2KHR *pInfo,
+ VkMemoryRequirements2KHR *pMemoryRequirements) {
bool skip = false;
- auto my_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkCmdSetDeviceMaskKHX(my_data, deviceMask);
+ skip |= parameter_validation_vkGetImageMemoryRequirements2KHR(my_data, pInfo, pMemoryRequirements);
if (!skip) {
- my_data->dispatch_table.CmdSetDeviceMaskKHX(commandBuffer, deviceMask);
+ my_data->dispatch_table.GetImageMemoryRequirements2KHR(device, pInfo, pMemoryRequirements);
}
}
-VKAPI_ATTR VkResult VKAPI_CALL
-GetDeviceGroupPresentCapabilitiesKHX(VkDevice device, VkDeviceGroupPresentCapabilitiesKHX *pDeviceGroupPresentCapabilities) {
- VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+VKAPI_ATTR void VKAPI_CALL GetBufferMemoryRequirements2KHR(VkDevice device, const VkBufferMemoryRequirementsInfo2KHR *pInfo,
+ VkMemoryRequirements2KHR *pMemoryRequirements) {
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetDeviceGroupPresentCapabilitiesKHX(my_data, pDeviceGroupPresentCapabilities);
+ skip |= parameter_validation_vkGetBufferMemoryRequirements2KHR(my_data, pInfo, pMemoryRequirements);
if (!skip) {
- result = my_data->dispatch_table.GetDeviceGroupPresentCapabilitiesKHX(device, pDeviceGroupPresentCapabilities);
- validate_result(my_data->report_data, "vkGetDeviceGroupPresentCapabilitiesKHX", {}, result);
+ my_data->dispatch_table.GetBufferMemoryRequirements2KHR(device, pInfo, pMemoryRequirements);
}
-
- return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupSurfacePresentModesKHX(VkDevice device, VkSurfaceKHR surface,
- VkDeviceGroupPresentModeFlagsKHX *pModes) {
- VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+VKAPI_ATTR void VKAPI_CALL GetImageSparseMemoryRequirements2KHR(VkDevice device,
+ const VkImageSparseMemoryRequirementsInfo2KHR *pInfo,
+ uint32_t *pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements2KHR *pSparseMemoryRequirements) {
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetDeviceGroupSurfacePresentModesKHX(my_data, surface, pModes);
+ skip |= parameter_validation_vkGetImageSparseMemoryRequirements2KHR(my_data, pInfo, pSparseMemoryRequirementCount,
+ pSparseMemoryRequirements);
if (!skip) {
- result = my_data->dispatch_table.GetDeviceGroupSurfacePresentModesKHX(device, surface, pModes);
- validate_result(my_data->report_data, "vkGetDeviceGroupSurfacePresentModesKHX", {}, result);
+ my_data->dispatch_table.GetImageSparseMemoryRequirements2KHR(device, pInfo, pSparseMemoryRequirementCount,
+ pSparseMemoryRequirements);
}
- return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL AcquireNextImage2KHX(VkDevice device, const VkAcquireNextImageInfoKHX *pAcquireInfo,
- uint32_t *pImageIndex) {
- VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+// Definitions for the VK_KHR_maintenance1 extension
+
+VKAPI_ATTR void VKAPI_CALL TrimCommandPoolKHR(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlagsKHR flags) {
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkAcquireNextImage2KHX(my_data, pAcquireInfo, pImageIndex);
+ skip |= parameter_validation_vkTrimCommandPoolKHR(my_data, commandPool, flags);
if (!skip) {
- result = my_data->dispatch_table.AcquireNextImage2KHX(device, pAcquireInfo, pImageIndex);
- validate_result(my_data->report_data, "vkAcquireNextImage2KHX", {}, result);
+ my_data->dispatch_table.TrimCommandPoolKHR(device, commandPool, flags);
}
- return result;
}
-VKAPI_ATTR void VKAPI_CALL CmdDispatchBaseKHX(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY,
- uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY,
- uint32_t groupCountZ) {
+// Definitions for the VK_KHR_push_descriptor extension
+
+VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint,
+ VkPipelineLayout layout, uint32_t set, uint32_t descriptorWriteCount,
+ const VkWriteDescriptorSet *pDescriptorWrites) {
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkCmdDispatchBaseKHX(my_data, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY,
- groupCountZ);
+ skip |= parameter_validation_vkCmdPushDescriptorSetKHR(my_data, pipelineBindPoint, layout, set, descriptorWriteCount,
+ pDescriptorWrites);
if (!skip) {
- my_data->dispatch_table.CmdDispatchBaseKHX(commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY,
- groupCountZ);
+ my_data->dispatch_table.CmdPushDescriptorSetKHR(commandBuffer, pipelineBindPoint, layout, set, descriptorWriteCount,
+ pDescriptorWrites);
}
}
-VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDevicePresentRectanglesKHX(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface,
- uint32_t *pRectCount, VkRect2D *pRects) {
+// Definitions for the VK_KHX_device_group_creation extension
+
+VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDeviceGroupsKHX(
+ VkInstance instance, uint32_t *pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupPropertiesKHX *pPhysicalDeviceGroupProperties) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
- auto my_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(instance), instance_layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetPhysicalDevicePresentRectanglesKHX(my_data, surface, pRectCount, pRects);
+ skip |= parameter_validation_vkEnumeratePhysicalDeviceGroupsKHX(my_data, pPhysicalDeviceGroupCount,
+ pPhysicalDeviceGroupProperties);
if (!skip) {
- result = my_data->dispatch_table.GetPhysicalDevicePresentRectanglesKHX(physicalDevice, surface, pRectCount, pRects);
-
- validate_result(my_data->report_data, "vkGetPhysicalDevicePresentRectanglesKHX", {}, result);
+ result = my_data->dispatch_table.EnumeratePhysicalDeviceGroupsKHX(instance, pPhysicalDeviceGroupCount,
+ pPhysicalDeviceGroupProperties);
+ validate_result(my_data->report_data, "vkEnumeratePhysicalDeviceGroupsKHX", {}, result);
}
-
return result;
}
-// Definitions for the VK_KHX_external_memory_capabilities extension
+// Definitions for the VK_KHX_device_group extension
-VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalBufferPropertiesKHX(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfoKHX *pExternalBufferInfo,
- VkExternalBufferPropertiesKHX *pExternalBufferProperties) {
- auto my_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
- assert(my_data != NULL);
+VKAPI_ATTR void VKAPI_CALL GetDeviceGroupPeerMemoryFeaturesKHX(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex,
+ uint32_t remoteDeviceIndex,
+ VkPeerMemoryFeatureFlagsKHX *pPeerMemoryFeatures) {
bool skip = false;
- skip |= parameter_validation_vkGetPhysicalDeviceExternalBufferPropertiesKHX(my_data, pExternalBufferInfo,
- pExternalBufferProperties);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
+
+ skip |= parameter_validation_vkGetDeviceGroupPeerMemoryFeaturesKHX(my_data, heapIndex, localDeviceIndex,
+ remoteDeviceIndex, pPeerMemoryFeatures);
+
if (!skip) {
- my_data->dispatch_table.GetPhysicalDeviceExternalBufferPropertiesKHX(physicalDevice, pExternalBufferInfo,
- pExternalBufferProperties);
+ my_data->dispatch_table.GetDeviceGroupPeerMemoryFeaturesKHX(device, heapIndex, localDeviceIndex, remoteDeviceIndex,
+ pPeerMemoryFeatures);
}
}
-// Definitions for the VK_KHX_external_memory_fd extension
-
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdKHX(VkDevice device, VkDeviceMemory memory,
- VkExternalMemoryHandleTypeFlagBitsKHX handleType, int *pFd) {
+VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory2KHX(VkDevice device, uint32_t bindInfoCount,
+ const VkBindBufferMemoryInfoKHX *pBindInfos) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetMemoryFdKHX(my_data, memory, handleType, pFd);
+ skip |= parameter_validation_vkBindBufferMemory2KHX(my_data, bindInfoCount, pBindInfos);
if (!skip) {
- result = my_data->dispatch_table.GetMemoryFdKHX(device, memory, handleType, pFd);
- validate_result(my_data->report_data, "vkGetMemoryFdKHX", {}, result);
+ result = my_data->dispatch_table.BindBufferMemory2KHX(device, bindInfoCount, pBindInfos);
+ validate_result(my_data->report_data, "vkBindBufferMemory2KHX", {}, result);
}
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdPropertiesKHX(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHX handleType, int fd,
- VkMemoryFdPropertiesKHX *pMemoryFdProperties) {
+VKAPI_ATTR VkResult VKAPI_CALL BindImageMemory2KHX(VkDevice device, uint32_t bindInfoCount,
+ const VkBindImageMemoryInfoKHX *pBindInfos) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetMemoryFdPropertiesKHX(my_data, handleType, fd, pMemoryFdProperties);
+ skip |= parameter_validation_vkBindImageMemory2KHX(my_data, bindInfoCount, pBindInfos);
if (!skip) {
- result = my_data->dispatch_table.GetMemoryFdPropertiesKHX(device, handleType, fd, pMemoryFdProperties);
- validate_result(my_data->report_data, "vkGetMemoryFdPropertiesKHX", {}, result);
+ result = my_data->dispatch_table.BindImageMemory2KHX(device, bindInfoCount, pBindInfos);
+ validate_result(my_data->report_data, "vkBindImageMemory2KHX", {}, result);
}
return result;
}
-// Definitions for the VK_KHX_external_memory_win32 extension
-
-#ifdef VK_USE_PLATFORM_WIN32_KHX
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandleKHX(VkDevice device, VkDeviceMemory memory,
- VkExternalMemoryHandleTypeFlagBitsKHX handleType, HANDLE *pHandle) {
- VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+VKAPI_ATTR void VKAPI_CALL CmdSetDeviceMaskKHX(VkCommandBuffer commandBuffer, uint32_t deviceMask) {
bool skip = false;
- auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetMemoryWin32HandleKHX(my_data, memory, handleType, pHandle);
+ skip |= parameter_validation_vkCmdSetDeviceMaskKHX(my_data, deviceMask);
if (!skip) {
- result = my_data->dispatch_table.GetMemoryWin32HandleKHX(device, memory, handleType, pHandle);
- validate_result(my_data->report_data, "vkGetMemoryWin32HandleKHX", {}, result);
+ my_data->dispatch_table.CmdSetDeviceMaskKHX(commandBuffer, deviceMask);
}
- return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandlePropertiesKHX(VkDevice device, VkExternalMemoryHandleTypeFlagBitsKHX handleType,
- HANDLE handle,
- VkMemoryWin32HandlePropertiesKHX *pMemoryWin32HandleProperties) {
+VKAPI_ATTR VkResult VKAPI_CALL
+GetDeviceGroupPresentCapabilitiesKHX(VkDevice device, VkDeviceGroupPresentCapabilitiesKHX *pDeviceGroupPresentCapabilities) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetMemoryWin32HandlePropertiesKHX(my_data, handleType, handle,
- pMemoryWin32HandleProperties);
+ skip |= parameter_validation_vkGetDeviceGroupPresentCapabilitiesKHX(my_data, pDeviceGroupPresentCapabilities);
if (!skip) {
- result =
- my_data->dispatch_table.GetMemoryWin32HandlePropertiesKHX(device, handleType, handle, pMemoryWin32HandleProperties);
- validate_result(my_data->report_data, "vkGetMemoryWin32HandlePropertiesKHX", {}, result);
+ result = my_data->dispatch_table.GetDeviceGroupPresentCapabilitiesKHX(device, pDeviceGroupPresentCapabilities);
+ validate_result(my_data->report_data, "vkGetDeviceGroupPresentCapabilitiesKHX", {}, result);
}
- return result;
-}
-#endif // VK_USE_PLATFORM_WIN32_KHX
-
-// Definitions for the VK_KHX_external_semaphore_capabilities extension
-VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalSemaphorePropertiesKHX(
- VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfoKHX *pExternalSemaphoreInfo,
- VkExternalSemaphorePropertiesKHX *pExternalSemaphoreProperties) {
- auto my_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
- assert(my_data != NULL);
- bool skip = false;
- skip |= parameter_validation_vkGetPhysicalDeviceExternalSemaphorePropertiesKHX(my_data, pExternalSemaphoreInfo,
- pExternalSemaphoreProperties);
- if (!skip) {
- my_data->dispatch_table.GetPhysicalDeviceExternalSemaphorePropertiesKHX(physicalDevice, pExternalSemaphoreInfo,
- pExternalSemaphoreProperties);
- }
+ return result;
}
-// Definitions for the VK_KHX_external_semaphore_fd extension
-
-VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreFdKHX(VkDevice device, const VkImportSemaphoreFdInfoKHX *pImportSemaphoreFdInfo) {
+VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupSurfacePresentModesKHX(VkDevice device, VkSurfaceKHR surface,
+ VkDeviceGroupPresentModeFlagsKHX *pModes) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkImportSemaphoreFdKHX(my_data, pImportSemaphoreFdInfo);
+ skip |= parameter_validation_vkGetDeviceGroupSurfacePresentModesKHX(my_data, surface, pModes);
if (!skip) {
- result = my_data->dispatch_table.ImportSemaphoreFdKHX(device, pImportSemaphoreFdInfo);
- validate_result(my_data->report_data, "vkImportSemaphoreFdKHX", {}, result);
+ result = my_data->dispatch_table.GetDeviceGroupSurfacePresentModesKHX(device, surface, pModes);
+ validate_result(my_data->report_data, "vkGetDeviceGroupSurfacePresentModesKHX", {}, result);
}
-
return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreFdKHX(VkDevice device, VkSemaphore semaphore,
- VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, int *pFd) {
+VKAPI_ATTR VkResult VKAPI_CALL AcquireNextImage2KHX(VkDevice device, const VkAcquireNextImageInfoKHX *pAcquireInfo,
+ uint32_t *pImageIndex) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetSemaphoreFdKHX(my_data, semaphore, handleType, pFd);
+ skip |= parameter_validation_vkAcquireNextImage2KHX(my_data, pAcquireInfo, pImageIndex);
if (!skip) {
- result = my_data->dispatch_table.GetSemaphoreFdKHX(device, semaphore, handleType, pFd);
- validate_result(my_data->report_data, "vkGetSemaphoreFdKHX", {}, result);
+ result = my_data->dispatch_table.AcquireNextImage2KHX(device, pAcquireInfo, pImageIndex);
+ validate_result(my_data->report_data, "vkAcquireNextImage2KHX", {}, result);
}
-
return result;
}
-// Definitions for the VK_KHX_external_semaphore_win32 extension
-
-#ifdef VK_USE_PLATFORM_WIN32_KHX
-VKAPI_ATTR VkResult VKAPI_CALL
-ImportSemaphoreWin32HandleKHX(VkDevice device, const VkImportSemaphoreWin32HandleInfoKHX *pImportSemaphoreWin32HandleInfo) {
- VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+VKAPI_ATTR void VKAPI_CALL CmdDispatchBaseKHX(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY,
+ uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY,
+ uint32_t groupCountZ) {
bool skip = false;
- auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(commandBuffer), layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkImportSemaphoreWin32HandleKHX(my_data, pImportSemaphoreWin32HandleInfo);
+ skip |= parameter_validation_vkCmdDispatchBaseKHX(my_data, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY,
+ groupCountZ);
+
if (!skip) {
- result = my_data->dispatch_table.ImportSemaphoreWin32HandleKHX(device, pImportSemaphoreWin32HandleInfo);
- validate_result(my_data->report_data, "vkImportSemaphoreWin32HandleKHX", {}, result);
+ my_data->dispatch_table.CmdDispatchBaseKHX(commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY,
+ groupCountZ);
}
- return result;
}
-VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreWin32HandleKHX(VkDevice device, VkSemaphore semaphore,
- VkExternalSemaphoreHandleTypeFlagBitsKHX handleType, HANDLE *pHandle) {
+VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDevicePresentRectanglesKHX(VkPhysicalDevice physicalDevice, VkSurfaceKHR surface,
+ uint32_t *pRectCount, VkRect2D *pRects) {
VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
bool skip = false;
- auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ auto my_data = GetLayerDataPtr(get_dispatch_key(physicalDevice), instance_layer_data_map);
assert(my_data != NULL);
- skip |= parameter_validation_vkGetSemaphoreWin32HandleKHX(my_data, semaphore, handleType, pHandle);
+ skip |= parameter_validation_vkGetPhysicalDevicePresentRectanglesKHX(my_data, surface, pRectCount, pRects);
+
if (!skip) {
- result = my_data->dispatch_table.GetSemaphoreWin32HandleKHX(device, semaphore, handleType, pHandle);
- validate_result(my_data->report_data, "vkGetSemaphoreWin32HandleKHX", {}, result);
+ result = my_data->dispatch_table.GetPhysicalDevicePresentRectanglesKHX(physicalDevice, surface, pRectCount, pRects);
+
+ validate_result(my_data->report_data, "vkGetPhysicalDevicePresentRectanglesKHX", {}, result);
}
+
return result;
}
-#endif // VK_USE_PLATFORM_WIN32_KHX
// Definitions for the VK_EXT_acquire_xlib_display extension
diff --git a/layers/vk_validation_error_database.txt b/layers/vk_validation_error_database.txt
index f42f916c..39bb9fb1 100644
--- a/layers/vk_validation_error_database.txt
+++ b/layers/vk_validation_error_database.txt
@@ -93,13 +93,14 @@ VALIDATION_ERROR_01400726~^~Y~^~None~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-
VALIDATION_ERROR_01400728~^~Y~^~None~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-flags-00916~^~core~^~The spec valid usage text states 'If the sparse buffer residency feature is not enabled, flags must not contain VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-flags-00916)~^~
VALIDATION_ERROR_0140072a~^~Y~^~None~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-flags-00917~^~core~^~The spec valid usage text states 'If the sparse aliased residency feature is not enabled, flags must not contain VK_BUFFER_CREATE_SPARSE_ALIASED_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-flags-00917)~^~
VALIDATION_ERROR_0140072c~^~Y~^~SparseBindingImageBufferCreate~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-flags-00918~^~core~^~The spec valid usage text states 'If flags contains VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT or VK_BUFFER_CREATE_SPARSE_ALIASED_BIT, it must also contain VK_BUFFER_CREATE_SPARSE_BINDING_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-flags-00918)~^~
-VALIDATION_ERROR_0140072e~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-handleTypes-00919~^~(VK_KHX_external_memory+VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If any of the handle types specified in VkExternalMemoryImageCreateInfoKHX::handleTypes requires dedicated allocation, as reported by vkGetPhysicalDeviceExternalBufferPropertiesKHX in VkExternalBufferPropertiesKHX::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationBufferCreateInfoNV with its dedicatedAllocation field set to VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-handleTypes-00919)~^~
-VALIDATION_ERROR_01400730~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-pNext-00920~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If the pNext extension contains an instance of VkExternalMemoryBufferCreateInfoKHX, its handleTypes member must only contain bits that are also in VkExternalBufferPropertiesKHX::externalMemoryProperties.pname:compatibleHandleTypes, as returned by vkGetPhysicalDeviceExternalBufferPropertiesKHX with pExternalBufferInfo->handleType equal to any one of the handle types specified in VkExternalMemoryBufferCreateInfoKHX::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-pNext-00920)~^~
+VALIDATION_ERROR_0140072e~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-handleTypes-00919~^~core~^~The spec valid usage text states 'If any of the handle types specified in VkExternalMemoryImageCreateInfoKHR::handleTypes requires dedicated allocation, as reported by vkGetPhysicalDeviceExternalBufferPropertiesKHR in VkExternalBufferPropertiesKHR::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationBufferCreateInfoNV with its dedicatedAllocation field set to VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-handleTypes-00919)~^~
+VALIDATION_ERROR_01400730~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-pNext-00920~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryBufferCreateInfoKHR, its handleTypes member must only contain bits that are also in VkExternalBufferPropertiesKHR::externalMemoryProperties.pname:compatibleHandleTypes, as returned by vkGetPhysicalDeviceExternalBufferPropertiesKHR with pExternalBufferInfo->handleType equal to any one of the handle types specified in VkExternalMemoryBufferCreateInfoKHR::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-pNext-00920)~^~
VALIDATION_ERROR_01400ade~^~N~^~None~^~VkBufferCreateInfo~^~VUID-VkBufferCreateInfo-sharingMode-01391~^~!(VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'If sharingMode is VK_SHARING_MODE_CONCURRENT, each element of pQueueFamilyIndices must be unique and must be less than pQueueFamilyPropertyCount returned by vkGetPhysicalDeviceQueueFamilyProperties for the physicalDevice that was used to create device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-sharingMode-01391)~^~
VALIDATION_ERROR_01400b16~^~N~^~None~^~VkBufferCreateInfo~^~VUID-VkBufferCreateInfo-sharingMode-01419~^~(VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'If sharingMode is VK_SHARING_MODE_CONCURRENT, each element of pQueueFamilyIndices must be unique and must be less than pQueueFamilyPropertyCount returned by either vkGetPhysicalDeviceQueueFamilyProperties or vkGetPhysicalDeviceQueueFamilyProperties2KHR for the physicalDevice that was used to create device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-sharingMode-01419)~^~
VALIDATION_ERROR_01409001~^~Y~^~None~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkBufferCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-flags-parameter)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_0141c40d~^~Y~^~Unknown~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDedicatedAllocationBufferCreateInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0141c40d~^~Y~^~Unknown~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationBufferCreateInfoNV or VkExternalMemoryBufferCreateInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-pNext-pNext)~^~implicit
VALIDATION_ERROR_0142b00b~^~Y~^~None~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_0142b00f~^~N~^~None~^~VkBufferCreateInfo~^~VUID-VkBufferCreateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-sType-unique)~^~implicit
VALIDATION_ERROR_0142c001~^~Y~^~None~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-sharingMode-parameter~^~core~^~The spec valid usage text states 'sharingMode must be a valid VkSharingMode value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-sharingMode-parameter)~^~implicit
VALIDATION_ERROR_01430601~^~N~^~None~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-usage-parameter~^~core~^~The spec valid usage text states 'usage must be a valid combination of VkBufferUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-usage-parameter)~^~implicit
VALIDATION_ERROR_01430603~^~Y~^~None~^~vkCreateBuffer~^~VUID-VkBufferCreateInfo-usage-requiredbitmask~^~core~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-usage-requiredbitmask)~^~implicit
@@ -128,14 +129,14 @@ VALIDATION_ERROR_0160aa01~^~N~^~Unknown~^~vkCmdCopyImageToBuffer~^~VUID-VkBuffer
VALIDATION_ERROR_01800946~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-offset-01187~^~core~^~The spec valid usage text states 'offset must be less than the size of buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-offset-01187)~^~
VALIDATION_ERROR_01800948~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-size-01188~^~core~^~The spec valid usage text states 'If size is not equal to VK_WHOLE_SIZE, size must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-size-01188)~^~
VALIDATION_ERROR_0180094a~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-size-01189~^~core~^~The spec valid usage text states 'If size is not equal to VK_WHOLE_SIZE, size must be less than or equal to than the size of buffer minus offset' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-size-01189)~^~
-VALIDATION_ERROR_0180094c~^~N~^~None~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01190~^~!(VK_KHX_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, srcQueueFamilyIndex and dstQueueFamilyIndex must both be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01190)~^~
-VALIDATION_ERROR_0180094e~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01191~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, at least one of srcQueueFamilyIndex and dstQueueFamilyIndex must be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01191)~^~
-VALIDATION_ERROR_01800950~^~N~^~None~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01192~^~!(VK_KHX_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, srcQueueFamilyIndex and dstQueueFamilyIndex must either both be VK_QUEUE_FAMILY_IGNORED, or both be a valid queue family (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01192)~^~
-VALIDATION_ERROR_01800952~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01193~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must also be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01193)~^~
-VALIDATION_ERROR_01800954~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01194~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01194)~^~
-VALIDATION_ERROR_01800956~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01195~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01195)~^~
+VALIDATION_ERROR_0180094c~^~N~^~None~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01190~^~!(VK_KHR_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, srcQueueFamilyIndex and dstQueueFamilyIndex must both be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01190)~^~
+VALIDATION_ERROR_0180094e~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01191~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, at least one of srcQueueFamilyIndex and dstQueueFamilyIndex must be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01191)~^~
+VALIDATION_ERROR_01800950~^~N~^~None~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01192~^~!(VK_KHR_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, srcQueueFamilyIndex and dstQueueFamilyIndex must either both be VK_QUEUE_FAMILY_IGNORED, or both be a valid queue family (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01192)~^~
+VALIDATION_ERROR_01800952~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01193~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must also be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01193)~^~
+VALIDATION_ERROR_01800954~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01194~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHR (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01194)~^~
+VALIDATION_ERROR_01800956~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01195~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHR (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01195)~^~
VALIDATION_ERROR_01800958~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01196~^~core~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, and srcQueueFamilyIndex and dstQueueFamilyIndex are not VK_QUEUE_FAMILY_IGNORED, at least one of them must be the same as the family of the queue that will execute this barrier' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01196)~^~
-VALIDATION_ERROR_01800ac8~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01380~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, and one of srcQueueFamilyIndex and dstQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, the other must be VK_QUEUE_FAMILY_IGNORED or VK_QUEUE_FAMILY_EXTERNAL_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01380)~^~
+VALIDATION_ERROR_01800ac8~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-01380~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, and one of srcQueueFamilyIndex and dstQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, the other must be VK_QUEUE_FAMILY_IGNORED or VK_QUEUE_FAMILY_EXTERNAL_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01380)~^~
VALIDATION_ERROR_01801a01~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-buffer-parameter~^~core~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-parameter)~^~implicit
VALIDATION_ERROR_01806801~^~Y~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-dstAccessMask-parameter~^~core~^~The spec valid usage text states 'dstAccessMask must be a valid combination of VkAccessFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-dstAccessMask-parameter)~^~implicit
VALIDATION_ERROR_0181c40d~^~Y~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkBufferMemoryBarrier-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-pNext-pNext)~^~implicit, TBD in parameter validation layer.
@@ -237,11 +238,11 @@ VALIDATION_ERROR_03207601~^~Y~^~None~^~vkUpdateDescriptorSets~^~VUID-VkCopyDescr
VALIDATION_ERROR_0321c40d~^~Y~^~Unknown~^~vkUpdateDescriptorSets~^~VUID-VkCopyDescriptorSet-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0322b00b~^~N~^~Unknown~^~vkUpdateDescriptorSets~^~VUID-VkCopyDescriptorSet-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-sType-sType)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0322d201~^~Y~^~None~^~vkUpdateDescriptorSets~^~VUID-VkCopyDescriptorSet-srcSet-parameter~^~core~^~The spec valid usage text states 'srcSet must be a valid VkDescriptorSet handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-parameter)~^~implicit
-VALIDATION_ERROR_0340009e~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHX-waitSemaphoreValuesCount-00079~^~core~^~The spec valid usage text states 'waitSemaphoreValuesCount must be the same value as VkSubmitInfo::waitSemaphoreCount, where SubmitInfo is in the pNext chain of this VkD3D12FenceSubmitInfoKHX structure.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-waitSemaphoreValuesCount-00079)~^~
-VALIDATION_ERROR_034000a0~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHX-signalSemaphoreValuesCount-00080~^~core~^~The spec valid usage text states 'signalSemaphoreValuesCount must be the same value as VkSubmitInfo::signalSemaphoreCount, where SubmitInfo is in the pNext chain of this VkD3D12FenceSubmitInfoKHX structure.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-signalSemaphoreValuesCount-00080)~^~
-VALIDATION_ERROR_03423201~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHX-pSignalSemaphoreValues-parameter~^~core~^~The spec valid usage text states 'If signalSemaphoreValuesCount is not 0, and pSignalSemaphoreValues is not NULL, pSignalSemaphoreValues must be a pointer to an array of signalSemaphoreValuesCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-pSignalSemaphoreValues-parameter)~^~implicit
-VALIDATION_ERROR_03427401~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHX-pWaitSemaphoreValues-parameter~^~core~^~The spec valid usage text states 'If waitSemaphoreValuesCount is not 0, and pWaitSemaphoreValues is not NULL, pWaitSemaphoreValues must be a pointer to an array of waitSemaphoreValuesCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-pWaitSemaphoreValues-parameter)~^~implicit
-VALIDATION_ERROR_0342b00b~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-sType-sType)~^~implicit
+VALIDATION_ERROR_0340009e~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHR-waitSemaphoreValuesCount-00079~^~core~^~The spec valid usage text states 'waitSemaphoreValuesCount must be the same value as VkSubmitInfo::waitSemaphoreCount, where VkSubmitInfo is in the pNext chain of this VkD3D12FenceSubmitInfoKHR structure.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-waitSemaphoreValuesCount-00079)~^~
+VALIDATION_ERROR_034000a0~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHR-signalSemaphoreValuesCount-00080~^~core~^~The spec valid usage text states 'signalSemaphoreValuesCount must be the same value as VkSubmitInfo::signalSemaphoreCount, where VkSubmitInfo is in the pNext chain of this VkD3D12FenceSubmitInfoKHR structure.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-signalSemaphoreValuesCount-00080)~^~
+VALIDATION_ERROR_03423201~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHR-pSignalSemaphoreValues-parameter~^~core~^~The spec valid usage text states 'If signalSemaphoreValuesCount is not 0, and pSignalSemaphoreValues is not NULL, pSignalSemaphoreValues must be a pointer to an array of signalSemaphoreValuesCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-pSignalSemaphoreValues-parameter)~^~implicit
+VALIDATION_ERROR_03427401~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHR-pWaitSemaphoreValues-parameter~^~core~^~The spec valid usage text states 'If waitSemaphoreValuesCount is not 0, and pWaitSemaphoreValues is not NULL, pWaitSemaphoreValues must be a pointer to an array of waitSemaphoreValuesCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-pWaitSemaphoreValues-parameter)~^~implicit
+VALIDATION_ERROR_0342b00b~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkD3D12FenceSubmitInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-sType-sType)~^~implicit
VALIDATION_ERROR_0361a801~^~N~^~Unknown~^~vkCmdDebugMarkerBeginEXT~^~VUID-VkDebugMarkerMarkerInfoEXT-pMarkerName-parameter~^~core~^~The spec valid usage text states 'pMarkerName must be a null-terminated UTF-8 string' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDebugMarkerMarkerInfoEXT-pMarkerName-parameter)~^~implicit
VALIDATION_ERROR_0361c40d~^~N~^~Unknown~^~vkCmdDebugMarkerBeginEXT~^~VUID-VkDebugMarkerMarkerInfoEXT-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDebugMarkerMarkerInfoEXT-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0362b00b~^~Y~^~Unknown~^~vkCmdDebugMarkerBeginEXT~^~VUID-VkDebugMarkerMarkerInfoEXT-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDebugMarkerMarkerInfoEXT-sType-sType)~^~implicit, TBD in parameter validation layer.
@@ -268,8 +269,8 @@ VALIDATION_ERROR_04200514~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAll
VALIDATION_ERROR_04200516~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-00651~^~core~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, the buffer must have been created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-00651)~^~
VALIDATION_ERROR_04200518~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-image-00652~^~core~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-image-00652)~^~
VALIDATION_ERROR_0420051a~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-00653~^~core~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-00653)~^~
-VALIDATION_ERROR_0420051c~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-image-00654~^~(VK_KHX_external_memory_win32,VK_KHX_external_memory_fd)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation, the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-image-00654)~^~
-VALIDATION_ERROR_0420051e~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-00655~^~(VK_KHX_external_memory_win32,VK_KHX_external_memory_fd)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation, the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-00655)~^~
+VALIDATION_ERROR_0420051c~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-image-00654~^~(VK_KHR_external_memory_win32,VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation, the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-image-00654)~^~
+VALIDATION_ERROR_0420051e~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-00655~^~(VK_KHR_external_memory_win32,VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation, the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-00655)~^~
VALIDATION_ERROR_04201a01~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-parameter~^~core~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-buffer-parameter)~^~implicit
VALIDATION_ERROR_0420a001~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-image-parameter~^~core~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-image-parameter)~^~implicit
VALIDATION_ERROR_0422b00b~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkDedicatedAllocationMemoryAllocateInfoNV-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDedicatedAllocationMemoryAllocateInfoNV-sType-sType)~^~implicit, TBD in parameter validation layer.
@@ -329,7 +330,7 @@ VALIDATION_ERROR_056002ea~^~N~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateIn
VALIDATION_ERROR_056002ec~^~N~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-00374~^~(VK_KHR_maintenance1)+(VK_AMD_negative_viewport_height)~^~The spec valid usage text states 'ppEnabledExtensionNames must not contain both VK_KHR_maintenance1 and VK_AMD_negative_viewport_height' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-00374)~^~
VALIDATION_ERROR_05609005~^~Y~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-flags-zerobitmask)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_05615a01~^~N~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateInfo-pEnabledFeatures-parameter~^~core~^~The spec valid usage text states 'If pEnabledFeatures is not NULL, pEnabledFeatures must be a pointer to a valid VkPhysicalDeviceFeatures structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pEnabledFeatures-parameter)~^~implicit
-VALIDATION_ERROR_0561c40d~^~N~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceFeatures2KHR, VkPhysicalDeviceMultiviewFeaturesKHX, or VkDeviceGroupDeviceCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0561c40d~^~N~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceFeatures2KHR, VkPhysicalDevice16BitStorageFeaturesKHR, VkPhysicalDeviceVariablePointerFeaturesKHR, VkPhysicalDeviceMultiviewFeaturesKHX, or VkDeviceGroupDeviceCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pNext-pNext)~^~implicit
VALIDATION_ERROR_0561fe01~^~Y~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateInfo-pQueueCreateInfos-parameter~^~core~^~The spec valid usage text states 'pQueueCreateInfos must be a pointer to an array of queueCreateInfoCount valid VkDeviceQueueCreateInfo structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pQueueCreateInfos-parameter)~^~implicit
VALIDATION_ERROR_05628e01~^~Y~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-parameter~^~core~^~The spec valid usage text states 'If enabledExtensionCount is not 0, ppEnabledExtensionNames must be a pointer to an array of enabledExtensionCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-parameter)~^~implicit
VALIDATION_ERROR_05629001~^~Y~^~Unknown~^~vkCreateDevice~^~VUID-VkDeviceCreateInfo-ppEnabledLayerNames-parameter~^~core~^~The spec valid usage text states 'If enabledLayerCount is not 0, ppEnabledLayerNames must be a pointer to an array of enabledLayerCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledLayerNames-parameter)~^~implicit
@@ -427,41 +428,42 @@ VALIDATION_ERROR_07c003ea~^~N~^~Unknown~^~vkCmdDrawIndirect~^~VUID-VkDrawIndirec
VALIDATION_ERROR_07e09005~^~Y~^~Unknown~^~vkCreateEvent~^~VUID-VkEventCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-flags-zerobitmask)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_07e1c40d~^~Y~^~Unknown~^~vkCreateEvent~^~VUID-VkEventCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_07e2b00b~^~Y~^~Unknown~^~vkCreateEvent~^~VUID-VkEventCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EVENT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_08000520~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryAllocateInfoKHX-handleTypes-00656~^~core~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalImageFormatPropertiesKHX or VkExternalBufferPropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHX-handleTypes-00656)~^~
-VALIDATION_ERROR_08009e01~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryAllocateInfoKHX-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHX-handleTypes-parameter)~^~implicit
-VALIDATION_ERROR_0801c40d~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryAllocateInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0802b00b~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryAllocateInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_08209e01~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter)~^~implicit
-VALIDATION_ERROR_0821c40d~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkExportMemoryAllocateInfoNV-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0822b00b~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkExportMemoryAllocateInfoNV-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-sType-sType)~^~implicit
-VALIDATION_ERROR_08400522~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryWin32HandleInfoKHX-handleTypes-00657~^~core~^~The spec valid usage text states 'If VkExportMemoryAllocateInfoKHX::handleTypes does not include VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHX, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHX, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHX, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHX, VkExportMemoryWin32HandleInfoKHX must not be in the pNext chain of VkMemoryAllocateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHX-handleTypes-00657)~^~
-VALIDATION_ERROR_0840f401~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryWin32HandleInfoKHX-pAttributes-parameter~^~core~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHX-pAttributes-parameter)~^~implicit
-VALIDATION_ERROR_0841c40d~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryWin32HandleInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0842b00b~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryWin32HandleInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_0860f401~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter~^~core~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter)~^~implicit
-VALIDATION_ERROR_0861c40d~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0862b00b~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkExportMemoryWin32HandleInfoNV-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-sType-sType)~^~implicit
-VALIDATION_ERROR_088008c8~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreCreateInfoKHX-handleTypes-01124~^~core~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalSemaphorePropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHX-handleTypes-01124)~^~
-VALIDATION_ERROR_08809e01~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreCreateInfoKHX-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalSemaphoreHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHX-handleTypes-parameter)~^~implicit
-VALIDATION_ERROR_0881c40d~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreCreateInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0882b00b~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreCreateInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_08a008ca~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreWin32HandleInfoKHX-handleTypes-01125~^~core~^~The spec valid usage text states 'If VkExportSemaphoreCreateInfoKHX::handleTypes does not include VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHX or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHX, VkExportSemaphoreWin32HandleInfoKHX must not be in the pNext chain of VkSemaphoreCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHX-handleTypes-01125)~^~
-VALIDATION_ERROR_08a0f401~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreWin32HandleInfoKHX-pAttributes-parameter~^~core~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHX-pAttributes-parameter)~^~implicit
-VALIDATION_ERROR_08a1c40d~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreWin32HandleInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_08a2b00b~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreWin32HandleInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_08c09e01~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkExternalMemoryBufferCreateInfoKHX-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHX-handleTypes-parameter)~^~implicit
-VALIDATION_ERROR_08c1c40d~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkExternalMemoryBufferCreateInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHX-pNext-pNext)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_08c2b00b~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkExternalMemoryBufferCreateInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_08e09e01~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoKHX-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHX-handleTypes-parameter)~^~implicit
-VALIDATION_ERROR_08e09e03~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoKHX-handleTypes-requiredbitmask~^~core~^~The spec valid usage text states 'handleTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHX-handleTypes-requiredbitmask)~^~implicit
-VALIDATION_ERROR_08e1c40d~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_08e2b00b~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHX-sType-sType)~^~implicit
+VALIDATION_ERROR_08000520~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryAllocateInfoKHR-handleTypes-00656~^~core~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalImageFormatPropertiesKHR or VkExternalBufferPropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHR-handleTypes-00656)~^~
+VALIDATION_ERROR_08009e01~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryAllocateInfoKHR-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHR-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_0801c40d~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryAllocateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0802b00b~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryAllocateInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_08209e01~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_0821c40d~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkExportMemoryAllocateInfoNV-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0822b00b~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkExportMemoryAllocateInfoNV-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-sType-sType)~^~implicit
+VALIDATION_ERROR_08400522~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657~^~core~^~The spec valid usage text states 'If VkExportMemoryAllocateInfoKHR::handleTypes does not include VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR, VkExportMemoryWin32HandleInfoKHR must not be in the pNext chain of VkMemoryAllocateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657)~^~
+VALIDATION_ERROR_0840f401~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter~^~core~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter)~^~implicit
+VALIDATION_ERROR_0841c40d~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0842b00b~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkExportMemoryWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_0860f401~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter~^~core~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter)~^~implicit
+VALIDATION_ERROR_0861c40d~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0862b00b~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkExportMemoryWin32HandleInfoNV-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-sType-sType)~^~implicit
+VALIDATION_ERROR_088008c8~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreCreateInfoKHR-handleTypes-01124~^~core~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalSemaphorePropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHR-handleTypes-01124)~^~
+VALIDATION_ERROR_08809e01~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreCreateInfoKHR-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalSemaphoreHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHR-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_0881c40d~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreCreateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0882b00b~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreCreateInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_08a008ca~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125~^~core~^~The spec valid usage text states 'If VkExportSemaphoreCreateInfoKHR::handleTypes does not include VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR, VkExportSemaphoreWin32HandleInfoKHR must not be in the pNext chain of VkSemaphoreCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125)~^~
+VALIDATION_ERROR_08a0f401~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter~^~core~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter)~^~implicit
+VALIDATION_ERROR_08a1c40d~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_08a2b00b~^~N~^~Unknown~^~vkCreateSemaphore~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_08c09e01~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkExternalMemoryBufferCreateInfoKHR-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHR-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_08c1c40d~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkExternalMemoryBufferCreateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHR-pNext-pNext)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_08c2b00b~^~N~^~Unknown~^~vkCreateBuffer~^~VUID-VkExternalMemoryBufferCreateInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_08e09e01~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoKHR-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHR-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_08e09e03~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoKHR-handleTypes-requiredbitmask~^~core~^~The spec valid usage text states 'handleTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHR-handleTypes-requiredbitmask)~^~implicit
+VALIDATION_ERROR_08e1c40d~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_08e2b00b~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHR-sType-sType)~^~implicit
VALIDATION_ERROR_09009e01~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter)~^~implicit
VALIDATION_ERROR_0901c40d~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoNV-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0902b00b~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkExternalMemoryImageCreateInfoNV-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-sType-sType)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_09209001~^~Y~^~Unknown~^~vkCreateFence~^~VUID-VkFenceCreateInfo-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkFenceCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-flags-parameter)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_0921c40d~^~Y~^~Unknown~^~vkCreateFence~^~VUID-VkFenceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_0921c40d~^~Y~^~Unknown~^~vkCreateFence~^~VUID-VkFenceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExportFenceCreateInfoKHR or VkExportFenceWin32HandleInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0922b00b~^~Y~^~Unknown~^~vkCreateFence~^~VUID-VkFenceCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FENCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_0922b00f~^~N~^~None~^~VkFenceCreateInfo~^~VUID-VkFenceCreateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-sType-unique)~^~implicit
VALIDATION_ERROR_09400009~^~Y~^~FramebufferCreateErrors~^~vkCreateFramebuffer~^~VUID-VkFramebufferCreateInfo-commonparent~^~core~^~The spec valid usage text states 'Both of renderPass, and the elements of pAttachments that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFramebufferCreateInfo-commonparent)~^~implicit
VALIDATION_ERROR_094006d8~^~Y~^~FramebufferCreateErrors~^~vkCreateFramebuffer~^~VUID-VkFramebufferCreateInfo-attachmentCount-00876~^~core~^~The spec valid usage text states 'attachmentCount must be equal to the attachment count specified in renderPass' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFramebufferCreateInfo-attachmentCount-00876)~^~
VALIDATION_ERROR_094006da~^~Y~^~FramebufferCreateErrors~^~vkCreateFramebuffer~^~VUID-VkFramebufferCreateInfo-pAttachments-00877~^~core~^~The spec valid usage text states 'Any given element of pAttachments that is used as a color attachment or resolve attachment by renderPass must have been created with a usage value including VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFramebufferCreateInfo-pAttachments-00877)~^~
@@ -534,7 +536,7 @@ VALIDATION_ERROR_09609001~^~Y~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkGra
VALIDATION_ERROR_0960be01~^~Y~^~None~^~vkCreateGraphicsPipelines~^~VUID-VkGraphicsPipelineCreateInfo-layout-parameter~^~core~^~The spec valid usage text states 'layout must be a valid VkPipelineLayout handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-layout-parameter)~^~implicit
VALIDATION_ERROR_09615601~^~N~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkGraphicsPipelineCreateInfo-pDynamicState-parameter~^~core~^~The spec valid usage text states 'If pDynamicState is not NULL, pDynamicState must be a pointer to a valid VkPipelineDynamicStateCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pDynamicState-parameter)~^~implicit
VALIDATION_ERROR_09619801~^~N~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkGraphicsPipelineCreateInfo-pInputAssemblyState-parameter~^~core~^~The spec valid usage text states 'pInputAssemblyState must be a pointer to a valid VkPipelineInputAssemblyStateCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pInputAssemblyState-parameter)~^~implicit
-VALIDATION_ERROR_0961c40d~^~Y~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkGraphicsPipelineCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_0961c40d~^~Y~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkGraphicsPipelineCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPipelineDiscardRectangleStateCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_09620801~^~N~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkGraphicsPipelineCreateInfo-pRasterizationState-parameter~^~core~^~The spec valid usage text states 'pRasterizationState must be a pointer to a valid VkPipelineRasterizationStateCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pRasterizationState-parameter)~^~implicit
VALIDATION_ERROR_09623e01~^~Y~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkGraphicsPipelineCreateInfo-pStages-parameter~^~core~^~The spec valid usage text states 'pStages must be a pointer to an array of stageCount valid VkPipelineShaderStageCreateInfo structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pStages-parameter)~^~implicit
VALIDATION_ERROR_09626801~^~N~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkGraphicsPipelineCreateInfo-pVertexInputState-parameter~^~core~^~The spec valid usage text states 'pVertexInputState must be a pointer to a valid VkPipelineVertexInputStateCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pVertexInputState-parameter)~^~implicit
@@ -641,20 +643,21 @@ VALIDATION_ERROR_09e007b0~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo
VALIDATION_ERROR_09e007b2~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-tiling-00985~^~core~^~The spec valid usage text states 'If tiling is VK_IMAGE_TILING_OPTIMAL, and VkFormatProperties::optimalTilingFeatures (as returned by vkGetPhysicalDeviceFormatProperties with the same value of format) does not include VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT, usage must not contain VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-tiling-00985)~^~
VALIDATION_ERROR_09e007b4~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-tiling-00986~^~core~^~The spec valid usage text states 'If tiling is VK_IMAGE_TILING_OPTIMAL, and VkFormatProperties::optimalTilingFeatures (as returned by vkGetPhysicalDeviceFormatProperties with the same value of format) does not include VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT, usage must not contain VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-tiling-00986)~^~
VALIDATION_ERROR_09e007b6~^~Y~^~SparseBindingImageBufferCreate~^~vkCreateImage~^~VUID-VkImageCreateInfo-flags-00987~^~core~^~The spec valid usage text states 'If flags contains VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT or VK_IMAGE_CREATE_SPARSE_ALIASED_BIT, it must also contain VK_IMAGE_CREATE_SPARSE_BINDING_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-flags-00987)~^~
-VALIDATION_ERROR_09e007b8~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-00988~^~(VK_NV_external_memory+VK_KHX_external_memory)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoNV, it must not contain an instance of VkExternalMemoryImageCreateInfoKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00988)~^~
-VALIDATION_ERROR_09e007ba~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-00989~^~(VK_KHX_external_memory+VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoKHX, and any of the handle types specified in VkExternalMemoryImageCreateInfoKHX::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2KHR in VkExternalImageFormatPropertiesKHX::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationImageCreateInfoNV with its dedicatedAllocation field set to VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00989)~^~
-VALIDATION_ERROR_09e007bc~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-00990~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoKHX, its handleTypes member must only contain bits that are also in VkExternalImageFormatPropertiesKHX::externalMemoryProperties::compatibleHandleTypes, as returned by vkGetPhysicalDeviceImageFormatProperties2KHR with format, type, tiling, usage, and flags equal to those in this structure, and with an instance of VkPhysicalDeviceExternalImageFormatInfoKHX in the pNext chain, with a handleType equal to any one of the handle types specified in VkExternalMemoryImageCreateInfoKHX::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00990)~^~
+VALIDATION_ERROR_09e007b8~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-00988~^~(VK_NV_external_memory+VK_KHR_external_memory)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoNV, it must not contain an instance of VkExternalMemoryImageCreateInfoKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00988)~^~
+VALIDATION_ERROR_09e007ba~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-00989~^~core~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoKHR, and any of the handle types specified in VkExternalMemoryImageCreateInfoKHR::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2KHR in VkExternalImageFormatPropertiesKHR::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationImageCreateInfoNV with its dedicatedAllocation field set to VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00989)~^~
+VALIDATION_ERROR_09e007bc~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-00990~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoKHR, its handleTypes member must only contain bits that are also in VkExternalImageFormatPropertiesKHR::externalMemoryProperties::compatibleHandleTypes, as returned by vkGetPhysicalDeviceImageFormatProperties2KHR with format, type, tiling, usage, and flags equal to those in this structure, and with an instance of VkPhysicalDeviceExternalImageFormatInfoKHR in the pNext chain, with a handleType equal to any one of the handle types specified in VkExternalMemoryImageCreateInfoKHR::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00990)~^~
VALIDATION_ERROR_09e007be~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-00991~^~(VK_NV_external_memory+VK_NV_external_memory_capabilities)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoNV, its handleTypes member must only contain bits that are also in VkExternalImageFormatPropertiesNV::externalMemoryProperties::compatibleHandleTypes, as returned by vkGetPhysicalDeviceExternalImageFormatPropertiesNV with format, type, tiling, usage, and flags equal to those in this structure, and with externalHandleType equal to any one of the handle types specified in VkExternalMemoryImageCreateInfoNV::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00991)~^~
-VALIDATION_ERROR_09e007c0~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-flags-00992~^~(VK_KHX_device_group)~^~The spec valid usage text states 'If flags contains VK_IMAGE_CREATE_BIND_SFR_BIT_KHX, then mipLevels must be one, arrayLayers must be one, imageType must be VK_IMAGE_TYPE_2D, and tiling must be VK_IMAGE_TILING_OPTIMAL.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-flags-00992)~^~
+VALIDATION_ERROR_09e007c0~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-flags-00992~^~(VK_KHX_device_group)~^~The spec valid usage text states 'If flags contains VK_IMAGE_CREATE_BIND_SFR_BIT_KHX, then mipLevels must be one, arrayLayers must be one, imageType must be VK_IMAGE_TYPE_2D, and tiling must be VK_IMAGE_TILING_OPTIMAL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-flags-00992)~^~
VALIDATION_ERROR_09e007c2~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-initialLayout-00993~^~core~^~The spec valid usage text states 'initialLayout must be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-initialLayout-00993)~^~
VALIDATION_ERROR_09e00ae0~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-sharingMode-01392~^~!(VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'If sharingMode is VK_SHARING_MODE_CONCURRENT, each element of pQueueFamilyIndices must be unique and must be less than pQueueFamilyPropertyCount returned by vkGetPhysicalDeviceQueueFamilyProperties for the physicalDevice that was used to create device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-sharingMode-01392)~^~
VALIDATION_ERROR_09e00b18~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-sharingMode-01420~^~(VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'If sharingMode is VK_SHARING_MODE_CONCURRENT, each element of pQueueFamilyIndices must be unique and must be less than pQueueFamilyPropertyCount returned by either vkGetPhysicalDeviceQueueFamilyProperties or vkGetPhysicalDeviceQueueFamilyProperties2KHR for the physicalDevice that was used to create device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-sharingMode-01420)~^~
VALIDATION_ERROR_09e00b1a~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-physicalDeviceCount-01421~^~(VK_KHX_device_group)~^~The spec valid usage text states 'If the logical device was created with VkDeviceGroupDeviceCreateInfoKHX::physicalDeviceCount equal to 1, flags must not contain VK_IMAGE_CREATE_BIND_SFR_BIT_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-physicalDeviceCount-01421)~^~
+VALIDATION_ERROR_09e00b46~^~N~^~None~^~VkImageCreateInfo~^~VUID-VkImageCreateInfo-pNext-01443~^~(VK_KHR_external_memory,VK_NV_external_memory)~^~The spec valid usage text states 'If the pNext chain includes a' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-01443)~^~
VALIDATION_ERROR_09e09001~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-flags-parameter)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_09e09201~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-format-parameter~^~core~^~The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-format-parameter)~^~implicit
VALIDATION_ERROR_09e0ac01~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-imageType-parameter~^~core~^~The spec valid usage text states 'imageType must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-imageType-parameter)~^~implicit
VALIDATION_ERROR_09e0b801~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-initialLayout-parameter~^~core~^~The spec valid usage text states 'initialLayout must be a valid VkImageLayout value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-initialLayout-parameter)~^~implicit
-VALIDATION_ERROR_09e1c40d~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationImageCreateInfoNV or VkImageSwapchainCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-pNext-pNext)~^~implicit
+VALIDATION_ERROR_09e1c40d~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationImageCreateInfoNV, VkImageSwapchainCreateInfoKHX, VkExternalMemoryImageCreateInfoKHR, or VkExternalMemoryImageCreateInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-pNext-pNext)~^~implicit
VALIDATION_ERROR_09e2b00b~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_09e2b00f~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-sType-unique)~^~implicit
VALIDATION_ERROR_09e2b401~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-samples-parameter~^~core~^~The spec valid usage text states 'samples must be a valid VkSampleCountFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-samples-parameter)~^~implicit
@@ -664,11 +667,11 @@ VALIDATION_ERROR_09e30601~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo
VALIDATION_ERROR_09e30603~^~Y~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-usage-requiredbitmask~^~core~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-usage-requiredbitmask)~^~implicit
VALIDATION_ERROR_0a00095a~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-oldLayout-01197~^~core~^~The spec valid usage text states 'oldLayout must be VK_IMAGE_LAYOUT_UNDEFINED or the current layout of the image subresources affected by the barrier' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-oldLayout-01197)~^~
VALIDATION_ERROR_0a00095c~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-newLayout-01198~^~core~^~The spec valid usage text states 'newLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-newLayout-01198)~^~
-VALIDATION_ERROR_0a00095e~^~N~^~None~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01199~^~!(VK_KHX_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, srcQueueFamilyIndex and dstQueueFamilyIndex must both be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01199)~^~
-VALIDATION_ERROR_0a000960~^~N~^~None~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01200~^~!(VK_KHX_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, srcQueueFamilyIndex and dstQueueFamilyIndex must either both be VK_QUEUE_FAMILY_IGNORED, or both be a valid queue family (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01200)~^~
-VALIDATION_ERROR_0a000962~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01201~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must also be VK_QUEUE_FAMILY_IGNORED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01201)~^~
-VALIDATION_ERROR_0a000964~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01202~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01202)~^~
-VALIDATION_ERROR_0a000966~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01203~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01203)~^~
+VALIDATION_ERROR_0a00095e~^~N~^~None~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01199~^~!(VK_KHR_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, srcQueueFamilyIndex and dstQueueFamilyIndex must both be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01199)~^~
+VALIDATION_ERROR_0a000960~^~N~^~None~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01200~^~!(VK_KHR_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, srcQueueFamilyIndex and dstQueueFamilyIndex must either both be VK_QUEUE_FAMILY_IGNORED, or both be a valid queue family (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01200)~^~
+VALIDATION_ERROR_0a000962~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01201~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must also be VK_QUEUE_FAMILY_IGNORED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01201)~^~
+VALIDATION_ERROR_0a000964~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01202~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHR (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01202)~^~
+VALIDATION_ERROR_0a000966~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01203~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHR (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01203)~^~
VALIDATION_ERROR_0a00096a~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01205~^~core~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, and srcQueueFamilyIndex and dstQueueFamilyIndex are not VK_QUEUE_FAMILY_IGNORED, at least one of them must be the same as the family of the queue that will execute this barrier' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01205)~^~
VALIDATION_ERROR_0a00096c~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-subresourceRange-01206~^~core~^~The spec valid usage text states 'subresourceRange must be a valid image subresource range for the image (see Image Views)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-subresourceRange-01206)~^~
VALIDATION_ERROR_0a00096e~^~Y~^~InvalidBarriers~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01207~^~core~^~The spec valid usage text states 'If image has a depth/stencil format with both depth and stencil components, then aspectMask member of subresourceRange must include both VK_IMAGE_ASPECT_DEPTH_BIT and VK_IMAGE_ASPECT_STENCIL_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01207)~^~
@@ -678,8 +681,8 @@ VALIDATION_ERROR_0a000974~^~Y~^~InvalidBarriers~^~vkCmdPipelineBarrier~^~VUID-Vk
VALIDATION_ERROR_0a000976~^~Y~^~InvalidBarriers~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-oldLayout-01211~^~core~^~The spec valid usage text states 'If either oldLayout or newLayout is VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL then image must have been created with VK_IMAGE_USAGE_SAMPLED_BIT or VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-oldLayout-01211)~^~
VALIDATION_ERROR_0a000978~^~Y~^~InvalidBarriers~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-oldLayout-01212~^~core~^~The spec valid usage text states 'If either oldLayout or newLayout is VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL then image must have been created with VK_IMAGE_USAGE_TRANSFER_SRC_BIT set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-oldLayout-01212)~^~
VALIDATION_ERROR_0a00097a~^~Y~^~InvalidBarriers~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-oldLayout-01213~^~core~^~The spec valid usage text states 'If either oldLayout or newLayout is VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL then image must have been created with VK_IMAGE_USAGE_TRANSFER_DST_BIT set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-oldLayout-01213)~^~
-VALIDATION_ERROR_0a000aca~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01381~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, at least one of srcQueueFamilyIndex and dstQueueFamilyIndex must be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01381)~^~
-VALIDATION_ERROR_0a000acc~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01382~^~(VK_KHX_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, and one of srcQueueFamilyIndex and dstQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, the other must be VK_QUEUE_FAMILY_IGNORED or VK_QUEUE_FAMILY_EXTERNAL_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01382)~^~
+VALIDATION_ERROR_0a000aca~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01381~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, at least one of srcQueueFamilyIndex and dstQueueFamilyIndex must be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01381)~^~
+VALIDATION_ERROR_0a000acc~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-01382~^~(VK_KHR_external_memory)~^~The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, and one of srcQueueFamilyIndex and dstQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, the other must be VK_QUEUE_FAMILY_IGNORED or VK_QUEUE_FAMILY_EXTERNAL_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01382)~^~
VALIDATION_ERROR_0a006801~^~Y~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-dstAccessMask-parameter~^~core~^~The spec valid usage text states 'dstAccessMask must be a valid combination of VkAccessFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-dstAccessMask-parameter)~^~implicit
VALIDATION_ERROR_0a00a001~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-image-parameter~^~core~^~The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-parameter)~^~implicit
VALIDATION_ERROR_0a00d401~^~Y~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkImageMemoryBarrier-newLayout-parameter~^~core~^~The spec valid usage text states 'newLayout must be a valid VkImageLayout value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-newLayout-parameter)~^~implicit
@@ -730,12 +733,12 @@ VALIDATION_ERROR_0ac007de~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCr
VALIDATION_ERROR_0ac007e0~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01008~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage contains VK_IMAGE_USAGE_SAMPLED_BIT, format must be supported for sampled images, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01008)~^~
VALIDATION_ERROR_0ac007e2~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01009~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage contains VK_IMAGE_USAGE_STORAGE_BIT, format must be supported for storage images, as specified by the VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01009)~^~
VALIDATION_ERROR_0ac007e4~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01010~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage contains VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, format must be supported for color attachments, as specified by the VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01010)~^~
-VALIDATION_ERROR_0ac007e6~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01011~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage containing VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, format must be supported for depth/stencil attachments, as specified by the VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01011)~^~
+VALIDATION_ERROR_0ac007e6~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01011~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage contains VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, format must be supported for depth/stencil attachments, as specified by the VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01011)~^~
VALIDATION_ERROR_0ac007e8~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01012~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL, format must be format that has at least one supported feature bit present in the value of VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01012)~^~
VALIDATION_ERROR_0ac007ea~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01013~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage contains VK_IMAGE_USAGE_SAMPLED_BIT, format must be supported for sampled images, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01013)~^~
VALIDATION_ERROR_0ac007ec~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01014~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage contains VK_IMAGE_USAGE_STORAGE_BIT, format must be supported for storage images, as specified by the VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01014)~^~
VALIDATION_ERROR_0ac007ee~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01015~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage contains VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, format must be supported for color attachments, as specified by the VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01015)~^~
-VALIDATION_ERROR_0ac007f0~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01016~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage containing VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, format must be supported for depth/stencil attachments, as specified by the VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01016)~^~
+VALIDATION_ERROR_0ac007f0~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01016~^~core~^~The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage contains VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, format must be supported for depth/stencil attachments, as specified by the VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01016)~^~
VALIDATION_ERROR_0ac007f2~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-subresourceRange-01017~^~core~^~The spec valid usage text states 'subresourceRange must be a valid image subresource range for image (see Image Views)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-subresourceRange-01017)~^~
VALIDATION_ERROR_0ac007f4~^~Y~^~CreateImageViewDifferentClass~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01018~^~core~^~The spec valid usage text states 'If image was created with the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, format must be compatible with the format used to create image, as defined in Format Compatibility Classes' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01018)~^~Multi-purposing this for some format compatibility checks, need unique enums.
VALIDATION_ERROR_0ac007f6~^~Y~^~CreateImageViewNoMutableFormatBit~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-image-01019~^~core~^~The spec valid usage text states 'If image was not created with the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, format must be identical to the format used to create image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01019)~^~
@@ -749,38 +752,47 @@ VALIDATION_ERROR_0ac1c40d~^~Y~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCr
VALIDATION_ERROR_0ac2b00b~^~Y~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0ac2ea01~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-subresourceRange-parameter~^~core~^~The spec valid usage text states 'subresourceRange must be a valid VkImageSubresourceRange structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-subresourceRange-parameter)~^~implicit
VALIDATION_ERROR_0ac30801~^~Y~^~Unknown~^~vkCreateImageView~^~VUID-VkImageViewCreateInfo-viewType-parameter~^~core~^~The spec valid usage text states 'viewType must be a valid VkImageViewType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-viewType-parameter)~^~implicit
-VALIDATION_ERROR_0ae00536~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-VkImportMemoryFdInfoKHX-handleType-00667~^~core~^~The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatPropertiesKHX or VkExternalBufferPropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-handleType-00667)~^~
-VALIDATION_ERROR_0ae00538~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-VkImportMemoryFdInfoKHX-fd-00668~^~core~^~The spec valid usage text states 'The memory from which fd was exported must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-fd-00668)~^~
-VALIDATION_ERROR_0ae0053a~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-VkImportMemoryFdInfoKHX-handleType-00669~^~core~^~The spec valid usage text states 'If handleType is not 0, it must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-handleType-00669)~^~
-VALIDATION_ERROR_0ae0053c~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-VkImportMemoryFdInfoKHX-handleType-00670~^~core~^~The spec valid usage text states 'If handleType is not 0, fd must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-handleType-00670)~^~
-VALIDATION_ERROR_0ae09c01~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-VkImportMemoryFdInfoKHX-handleType-parameter~^~core~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_0ae1c40d~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-VkImportMemoryFdInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0ae2b00b~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-VkImportMemoryFdInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_0b000524~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00658~^~core~^~The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatPropertiesKHX or VkExternalBufferPropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00658)~^~
-VALIDATION_ERROR_0b000526~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHX-handle-00659~^~core~^~The spec valid usage text states 'The memory from which handle was exported must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handle-00659)~^~
-VALIDATION_ERROR_0b000528~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00660~^~core~^~The spec valid usage text states 'If handleType is not 0, it must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00660)~^~
-VALIDATION_ERROR_0b00052a~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00661~^~core~^~The spec valid usage text states 'If handleType is not 0, handle must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00661)~^~
-VALIDATION_ERROR_0b009c01~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHX-handleType-parameter~^~core~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_0b01c40d~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0b02b00b~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_0b200a5e~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327~^~core~^~The spec valid usage text states 'handleType must not have more than one bit set.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327)~^~
-VALIDATION_ERROR_0b200a60~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkImportMemoryWin32HandleInfoNV-handle-01328~^~core~^~The spec valid usage text states 'handle must be a valid handle to memory, obtained as specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handle-01328)~^~
-VALIDATION_ERROR_0b209c01~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter)~^~implicit
-VALIDATION_ERROR_0b21c40d~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0b22b00b~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-VkImportMemoryWin32HandleInfoNV-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-sType-sType)~^~implicit
-VALIDATION_ERROR_0b4008ee~^~N~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-VkImportSemaphoreFdInfoKHX-handleType-01143~^~core~^~The spec valid usage text states 'handleType must be a value included in the Handle Type Permanence for VkImportSemaphoreFdInfoKHX table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-handleType-01143)~^~
-VALIDATION_ERROR_0b4008f0~^~N~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-VkImportSemaphoreFdInfoKHX-handleType-01144~^~core~^~The spec valid usage text states 'The semaphore from which handleType was exported must have been created on the same underlying physical device as semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-handleType-01144)~^~
-VALIDATION_ERROR_0b409c01~^~Y~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-VkImportSemaphoreFdInfoKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_0b41c40d~^~Y~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-VkImportSemaphoreFdInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0b42b00b~^~Y~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-VkImportSemaphoreFdInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_0b42b801~^~N~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-VkImportSemaphoreFdInfoKHX-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-semaphore-parameter)~^~implicit
-VALIDATION_ERROR_0b6008e8~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-01140~^~core~^~The spec valid usage text states 'handleType must be a value included in the Handle Type Permanence for VkImportSemaphoreWin32HandleInfoKHX table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-01140)~^~
-VALIDATION_ERROR_0b6008ea~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-01141~^~core~^~The spec valid usage text states 'The semaphore from which handleType was exported must have been created on the same underlying physical device as semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-01141)~^~
-VALIDATION_ERROR_0b609c01~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid combination of VkExternalSemaphoreHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_0b609c03~^~Y~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-requiredbitmask~^~core~^~The spec valid usage text states 'handleType must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-requiredbitmask)~^~implicit
-VALIDATION_ERROR_0b61c40d~^~Y~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-VkImportSemaphoreWin32HandleInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0b62b00b~^~Y~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-VkImportSemaphoreWin32HandleInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_0b62b801~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-VkImportSemaphoreWin32HandleInfoKHX-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-semaphore-parameter)~^~implicit
+VALIDATION_ERROR_0ae00536~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-VkImportMemoryFdInfoKHR-handleType-00667~^~core~^~The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatPropertiesKHR or VkExternalBufferPropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-00667)~^~
+VALIDATION_ERROR_0ae00538~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-VkImportMemoryFdInfoKHR-fd-00668~^~core~^~The spec valid usage text states 'The memory from which fd was exported must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-fd-00668)~^~
+VALIDATION_ERROR_0ae0053a~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-VkImportMemoryFdInfoKHR-handleType-00669~^~core~^~The spec valid usage text states 'If handleType is not 0, it must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-00669)~^~
+VALIDATION_ERROR_0ae0053c~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-VkImportMemoryFdInfoKHR-handleType-00670~^~core~^~The spec valid usage text states 'If handleType is not 0, fd must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-00670)~^~
+VALIDATION_ERROR_0ae09c01~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-VkImportMemoryFdInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0ae1c40d~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-VkImportMemoryFdInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0ae2b00b~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-VkImportMemoryFdInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_0b000524~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658~^~core~^~The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatPropertiesKHR or VkExternalBufferPropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658)~^~
+VALIDATION_ERROR_0b000526~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659~^~core~^~The spec valid usage text states 'The memory from which handle was exported, or the memory named by name must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659)~^~
+VALIDATION_ERROR_0b000528~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00660~^~core~^~The spec valid usage text states 'If handleType is not 0, it must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00660)~^~
+VALIDATION_ERROR_0b00052a~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00661~^~core~^~The spec valid usage text states 'If handleType is not 0 and name is NULL, handle must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00661)~^~
+VALIDATION_ERROR_0b000b3e~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-01439~^~core~^~The spec valid usage text states 'If handleType is not VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-01439)~^~
+VALIDATION_ERROR_0b000b40~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-01440~^~core~^~The spec valid usage text states 'If handleType is not 0 and handle is NULL, name must name a valid memory resource of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-01440)~^~
+VALIDATION_ERROR_0b000b42~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handle-01441~^~core~^~The spec valid usage text states 'if handle is not NULL, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-01441)~^~
+VALIDATION_ERROR_0b009c01~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0b01c40d~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0b02b00b~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_0b200a5e~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327~^~core~^~The spec valid usage text states 'handleType must not have more than one bit set.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327)~^~
+VALIDATION_ERROR_0b200a60~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkImportMemoryWin32HandleInfoNV-handle-01328~^~core~^~The spec valid usage text states 'handle must be a valid handle to memory, obtained as specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handle-01328)~^~
+VALIDATION_ERROR_0b209c01~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0b21c40d~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0b22b00b~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-VkImportMemoryWin32HandleInfoNV-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-sType-sType)~^~implicit
+VALIDATION_ERROR_0b4008ee~^~N~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-VkImportSemaphoreFdInfoKHR-handleType-01143~^~core~^~The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportSemaphoreFdInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-01143)~^~
+VALIDATION_ERROR_0b4008f0~^~N~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-VkImportSemaphoreFdInfoKHR-handleType-01144~^~core~^~The spec valid usage text states 'The semaphore from which handleType was exported must have been created on the same underlying physical device as semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-01144)~^~
+VALIDATION_ERROR_0b409001~^~Y~^~None~^~VkImportSemaphoreFdInfoKHR~^~VUID-VkImportSemaphoreFdInfoKHR-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkSemaphoreImportFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-flags-parameter)~^~implicit
+VALIDATION_ERROR_0b409c01~^~Y~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-VkImportSemaphoreFdInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0b41c40d~^~Y~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-VkImportSemaphoreFdInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0b42b00b~^~Y~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-VkImportSemaphoreFdInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_0b42b801~^~N~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-VkImportSemaphoreFdInfoKHR-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-semaphore-parameter)~^~implicit
+VALIDATION_ERROR_0b6008e8~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01140~^~core~^~The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportSemaphoreWin32HandleInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01140)~^~
+VALIDATION_ERROR_0b6008ea~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01141~^~core~^~The spec valid usage text states 'The semaphore from which handleType or name was exported must have been created on the same underlying physical device as semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01141)~^~
+VALIDATION_ERROR_0b600b74~^~N~^~None~^~VkImportSemaphoreWin32HandleInfoKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01466~^~core~^~The spec valid usage text states 'If handleType is not VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01466)~^~
+VALIDATION_ERROR_0b600b76~^~N~^~None~^~VkImportSemaphoreWin32HandleInfoKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01467~^~core~^~The spec valid usage text states 'If handleType is not 0 and handle is NULL, name must name a valid synchronization primitive of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01467)~^~
+VALIDATION_ERROR_0b600b78~^~N~^~None~^~VkImportSemaphoreWin32HandleInfoKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01468~^~core~^~The spec valid usage text states 'If handleType is not 0 and name is NULL, handle must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01468)~^~
+VALIDATION_ERROR_0b600b7a~^~N~^~None~^~VkImportSemaphoreWin32HandleInfoKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-handle-01469~^~core~^~The spec valid usage text states 'If handle is not NULL, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handle-01469)~^~
+VALIDATION_ERROR_0b609001~^~Y~^~None~^~VkImportSemaphoreWin32HandleInfoKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkSemaphoreImportFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-flags-parameter)~^~implicit
+VALIDATION_ERROR_0b609c01~^~Y~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0b609c03~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-requiredbitmask~^~core~^~The spec valid usage text states 'handleType must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-requiredbitmask)~^~implicit
+VALIDATION_ERROR_0b61c40d~^~Y~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0b62b00b~^~Y~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_0b62b801~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-VkImportSemaphoreWin32HandleInfoKHR-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-semaphore-parameter)~^~implicit
VALIDATION_ERROR_0b800a86~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-tokenCount-01347~^~core~^~The spec valid usage text states 'tokenCount must be greater than 0 and below VkDeviceGeneratedCommandsLimitsNVX::maxIndirectCommandsLayoutTokenCount' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-tokenCount-01347)~^~
VALIDATION_ERROR_0b800a88~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-computeBindingPointSupport-01348~^~core~^~The spec valid usage text states 'If the VkDeviceGeneratedCommandsFeaturesNVX::computeBindingPointSupport feature is not enabled, then pipelineBindPoint must not be VK_PIPELINE_BIND_POINT_COMPUTE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-computeBindingPointSupport-01348)~^~
VALIDATION_ERROR_0b800a8a~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-01349~^~core~^~The spec valid usage text states 'If pTokens contains an entry of VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX it must be the first element of the array and there must be only a single element of such token type.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-01349)~^~
@@ -803,10 +815,11 @@ VALIDATION_ERROR_0bc01a01~^~N~^~Unknown~^~vkUnregisterObjectsNVX~^~VUID-VkIndire
VALIDATION_ERROR_0bc2fe01~^~Y~^~Unknown~^~vkUnregisterObjectsNVX~^~VUID-VkIndirectCommandsTokenNVX-tokenType-parameter~^~core~^~The spec valid usage text states 'tokenType must be a valid VkIndirectCommandsTokenTypeNVX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsTokenNVX-tokenType-parameter)~^~implicit
VALIDATION_ERROR_0be09005~^~Y~^~Unknown~^~vkCreateInstance~^~VUID-VkInstanceCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-flags-zerobitmask)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0be0ee01~^~N~^~Unknown~^~vkCreateInstance~^~VUID-VkInstanceCreateInfo-pApplicationInfo-parameter~^~core~^~The spec valid usage text states 'If pApplicationInfo is not NULL, pApplicationInfo must be a pointer to a valid VkApplicationInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-pApplicationInfo-parameter)~^~implicit
-VALIDATION_ERROR_0be1c40d~^~N~^~Unknown~^~vkCreateInstance~^~VUID-VkInstanceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDebugReportCallbackCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0be1c40d~^~N~^~Unknown~^~vkCreateInstance~^~VUID-VkInstanceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDebugReportCallbackCreateInfoEXT or VkValidationFlagsEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-pNext-pNext)~^~implicit
VALIDATION_ERROR_0be28e01~^~Y~^~Unknown~^~vkCreateInstance~^~VUID-VkInstanceCreateInfo-ppEnabledExtensionNames-parameter~^~core~^~The spec valid usage text states 'If enabledExtensionCount is not 0, ppEnabledExtensionNames must be a pointer to an array of enabledExtensionCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-ppEnabledExtensionNames-parameter)~^~implicit
VALIDATION_ERROR_0be29001~^~Y~^~Unknown~^~vkCreateInstance~^~VUID-VkInstanceCreateInfo-ppEnabledLayerNames-parameter~^~core~^~The spec valid usage text states 'If enabledLayerCount is not 0, ppEnabledLayerNames must be a pointer to an array of enabledLayerCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-ppEnabledLayerNames-parameter)~^~implicit
VALIDATION_ERROR_0be2b00b~^~Y~^~Unknown~^~vkCreateInstance~^~VUID-VkInstanceCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_0be2b00f~^~N~^~None~^~VkInstanceCreateInfo~^~VUID-VkInstanceCreateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-sType-unique)~^~implicit
VALIDATION_ERROR_0c000a4a~^~N~^~Unknown~^~vkCreateMacOSSurfaceMVK~^~VUID-VkMacOSSurfaceCreateInfoMVK-pView-01317~^~core~^~The spec valid usage text states 'pView must be a valid NSView and must be backed by a CALayer instance of type CAMetalLayer.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMacOSSurfaceCreateInfoMVK-pView-01317)~^~
VALIDATION_ERROR_0c009005~^~Y~^~Unknown~^~vkCreateMacOSSurfaceMVK~^~VUID-VkMacOSSurfaceCreateInfoMVK-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMacOSSurfaceCreateInfoMVK-flags-zerobitmask)~^~implicit
VALIDATION_ERROR_0c01c40d~^~Y~^~Unknown~^~vkCreateMacOSSurfaceMVK~^~VUID-VkMacOSSurfaceCreateInfoMVK-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMacOSSurfaceCreateInfoMVK-pNext-pNext)~^~implicit
@@ -828,17 +841,17 @@ VALIDATION_ERROR_0c409001~^~N~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-VkMemo
VALIDATION_ERROR_0c42b00b~^~N~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-VkMemoryAllocateFlagsInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateFlagsInfoKHX-sType-sType)~^~implicit
VALIDATION_ERROR_0c6004fa~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-allocationSize-00637~^~core~^~The spec valid usage text states 'allocationSize must be less than or equal to the amount of memory available to the VkMemoryHeap specified by memoryTypeIndex and the calling command's VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00637)~^~
VALIDATION_ERROR_0c6004fc~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-allocationSize-00638~^~core~^~The spec valid usage text states 'allocationSize must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00638)~^~
-VALIDATION_ERROR_0c6004fe~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-pNext-00639~^~(VK_KHX_external_memory+VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExportMemoryAllocateInfoKHX, and any of the handle types specified in VkExportMemoryAllocateInfoKHX::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2KHR in VkExternalImageFormatPropertiesKHX::externalMemoryProperties::externalMemoryFeatures or VkExternalBufferPropertiesKHX::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationMemoryAllocateInfoNV with either its image or buffer field set to a value other than VK_NULL_HANDLE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00639)~^~
-VALIDATION_ERROR_0c600500~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-pNext-00640~^~(VK_KHX_external_memory+VK_NV_external_memory)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExportMemoryAllocateInfoKHX, it must not contain an instance of VkExportMemoryAllocateInfoNV or VkExportMemoryWin32HandleInfoNV.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00640)~^~
-VALIDATION_ERROR_0c600502~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-pNext-00641~^~(VK_KHX_external_memory_win32+VK_NV_external_memory_win32)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkImportMemoryWin32HandleInfoKHX, it must not contain an instance of VkImportMemoryWin32HandleInfoNV.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00641)~^~
-VALIDATION_ERROR_0c600504~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-allocationSize-00642~^~(VK_KHX_external_memory_win32,VK_KHX_external_memory_fd)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the values of allocationSize and memoryTypeIndex must match those specified when the memory object being imported was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00642)~^~
-VALIDATION_ERROR_0c600506~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-None-00643~^~(VK_KHX_external_memory+VK_KHX_device_group)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the device mask specified by VkMemoryAllocateFlagsInfoKHX must match that specified when the memory object being imported was allocated.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-None-00643)~^~
-VALIDATION_ERROR_0c600508~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-None-00644~^~(VK_KHX_external_memory+VK_KHX_device_group)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the list of physical devices that comprise the logical device passed to vkAllocateMemory must match the list of physical devices that comprise the logical device on which the memory was originally allocated.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-None-00644)~^~
-VALIDATION_ERROR_0c60050a~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-memoryTypeIndex-00645~^~(VK_KHX_external_memory_win32)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle is an NT handle or a global share handle created outside of the Vulkan API, the value of memoryTypeIndex must be one of those returned by vkGetMemoryWin32HandlePropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-memoryTypeIndex-00645)~^~
-VALIDATION_ERROR_0c60050c~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-allocationSize-00646~^~(VK_KHX_external_memory_win32)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle type is VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHX, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHX, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHX, allocationSize must match the size reported in the memory requirements of the image or buffer member of the instance of VkDedicatedAllocationMemoryAllocateInfoNV included in the pNext chain.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00646)~^~
-VALIDATION_ERROR_0c60050e~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-allocationSize-00647~^~(VK_KHX_external_memory_win32)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle type is VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHX, allocationSize must match the size specified when creating the Direct3D 12 heap from which the external handle was extracted.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00647)~^~
-VALIDATION_ERROR_0c600510~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-memoryTypeIndex-00648~^~(VK_KHX_external_memory_fd)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle is a POSIX file descriptor created outside of the Vulkan API, the value of memoryTypeIndex must be one of those returned by vkGetMemoryFdPropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-memoryTypeIndex-00648)~^~
-VALIDATION_ERROR_0c61c40d~^~Y~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationMemoryAllocateInfoNV or VkMemoryAllocateFlagsInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0c6004fe~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-pNext-00639~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExportMemoryAllocateInfoKHR, and any of the handle types specified in VkExportMemoryAllocateInfoKHR::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2KHR in VkExternalImageFormatPropertiesKHR::externalMemoryProperties::externalMemoryFeatures or VkExternalBufferPropertiesKHR::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00639)~^~
+VALIDATION_ERROR_0c600500~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-pNext-00640~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory+VK_NV_external_memory)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkExportMemoryAllocateInfoKHR, it must not contain an instance of VkExportMemoryAllocateInfoNV or VkExportMemoryWin32HandleInfoNV.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00640)~^~
+VALIDATION_ERROR_0c600502~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-pNext-00641~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory_win32+VK_NV_external_memory_win32)~^~The spec valid usage text states 'If the pNext chain contains an instance of VkImportMemoryWin32HandleInfoKHR, it must not contain an instance of VkImportMemoryWin32HandleInfoNV.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00641)~^~
+VALIDATION_ERROR_0c600504~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-allocationSize-00642~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory_win32,VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the values of allocationSize and memoryTypeIndex must match those specified when the memory object being imported was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00642)~^~
+VALIDATION_ERROR_0c600506~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-None-00643~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory+VK_KHX_device_group)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the device mask specified by VkMemoryAllocateFlagsInfoKHX must match that specified when the memory object being imported was allocated.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-None-00643)~^~
+VALIDATION_ERROR_0c600508~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-None-00644~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory+VK_KHX_device_group)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the list of physical devices that comprise the logical device passed to vkAllocateMemory must match the list of physical devices that comprise the logical device on which the memory was originally allocated.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-None-00644)~^~
+VALIDATION_ERROR_0c60050a~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-memoryTypeIndex-00645~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle is an NT handle or a global share handle created outside of the Vulkan API, the value of memoryTypeIndex must be one of those returned by vkGetMemoryWin32HandlePropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-memoryTypeIndex-00645)~^~
+VALIDATION_ERROR_0c60050c~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-allocationSize-00646~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle type is VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR, allocationSize must match the size reported in the memory requirements of the image or buffer member of the instance of VkDedicatedAllocationMemoryAllocateInfoNV included in the pNext chain.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00646)~^~
+VALIDATION_ERROR_0c60050e~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-allocationSize-00647~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle type is VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR, allocationSize must match the size specified when creating the Direct3D 12 heap from which the external handle was extracted.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00647)~^~
+VALIDATION_ERROR_0c600510~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-memoryTypeIndex-00648~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)+(VK_KHR_dedicated_allocation[<a href="#VkMemoryDedicatedAllocateInfoKHR">VkMemoryDedicatedAllocateInfoKHR</a)+(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If the parameters define an import operation and the external handle is a POSIX file descriptor created outside of the Vulkan API, the value of memoryTypeIndex must be one of those returned by vkGetMemoryFdPropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-memoryTypeIndex-00648)~^~
+VALIDATION_ERROR_0c61c40d~^~Y~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationMemoryAllocateInfoNV, VkMemoryAllocateFlagsInfoKHX, VkMemoryDedicatedAllocateInfoKHR, VkExportMemoryAllocateInfoKHR, VkImportMemoryWin32HandleInfoKHR, VkImportMemoryWin32HandleInfoNV, VkImportMemoryFdInfoKHR, VkExportMemoryAllocateInfoNV, VkExportMemoryWin32HandleInfoKHR, or VkExportMemoryWin32HandleInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-pNext)~^~implicit
VALIDATION_ERROR_0c62b00b~^~Y~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0c62b00f~^~N~^~Unknown~^~vkAllocateMemory~^~VUID-VkMemoryAllocateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-sType-unique)~^~implicit
VALIDATION_ERROR_0c806801~^~Y~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-VkMemoryBarrier-dstAccessMask-parameter~^~core~^~The spec valid usage text states 'dstAccessMask must be a valid combination of VkAccessFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryBarrier-dstAccessMask-parameter)~^~implicit
@@ -899,24 +912,24 @@ VALIDATION_ERROR_0d809003~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTa
VALIDATION_ERROR_0d830401~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableVertexBufferEntryNVX-type-parameter~^~core~^~The spec valid usage text states 'type must be a valid VkObjectEntryTypeNVX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkObjectTableVertexBufferEntryNVX-type-parameter)~^~implicit
VALIDATION_ERROR_0da1c40d~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-pNext-pNext)~^~implicit
VALIDATION_ERROR_0da2b00b~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_0dc09001~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-VkPhysicalDeviceExternalBufferInfoKHX-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkBufferCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-flags-parameter)~^~implicit
-VALIDATION_ERROR_0dc09c01~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-VkPhysicalDeviceExternalBufferInfoKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_0dc1c40d~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-VkPhysicalDeviceExternalBufferInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0dc2b00b~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-VkPhysicalDeviceExternalBufferInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_0dc30601~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-VkPhysicalDeviceExternalBufferInfoKHX-usage-parameter~^~core~^~The spec valid usage text states 'usage must be a valid combination of VkBufferUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-usage-parameter)~^~implicit
-VALIDATION_ERROR_0dc30603~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-VkPhysicalDeviceExternalBufferInfoKHX-usage-requiredbitmask~^~core~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-usage-requiredbitmask)~^~implicit
-VALIDATION_ERROR_0de09c01~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceExternalImageFormatInfoKHX-handleType-parameter~^~core~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfoKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_0de2b00b~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceExternalImageFormatInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfoKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_0e009c01~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHX~^~VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_0e01c40d~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHX~^~VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_0e02b00b~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHX~^~VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-sType-sType)~^~implicit
+VALIDATION_ERROR_0dc09001~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-VkPhysicalDeviceExternalBufferInfoKHR-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkBufferCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-flags-parameter)~^~implicit
+VALIDATION_ERROR_0dc09c01~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-VkPhysicalDeviceExternalBufferInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0dc1c40d~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-VkPhysicalDeviceExternalBufferInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0dc2b00b~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-VkPhysicalDeviceExternalBufferInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_0dc30601~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-VkPhysicalDeviceExternalBufferInfoKHR-usage-parameter~^~core~^~The spec valid usage text states 'usage must be a valid combination of VkBufferUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-usage-parameter)~^~implicit
+VALIDATION_ERROR_0dc30603~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-VkPhysicalDeviceExternalBufferInfoKHR-usage-requiredbitmask~^~core~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-usage-requiredbitmask)~^~implicit
+VALIDATION_ERROR_0de09c01~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceExternalImageFormatInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0de2b00b~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceExternalImageFormatInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_0e009c01~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHR~^~VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0e01c40d~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHR~^~VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0e02b00b~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHR~^~VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-sType-sType)~^~implicit
VALIDATION_ERROR_0e200486~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceFeatures-None-00579~^~core~^~The spec valid usage text states 'If any member of this structure is VK_FALSE, as returned by vkGetPhysicalDeviceFeatures, then it must be VK_FALSE when passed as part of the VkDeviceCreateInfo struct when creating a device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures-None-00579)~^~
-VALIDATION_ERROR_0e41c40d~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceFeatures2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceMultiviewFeaturesKHX or VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0e41c40d~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceFeatures2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDevice16BitStorageFeaturesKHR, VkPhysicalDeviceVariablePointerFeaturesKHR, VkPhysicalDeviceMultiviewFeaturesKHX, or VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2KHR-pNext-pNext)~^~implicit
VALIDATION_ERROR_0e42b00b~^~Y~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceFeatures2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2KHR-sType-sType)~^~implicit
VALIDATION_ERROR_0e42b00f~^~N~^~None~^~VkPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceFeatures2KHR-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2KHR-sType-unique)~^~implicit
VALIDATION_ERROR_0e609001~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-flags-parameter)~^~implicit
VALIDATION_ERROR_0e609201~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-format-parameter~^~core~^~The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-format-parameter)~^~implicit
-VALIDATION_ERROR_0e61c40d~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPhysicalDeviceExternalImageFormatInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_0e61c40d~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPhysicalDeviceExternalImageFormatInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-pNext-pNext)~^~implicit
VALIDATION_ERROR_0e62b00b~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-sType-sType)~^~implicit
VALIDATION_ERROR_0e62fa01~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-tiling-parameter~^~core~^~The spec valid usage text states 'tiling must be a valid VkImageTiling value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-tiling-parameter)~^~implicit
VALIDATION_ERROR_0e630401~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-type-parameter~^~core~^~The spec valid usage text states 'type must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-type-parameter)~^~implicit
@@ -956,8 +969,6 @@ VALIDATION_ERROR_0f200b00~^~N~^~None~^~VkPipelineColorBlendAttachmentState~^~VUI
VALIDATION_ERROR_0f200b02~^~N~^~None~^~VkPipelineColorBlendAttachmentState~^~VUID-VkPipelineColorBlendAttachmentState-advancedBlendAllOperations-01409~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'If VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendAllOperations is VK_FALSE, then colorBlendOp must not be VK_BLEND_OP_ZERO_EXT, VK_BLEND_OP_SRC_EXT, VK_BLEND_OP_DST_EXT, VK_BLEND_OP_SRC_OVER_EXT, VK_BLEND_OP_DST_OVER_EXT, VK_BLEND_OP_SRC_IN_EXT, VK_BLEND_OP_DST_IN_EXT, VK_BLEND_OP_SRC_OUT_EXT, VK_BLEND_OP_DST_OUT_EXT, VK_BLEND_OP_SRC_ATOP_EXT, VK_BLEND_OP_DST_ATOP_EXT, VK_BLEND_OP_XOR_EXT, VK_BLEND_OP_INVERT_EXT, VK_BLEND_OP_INVERT_RGB_EXT, VK_BLEND_OP_LINEARDODGE_EXT, VK_BLEND_OP_LINEARBURN_EXT, VK_BLEND_OP_VIVIDLIGHT_EXT, VK_BLEND_OP_LINEARLIGHT_EXT, VK_BLEND_OP_PINLIGHT_EXT, VK_BLEND_OP_HARDMIX_EXT, VK_BLEND_OP_PLUS_EXT, VK_BLEND_OP_PLUS_CLAMPED_EXT, VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT, VK_BLEND_OP_PLUS_DARKER_EXT, VK_BLEND_OP_MINUS_EXT, VK_BLEND_OP_MINUS_CLAMPED_EXT, VK_BLEND_OP_CONTRAST_EXT, VK_BLEND_OP_INVERT_OVG_EXT, VK_BLEND_OP_RED_EXT, VK_BLEND_OP_GREEN_EXT, or VK_BLEND_OP_BLUE_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAttachmentState-advancedBlendAllOperations-01409)~^~
VALIDATION_ERROR_0f200b04~^~N~^~None~^~VkPipelineColorBlendAttachmentState~^~VUID-VkPipelineColorBlendAttachmentState-colorBlendOp-01410~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'If colorBlendOp or alphaBlendOp is an advanced blend operation, then VkSubpassDescription::colorAttachmentCount of the subpass this pipeline is compiled against must be less than or equal to VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendMaxColorAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAttachmentState-colorBlendOp-01410)~^~
VALIDATION_ERROR_0f202001~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-VkPipelineColorBlendAttachmentState-colorBlendOp-parameter~^~core~^~The spec valid usage text states 'colorBlendOp must be a valid VkBlendOp value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineColorBlendAttachmentState-colorBlendOp-parameter)~^~implicit
-VALIDATION_ERROR_0f200801~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-VkPipelineColorBlendAttachmentState-alphaBlendOp-parameter~^~core~^~The spec valid usage text states 'alphaBlendOp must be a valid VkBlendOp value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineColorBlendAttachmentState-alphaBlendOp-parameter)~^~implicit
-VALIDATION_ERROR_0f202001~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-VkPipelineColorBlendAttachmentState-colorBlendOp-parameter~^~core~^~The spec valid usage text states 'colorBlendOp must be a valid VkBlendOp value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineColorBlendAttachmentState-colorBlendOp-parameter)~^~implicit
VALIDATION_ERROR_0f202201~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-VkPipelineColorBlendAttachmentState-colorWriteMask-parameter~^~core~^~The spec valid usage text states 'colorWriteMask must be a valid combination of VkColorComponentFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineColorBlendAttachmentState-colorWriteMask-parameter)~^~implicit
VALIDATION_ERROR_0f206a01~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-VkPipelineColorBlendAttachmentState-dstAlphaBlendFactor-parameter~^~core~^~The spec valid usage text states 'dstAlphaBlendFactor must be a valid VkBlendFactor value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineColorBlendAttachmentState-dstAlphaBlendFactor-parameter)~^~implicit
VALIDATION_ERROR_0f207001~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-VkPipelineColorBlendAttachmentState-dstColorBlendFactor-parameter~^~core~^~The spec valid usage text states 'dstColorBlendFactor must be a valid VkBlendFactor value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineColorBlendAttachmentState-dstColorBlendFactor-parameter)~^~implicit
@@ -982,6 +993,7 @@ VALIDATION_ERROR_0f805e01~^~N~^~Unknown~^~vkCmdSetDepthBias~^~VUID-VkPipelineDis
VALIDATION_ERROR_0f809005~^~N~^~Unknown~^~vkCmdSetDepthBias~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask)~^~implicit
VALIDATION_ERROR_0f81c40d~^~N~^~Unknown~^~vkCmdSetDepthBias~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-pNext-pNext)~^~implicit
VALIDATION_ERROR_0f82b00b~^~N~^~Unknown~^~vkCmdSetDepthBias~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType)~^~implicit
+VALIDATION_ERROR_0fa00b44~^~N~^~None~^~VkPipelineDynamicStateCreateInfo~^~VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442~^~core~^~The spec valid usage text states 'Each element of pDynamicStates must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442)~^~
VALIDATION_ERROR_0fa07c1b~^~N~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength~^~core~^~The spec valid usage text states 'dynamicStateCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength)~^~implicit
VALIDATION_ERROR_0fa09005~^~Y~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkPipelineDynamicStateCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-flags-zerobitmask)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_0fa15801~^~N~^~Unknown~^~vkCreateGraphicsPipelines~^~VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-parameter~^~core~^~The spec valid usage text states 'pDynamicStates must be a pointer to an array of dynamicStateCount valid VkDynamicState values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-parameter)~^~implicit
@@ -1072,8 +1084,9 @@ VALIDATION_ERROR_10c00984~^~Y~^~PSOViewportScissorCountTests~^~vkCmdSetViewportW
VALIDATION_ERROR_10c00986~^~Y~^~PSOViewportScissorCountTests~^~vkCmdSetViewportWScalingNV~^~VUID-VkPipelineViewportStateCreateInfo-scissorCount-01219~^~core~^~The spec valid usage text states 'scissorCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-scissorCount-01219)~^~
VALIDATION_ERROR_10c00988~^~Y~^~PSOViewportScissorCountTests~^~vkCmdSetViewportWScalingNV~^~VUID-VkPipelineViewportStateCreateInfo-scissorCount-01220~^~core~^~The spec valid usage text states 'scissorCount and viewportCount must be identical' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-scissorCount-01220)~^~
VALIDATION_ERROR_10c09005~^~Y~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-VkPipelineViewportStateCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-flags-zerobitmask)~^~implicit
-VALIDATION_ERROR_10c1c40d~^~Y~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-VkPipelineViewportStateCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPipelineViewportWScalingStateCreateInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-pNext-pNext)~^~implicit
+VALIDATION_ERROR_10c1c40d~^~Y~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-VkPipelineViewportStateCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPipelineViewportWScalingStateCreateInfoNV or VkPipelineViewportSwizzleStateCreateInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-pNext-pNext)~^~implicit
VALIDATION_ERROR_10c2b00b~^~N~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-VkPipelineViewportStateCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-sType-sType)~^~implicit
+VALIDATION_ERROR_10c2b00f~^~N~^~None~^~VkPipelineViewportStateCreateInfo~^~VUID-VkPipelineViewportStateCreateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-sType-unique)~^~implicit
VALIDATION_ERROR_10c2b61b~^~N~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-VkPipelineViewportStateCreateInfo-scissorCount-arraylength~^~core~^~The spec valid usage text states 'scissorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-scissorCount-arraylength)~^~implicit
VALIDATION_ERROR_10c30a1b~^~N~^~Unknown~^~vkCmdSetViewportWScalingNV~^~VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength~^~core~^~The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength)~^~implicit
VALIDATION_ERROR_10e0097e~^~N~^~Unknown~^~vkCmdBindVertexBuffers~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215~^~core~^~The spec valid usage text states 'viewportCount must match the viewportCount set in VkPipelineViewportStateCreateInfo' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215)~^~
@@ -1138,7 +1151,7 @@ VALIDATION_ERROR_1220068c~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPass
VALIDATION_ERROR_12209005~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPassCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-flags-zerobitmask)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_1220f201~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPassCreateInfo-pAttachments-parameter~^~core~^~The spec valid usage text states 'If attachmentCount is not 0, pAttachments must be a pointer to an array of attachmentCount valid VkAttachmentDescription structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pAttachments-parameter)~^~implicit
VALIDATION_ERROR_12212601~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPassCreateInfo-pDependencies-parameter~^~core~^~The spec valid usage text states 'If dependencyCount is not 0, pDependencies must be a pointer to an array of dependencyCount valid VkSubpassDependency structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pDependencies-parameter)~^~implicit
-VALIDATION_ERROR_1221c40d~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPassCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_1221c40d~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPassCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkRenderPassMultiviewCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_12224201~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPassCreateInfo-pSubpasses-parameter~^~core~^~The spec valid usage text states 'pSubpasses must be a pointer to an array of subpassCount valid VkSubpassDescription structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pSubpasses-parameter)~^~implicit
VALIDATION_ERROR_1222b00b~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPassCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_1222e61b~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkRenderPassCreateInfo-subpassCount-arraylength~^~core~^~The spec valid usage text states 'subpassCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-subpassCount-arraylength)~^~implicit
@@ -1176,8 +1189,9 @@ VALIDATION_ERROR_1260cc01~^~Y~^~Unknown~^~vkCreateSampler~^~VUID-VkSamplerCreate
VALIDATION_ERROR_1261c40d~^~Y~^~Unknown~^~vkCreateSampler~^~VUID-VkSamplerCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkSamplerReductionModeCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_1262b00b~^~Y~^~Unknown~^~vkCreateSampler~^~VUID-VkSamplerCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_12809005~^~Y~^~Unknown~^~vkCreateSemaphore~^~VUID-VkSemaphoreCreateInfo-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-flags-zerobitmask)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_1281c40d~^~Y~^~Unknown~^~vkCreateSemaphore~^~VUID-VkSemaphoreCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_1281c40d~^~Y~^~Unknown~^~vkCreateSemaphore~^~VUID-VkSemaphoreCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExportSemaphoreCreateInfoKHR or VkExportSemaphoreWin32HandleInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_1282b00b~^~Y~^~Unknown~^~vkCreateSemaphore~^~VUID-VkSemaphoreCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_1282b00f~^~N~^~None~^~VkSemaphoreCreateInfo~^~VUID-VkSemaphoreCreateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-sType-unique)~^~implicit
VALIDATION_ERROR_12a0087a~^~N~^~Unknown~^~vkCreateShaderModule~^~VUID-VkShaderModuleCreateInfo-codeSize-01085~^~core~^~The spec valid usage text states 'codeSize must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkShaderModuleCreateInfo-codeSize-01085)~^~
VALIDATION_ERROR_12a0087c~^~N~^~None~^~vkCreateShaderModule~^~VUID-VkShaderModuleCreateInfo-codeSize-01086~^~!(VK_NV_glsl_shader)~^~The spec valid usage text states 'codeSize must be a multiple of 4' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkShaderModuleCreateInfo-codeSize-01086)~^~
VALIDATION_ERROR_12a0087e~^~N~^~None~^~vkCreateShaderModule~^~VUID-VkShaderModuleCreateInfo-pCode-01087~^~!(VK_NV_glsl_shader)~^~The spec valid usage text states 'pCode must point to valid SPIR-V code, formatted and packed as described by the Khronos SPIR-V Specification' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkShaderModuleCreateInfo-pCode-01087)~^~
@@ -1239,7 +1253,7 @@ VALIDATION_ERROR_13c00098~^~Y~^~Unknown~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pWai
VALIDATION_ERROR_13c0009a~^~Y~^~Unknown~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pWaitDstStageMask-00077~^~core~^~The spec valid usage text states 'If the tessellation shaders feature is not enabled, any given element of pWaitDstStageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-00077)~^~
VALIDATION_ERROR_13c0009c~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pWaitDstStageMask-00078~^~core~^~The spec valid usage text states 'Any given element of pWaitDstStageMask must not include VK_PIPELINE_STAGE_HOST_BIT.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-00078)~^~
VALIDATION_ERROR_13c11401~^~Y~^~None~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pCommandBuffers-parameter~^~core~^~The spec valid usage text states 'If commandBufferCount is not 0, pCommandBuffers must be a pointer to an array of commandBufferCount valid VkCommandBuffer handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pCommandBuffers-parameter)~^~implicit
-VALIDATION_ERROR_13c1c40d~^~Y~^~Unknown~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkWin32KeyedMutexAcquireReleaseInfoNV, VkWin32KeyedMutexAcquireReleaseInfoKHX, VkD3D12FenceSubmitInfoKHX, or VkDeviceGroupSubmitInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pNext-pNext)~^~implicit
+VALIDATION_ERROR_13c1c40d~^~Y~^~Unknown~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkWin32KeyedMutexAcquireReleaseInfoNV, VkWin32KeyedMutexAcquireReleaseInfoKHR, VkD3D12FenceSubmitInfoKHR, or VkDeviceGroupSubmitInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pNext-pNext)~^~implicit
VALIDATION_ERROR_13c23401~^~Y~^~None~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pSignalSemaphores-parameter~^~core~^~The spec valid usage text states 'If signalSemaphoreCount is not 0, pSignalSemaphores must be a pointer to an array of signalSemaphoreCount valid VkSemaphore handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pSignalSemaphores-parameter)~^~implicit
VALIDATION_ERROR_13c27001~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pWaitDstStageMask-parameter~^~core~^~The spec valid usage text states 'If waitSemaphoreCount is not 0, pWaitDstStageMask must be a pointer to an array of waitSemaphoreCount valid combinations of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-parameter)~^~implicit
VALIDATION_ERROR_13c27003~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkSubmitInfo-pWaitDstStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'Each element of pWaitDstStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-requiredbitmask)~^~implicit
@@ -1324,10 +1338,11 @@ VALIDATION_ERROR_1460ae01~^~N~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchai
VALIDATION_ERROR_1460ae03~^~Y~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-imageUsage-requiredbitmask~^~core~^~The spec valid usage text states 'imageUsage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-imageUsage-requiredbitmask)~^~implicit
VALIDATION_ERROR_1460de01~^~Y~^~None~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-oldSwapchain-parameter~^~core~^~The spec valid usage text states 'If oldSwapchain is not VK_NULL_HANDLE, oldSwapchain must be a valid VkSwapchainKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-oldSwapchain-parameter)~^~implicit, This error applies to both vkCreateSwapchainKHR and vkCreateSharedSwapchainsKHR.
VALIDATION_ERROR_1460de07~^~N~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-oldSwapchain-parent~^~core~^~The spec valid usage text states 'If oldSwapchain is a valid handle, it must have been created, allocated, or retrieved from surface' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-oldSwapchain-parent)~^~implicit
-VALIDATION_ERROR_1461c40d~^~Y~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDeviceGroupSwapchainCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_1461c40d~^~Y~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDeviceGroupSwapchainCreateInfoKHX or VkSwapchainCounterCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-pNext-pNext)~^~implicit
VALIDATION_ERROR_14629401~^~Y~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-preTransform-parameter~^~core~^~The spec valid usage text states 'preTransform must be a valid VkSurfaceTransformFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-preTransform-parameter)~^~implicit
VALIDATION_ERROR_14629601~^~Y~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-presentMode-parameter~^~core~^~The spec valid usage text states 'presentMode must be a valid VkPresentModeKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-presentMode-parameter)~^~implicit
VALIDATION_ERROR_1462b00b~^~Y~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-sType-sType)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_1462b00f~^~N~^~None~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-sType-unique)~^~implicit
VALIDATION_ERROR_1462ec01~^~Y~^~None~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-surface-parameter~^~core~^~The spec valid usage text states 'surface must be a valid VkSurfaceKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-surface-parameter)~^~implicit, This error applies to both vkCreateSwapchainKHR and vkCreateSharedSwapchainsKHR.
VALIDATION_ERROR_14805a1b~^~N~^~Unknown~^~vkCreateInstance~^~VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength~^~core~^~The spec valid usage text states 'disabledValidationCheckCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength)~^~implicit
VALIDATION_ERROR_14814401~^~N~^~Unknown~^~vkCreateInstance~^~VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter~^~core~^~The spec valid usage text states 'pDisabledValidationChecks must be a pointer to an array of disabledValidationCheckCount VkValidationCheckEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter)~^~implicit
@@ -1364,14 +1379,14 @@ VALIDATION_ERROR_15400a32~^~N~^~Unknown~^~vkCreateWaylandSurfaceKHR~^~VUID-VkWay
VALIDATION_ERROR_15409005~^~Y~^~Unknown~^~vkCreateWaylandSurfaceKHR~^~VUID-VkWaylandSurfaceCreateInfoKHR-flags-zerobitmask~^~core~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWaylandSurfaceCreateInfoKHR-flags-zerobitmask)~^~implicit
VALIDATION_ERROR_1541c40d~^~Y~^~Unknown~^~vkCreateWaylandSurfaceKHR~^~VUID-VkWaylandSurfaceCreateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWaylandSurfaceCreateInfoKHR-pNext-pNext)~^~implicit
VALIDATION_ERROR_1542b00b~^~Y~^~Unknown~^~vkCreateWaylandSurfaceKHR~^~VUID-VkWaylandSurfaceCreateInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWaylandSurfaceCreateInfoKHR-sType-sType)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_15600009~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-commonparent~^~core~^~The spec valid usage text states 'Both of the elements of pAcquireSyncs, and the elements of pReleaseSyncs that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-commonparent)~^~implicit
-VALIDATION_ERROR_156000a2~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireSyncs-00081~^~core~^~The spec valid usage text states 'Each member of pAcquireSyncs and pReleaseSyncs must be a device memory object imported by setting VkImportMemoryWin32HandleInfoKHX::handleType to VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHX or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireSyncs-00081)~^~
-VALIDATION_ERROR_1560e201~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireKeys-parameter~^~core~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireKeys-parameter)~^~implicit
-VALIDATION_ERROR_1560e401~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireSyncs-parameter~^~core~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireSyncs-parameter)~^~implicit
-VALIDATION_ERROR_1560e801~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireTimeouts-parameter~^~core~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireTimeouts must be a pointer to an array of acquireCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireTimeouts-parameter)~^~implicit
-VALIDATION_ERROR_15621201~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pReleaseKeys-parameter~^~core~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseKeys must be a pointer to an array of releaseCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pReleaseKeys-parameter)~^~implicit
-VALIDATION_ERROR_15621401~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pReleaseSyncs-parameter~^~core~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseSyncs must be a pointer to an array of releaseCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pReleaseSyncs-parameter)~^~implicit
-VALIDATION_ERROR_1562b00b~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-sType-sType)~^~implicit
+VALIDATION_ERROR_15600009~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-commonparent~^~core~^~The spec valid usage text states 'Both of the elements of pAcquireSyncs, and the elements of pReleaseSyncs that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-commonparent)~^~implicit
+VALIDATION_ERROR_156000a2~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-00081~^~core~^~The spec valid usage text states 'Each member of pAcquireSyncs and pReleaseSyncs must be a device memory object imported by setting VkImportMemoryWin32HandleInfoKHR::handleType to VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-00081)~^~
+VALIDATION_ERROR_1560e201~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireKeys-parameter~^~core~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireKeys-parameter)~^~implicit
+VALIDATION_ERROR_1560e401~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-parameter~^~core~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-parameter)~^~implicit
+VALIDATION_ERROR_1560e801~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireTimeouts-parameter~^~core~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireTimeouts must be a pointer to an array of acquireCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireTimeouts-parameter)~^~implicit
+VALIDATION_ERROR_15621201~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseKeys-parameter~^~core~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseKeys must be a pointer to an array of releaseCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseKeys-parameter)~^~implicit
+VALIDATION_ERROR_15621401~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseSyncs-parameter~^~core~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseSyncs must be a pointer to an array of releaseCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseSyncs-parameter)~^~implicit
+VALIDATION_ERROR_1562b00b~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-sType-sType)~^~implicit
VALIDATION_ERROR_15800009~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-commonparent~^~core~^~The spec valid usage text states 'Both of the elements of pAcquireSyncs, and the elements of pReleaseSyncs that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-commonparent)~^~implicit
VALIDATION_ERROR_1580e201~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireKeys-parameter~^~core~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireKeys-parameter)~^~implicit
VALIDATION_ERROR_1580e401~^~N~^~Unknown~^~vkQueueSubmit~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireSyncs-parameter~^~core~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireSyncs-parameter)~^~implicit
@@ -1468,8 +1483,9 @@ VALIDATION_ERROR_17000814~^~Y~^~Unknown~^~vkBindBufferMemory~^~VUID-vkBindBuffer
VALIDATION_ERROR_17000816~^~Y~^~BindInvalidMemory~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-memory-01035~^~core~^~The spec valid usage text states 'memory must have been allocated using one of the memory types allowed in the memoryTypeBits member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-memory-01035)~^~
VALIDATION_ERROR_17000818~^~Y~^~BindInvalidMemory~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-memoryOffset-01036~^~core~^~The spec valid usage text states 'memoryOffset must be an integer multiple of the alignment member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-memoryOffset-01036)~^~
VALIDATION_ERROR_1700081a~^~Y~^~BindInvalidMemory~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-size-01037~^~core~^~The spec valid usage text states 'The size member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffer must be less than or equal to the size of memory minus memoryOffset' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-size-01037)~^~
-VALIDATION_ERROR_1700081c~^~N~^~Unknown~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-buffer-01038~^~(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If buffer was created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::buffer equal to buffer and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01038)~^~
-VALIDATION_ERROR_1700081e~^~N~^~Unknown~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-buffer-01039~^~(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If buffer was not created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01039)~^~
+VALIDATION_ERROR_1700081c~^~N~^~Unknown~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-buffer-01038~^~(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If buffer was created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::buffer equal to a buffer handle created with identical creation parameters to buffer and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01038)~^~
+VALIDATION_ERROR_1700081e~^~N~^~Unknown~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-buffer-01039~^~(VK_NV_dedicated_allocation)+!(VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If buffer was not created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01039)~^~
+VALIDATION_ERROR_17000b48~^~N~^~None~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-buffer-01444~^~(VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If buffer requires a dedicated allocation(as reported by vkGetBufferMemoryRequirements2KHR in VkMemoryDedicatedRequirementsKHR::requiresDedicatedAllocation for image), memory must have been created with VkMemoryDedicatedAllocateInfoKHR::buffer equal to buffer and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01444)~^~
VALIDATION_ERROR_17001a01~^~Y~^~VertexBufferInvalid~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-buffer-parameter~^~core~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-buffer-parameter)~^~implicit
VALIDATION_ERROR_17001a07~^~Y~^~Unknown~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-buffer-parent~^~core~^~The spec valid usage text states 'buffer must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-buffer-parent)~^~implicit
VALIDATION_ERROR_17005601~^~Y~^~None~^~vkBindBufferMemory~^~VUID-vkBindBufferMemory-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-device-parameter)~^~implicit
@@ -1484,8 +1500,9 @@ VALIDATION_ERROR_1740082c~^~Y~^~BindInvalidMemory~^~vkBindImageMemory~^~VUID-vkB
VALIDATION_ERROR_1740082e~^~Y~^~BindInvalidMemory~^~vkBindImageMemory~^~VUID-vkBindImageMemory-memory-01047~^~core~^~The spec valid usage text states 'memory must have been allocated using one of the memory types allowed in the memoryTypeBits member of the VkMemoryRequirements structure returned from a call to vkGetImageMemoryRequirements with image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-memory-01047)~^~
VALIDATION_ERROR_17400830~^~Y~^~BindInvalidMemory~^~vkBindImageMemory~^~VUID-vkBindImageMemory-memoryOffset-01048~^~core~^~The spec valid usage text states 'memoryOffset must be an integer multiple of the alignment member of the VkMemoryRequirements structure returned from a call to vkGetImageMemoryRequirements with image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-memoryOffset-01048)~^~
VALIDATION_ERROR_17400832~^~Y~^~BindInvalidMemory~^~vkBindImageMemory~^~VUID-vkBindImageMemory-size-01049~^~core~^~The spec valid usage text states 'The size member of the VkMemoryRequirements structure returned from a call to vkGetImageMemoryRequirements with image must be less than or equal to the size of memory minus memoryOffset' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-size-01049)~^~
-VALIDATION_ERROR_17400834~^~N~^~Unknown~^~vkBindImageMemory~^~VUID-vkBindImageMemory-image-01050~^~(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If image was created with VkDedicatedAllocationImageCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::image equal to image and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory-image-01050)~^~
-VALIDATION_ERROR_17400836~^~N~^~Unknown~^~vkBindImageMemory~^~VUID-vkBindImageMemory-image-01051~^~(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If image was not created with VkDedicatedAllocationImageCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory-image-01051)~^~
+VALIDATION_ERROR_17400834~^~N~^~Unknown~^~vkBindImageMemory~^~VUID-vkBindImageMemory-image-01050~^~(VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If image was created with VkDedicatedAllocationImageCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::image equal to an image handle created with identical creation parameters to image and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory-image-01050)~^~
+VALIDATION_ERROR_17400836~^~N~^~Unknown~^~vkBindImageMemory~^~VUID-vkBindImageMemory-image-01051~^~(VK_NV_dedicated_allocation)+!(VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If image was not created with VkDedicatedAllocationImageCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-image-01051)~^~
+VALIDATION_ERROR_17400b4a~^~N~^~None~^~vkBindImageMemory~^~VUID-vkBindImageMemory-image-01445~^~(VK_KHR_dedicated_allocation)~^~The spec valid usage text states 'If image requires a dedicated allocation (as reported by vkGetImageMemoryRequirements2KHR in VkMemoryDedicatedRequirementsKHR::requiresDedicatedAllocation for image), memory must have been created with VkMemoryDedicatedAllocateInfoKHR::image equal to image and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory-image-01445)~^~
VALIDATION_ERROR_17405601~^~Y~^~None~^~vkBindImageMemory~^~VUID-vkBindImageMemory-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-device-parameter)~^~implicit
VALIDATION_ERROR_1740a001~^~Y~^~BindMemoryToDestroyedObject~^~vkBindImageMemory~^~VUID-vkBindImageMemory-image-parameter~^~core~^~The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-image-parameter)~^~implicit
VALIDATION_ERROR_1740a007~^~Y~^~Unknown~^~vkBindImageMemory~^~VUID-vkBindImageMemory-image-parent~^~core~^~The spec valid usage text states 'image must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-image-parent)~^~implicit
@@ -2803,26 +2820,28 @@ VALIDATION_ERROR_2a61a201~^~Y~^~Unknown~^~vkGetImageSubresourceLayout~^~VUID-vkG
VALIDATION_ERROR_2a624401~^~Y~^~Unknown~^~vkGetImageSubresourceLayout~^~VUID-vkGetImageSubresourceLayout-pSubresource-parameter~^~core~^~The spec valid usage text states 'pSubresource must be a pointer to a valid VkImageSubresource structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageSubresourceLayout-pSubresource-parameter)~^~implicit
VALIDATION_ERROR_2a80bc01~^~N~^~Unknown~^~vkGetInstanceProcAddr~^~VUID-vkGetInstanceProcAddr-instance-parameter~^~core~^~The spec valid usage text states 'If instance is not NULL, instance must be a valid VkInstance handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetInstanceProcAddr-instance-parameter)~^~implicit, This can't be validated in a layer. Validation would have to occur in a loader.
VALIDATION_ERROR_2a81c001~^~N~^~Unknown~^~vkGetInstanceProcAddr~^~VUID-vkGetInstanceProcAddr-pName-parameter~^~core~^~The spec valid usage text states 'pName must be a null-terminated UTF-8 string' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetInstanceProcAddr-pName-parameter)~^~implicit, The loader uses strcmp to dispatch and can fail to dispatch when name is not null-terminated. i.e. Validation layers are never called.
-VALIDATION_ERROR_2aa0053e~^~N~^~Unknown~^~vkGetMemoryFdKHX~^~VUID-vkGetMemoryFdKHX-handleType-00671~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportMemoryAllocateInfoKHX::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-handleType-00671)~^~
-VALIDATION_ERROR_2aa00540~^~N~^~Unknown~^~vkGetMemoryFdKHX~^~VUID-vkGetMemoryFdKHX-handleType-00672~^~core~^~The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-handleType-00672)~^~
-VALIDATION_ERROR_2aa05601~^~N~^~Unknown~^~vkGetMemoryFdKHX~^~VUID-vkGetMemoryFdKHX-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-device-parameter)~^~implicit
-VALIDATION_ERROR_2aa09c01~^~Y~^~Unknown~^~vkGetMemoryFdKHX~^~VUID-vkGetMemoryFdKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_2aa0c601~^~N~^~Unknown~^~vkGetMemoryFdKHX~^~VUID-vkGetMemoryFdKHX-memory-parameter~^~core~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-memory-parameter)~^~implicit
-VALIDATION_ERROR_2aa0c607~^~N~^~Unknown~^~vkGetMemoryFdKHX~^~VUID-vkGetMemoryFdKHX-memory-parent~^~core~^~The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-memory-parent)~^~implicit
-VALIDATION_ERROR_2aa16c01~^~Y~^~Unknown~^~vkGetMemoryFdKHX~^~VUID-vkGetMemoryFdKHX-pFd-parameter~^~core~^~The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-pFd-parameter)~^~implicit
-VALIDATION_ERROR_2ac00542~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-vkGetMemoryFdPropertiesKHX-fd-00673~^~core~^~The spec valid usage text states 'fd must be an external memory handle created outside of the Vulkan API.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-fd-00673)~^~
-VALIDATION_ERROR_2ac00544~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-vkGetMemoryFdPropertiesKHX-handleType-00674~^~core~^~The spec valid usage text states 'handleType must not be one of the handle types defined as opaque.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-handleType-00674)~^~
-VALIDATION_ERROR_2ac05601~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-vkGetMemoryFdPropertiesKHX-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-device-parameter)~^~implicit
-VALIDATION_ERROR_2ac09c01~^~Y~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-vkGetMemoryFdPropertiesKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_2ac1ae01~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHX~^~VUID-vkGetMemoryFdPropertiesKHX-pMemoryFdProperties-parameter~^~core~^~The spec valid usage text states 'pMemoryFdProperties must be a pointer to a VkMemoryFdPropertiesKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-pMemoryFdProperties-parameter)~^~implicit
-VALIDATION_ERROR_2ae0052c~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGetMemoryWin32HandleKHX-handleType-00662~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportMemoryAllocateInfoKHX::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-handleType-00662)~^~
-VALIDATION_ERROR_2ae0052e~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGetMemoryWin32HandleKHX-handleType-00663~^~core~^~The spec valid usage text states 'If handleType is defined as an NT handle, vkGetMemoryWin32HandleKHX must be called no more than once for each valid unique combination of memory and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-handleType-00663)~^~
-VALIDATION_ERROR_2ae00530~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGetMemoryWin32HandleKHX-handleType-00664~^~core~^~The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-handleType-00664)~^~
-VALIDATION_ERROR_2ae05601~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGetMemoryWin32HandleKHX-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-device-parameter)~^~implicit
-VALIDATION_ERROR_2ae09c01~^~Y~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGetMemoryWin32HandleKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_2ae0c601~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGetMemoryWin32HandleKHX-memory-parameter~^~core~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-memory-parameter)~^~implicit
-VALIDATION_ERROR_2ae0c607~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGetMemoryWin32HandleKHX-memory-parent~^~core~^~The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-memory-parent)~^~implicit
-VALIDATION_ERROR_2ae17c01~^~Y~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGetMemoryWin32HandleKHX-pHandle-parameter~^~core~^~The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-pHandle-parameter)~^~implicit
+VALIDATION_ERROR_2aa0053e~^~N~^~Unknown~^~vkGetMemoryFdKHR~^~VUID-vkGetMemoryFdKHR-handleType-00671~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportMemoryAllocateInfoKHR::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-handleType-00671)~^~
+VALIDATION_ERROR_2aa00540~^~N~^~Unknown~^~vkGetMemoryFdKHR~^~VUID-vkGetMemoryFdKHR-handleType-00672~^~core~^~The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-handleType-00672)~^~
+VALIDATION_ERROR_2aa05601~^~N~^~Unknown~^~vkGetMemoryFdKHR~^~VUID-vkGetMemoryFdKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_2aa09c01~^~N~^~Unknown~^~vkGetMemoryFdKHR~^~VUID-vkGetMemoryFdKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_2aa0c601~^~N~^~Unknown~^~vkGetMemoryFdKHR~^~VUID-vkGetMemoryFdKHR-memory-parameter~^~core~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-memory-parameter)~^~implicit
+VALIDATION_ERROR_2aa0c607~^~N~^~Unknown~^~vkGetMemoryFdKHR~^~VUID-vkGetMemoryFdKHR-memory-parent~^~core~^~The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-memory-parent)~^~implicit
+VALIDATION_ERROR_2aa16c01~^~Y~^~Unknown~^~vkGetMemoryFdKHR~^~VUID-vkGetMemoryFdKHR-pFd-parameter~^~core~^~The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-pFd-parameter)~^~implicit
+VALIDATION_ERROR_2aa39e01~^~N~^~None~^~vkGetMemoryFdKHR~^~VUID-vkGetMemoryFdKHR-pGetFdInfo-parameter~^~core~^~The spec valid usage text states 'pGetFdInfo must be a pointer to a valid VkMemoryGetFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-pGetFdInfo-parameter)~^~implicit
+VALIDATION_ERROR_2ac00542~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-vkGetMemoryFdPropertiesKHR-fd-00673~^~core~^~The spec valid usage text states 'fd must be an external memory handle created outside of the Vulkan API.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-fd-00673)~^~
+VALIDATION_ERROR_2ac00544~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-vkGetMemoryFdPropertiesKHR-handleType-00674~^~core~^~The spec valid usage text states 'handleType must not be one of the handle types defined as opaque.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-handleType-00674)~^~
+VALIDATION_ERROR_2ac05601~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-vkGetMemoryFdPropertiesKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_2ac09c01~^~Y~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-vkGetMemoryFdPropertiesKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_2ac1ae01~^~N~^~Unknown~^~vkGetMemoryFdPropertiesKHR~^~VUID-vkGetMemoryFdPropertiesKHR-pMemoryFdProperties-parameter~^~core~^~The spec valid usage text states 'pMemoryFdProperties must be a pointer to a VkMemoryFdPropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-pMemoryFdProperties-parameter)~^~implicit
+VALIDATION_ERROR_2ae0052c~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-handleType-00662~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportMemoryAllocateInfoKHR::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-handleType-00662)~^~
+VALIDATION_ERROR_2ae0052e~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-handleType-00663~^~core~^~The spec valid usage text states 'If handleType is defined as an NT handle, vkGetMemoryWin32HandleKHR must be called no more than once for each valid unique combination of memory and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-handleType-00663)~^~
+VALIDATION_ERROR_2ae00530~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-handleType-00664~^~core~^~The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-handleType-00664)~^~
+VALIDATION_ERROR_2ae05601~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_2ae09c01~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_2ae0c601~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-memory-parameter~^~core~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-memory-parameter)~^~implicit
+VALIDATION_ERROR_2ae0c607~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-memory-parent~^~core~^~The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-memory-parent)~^~implicit
+VALIDATION_ERROR_2ae17c01~^~Y~^~Unknown~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-pHandle-parameter~^~core~^~The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-pHandle-parameter)~^~implicit
+VALIDATION_ERROR_2ae3a001~^~N~^~None~^~vkGetMemoryWin32HandleKHR~^~VUID-vkGetMemoryWin32HandleKHR-pGetWin32HandleInfo-parameter~^~core~^~The spec valid usage text states 'pGetWin32HandleInfo must be a pointer to a valid VkMemoryGetWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-pGetWin32HandleInfo-parameter)~^~implicit
VALIDATION_ERROR_2b000a5c~^~N~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetMemoryWin32HandleNV-handleType-01326~^~core~^~The spec valid usage text states 'handleType must be a flag specified in VkExportMemoryAllocateInfoNV::handleTypes when allocating memory' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-handleType-01326)~^~
VALIDATION_ERROR_2b005601~^~Y~^~None~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetMemoryWin32HandleNV-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-device-parameter)~^~implicit
VALIDATION_ERROR_2b009c01~^~N~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetMemoryWin32HandleNV-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-handleType-parameter)~^~implicit
@@ -2830,11 +2849,11 @@ VALIDATION_ERROR_2b009c03~^~Y~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetM
VALIDATION_ERROR_2b00c601~^~Y~^~None~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetMemoryWin32HandleNV-memory-parameter~^~core~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-memory-parameter)~^~implicit
VALIDATION_ERROR_2b00c607~^~Y~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetMemoryWin32HandleNV-memory-parent~^~core~^~The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-memory-parent)~^~implicit
VALIDATION_ERROR_2b017c01~^~Y~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetMemoryWin32HandleNV-pHandle-parameter~^~core~^~The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-pHandle-parameter)~^~implicit
-VALIDATION_ERROR_2b200532~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-vkGetMemoryWin32HandlePropertiesKHX-handle-00665~^~core~^~The spec valid usage text states 'handle must be an external memory handle created outside of the Vulkan API.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-handle-00665)~^~
-VALIDATION_ERROR_2b200534~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-vkGetMemoryWin32HandlePropertiesKHX-handleType-00666~^~core~^~The spec valid usage text states 'handleType must not be one of the handle types defined as opaque.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-handleType-00666)~^~
-VALIDATION_ERROR_2b205601~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-vkGetMemoryWin32HandlePropertiesKHX-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-device-parameter)~^~implicit
-VALIDATION_ERROR_2b209c01~^~Y~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-vkGetMemoryWin32HandlePropertiesKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_2b21b601~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHX~^~VUID-vkGetMemoryWin32HandlePropertiesKHX-pMemoryWin32HandleProperties-parameter~^~core~^~The spec valid usage text states 'pMemoryWin32HandleProperties must be a pointer to a VkMemoryWin32HandlePropertiesKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-pMemoryWin32HandleProperties-parameter)~^~implicit
+VALIDATION_ERROR_2b200532~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-vkGetMemoryWin32HandlePropertiesKHR-handle-00665~^~core~^~The spec valid usage text states 'handle must be an external memory handle created outside of the Vulkan API.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-handle-00665)~^~
+VALIDATION_ERROR_2b200534~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-vkGetMemoryWin32HandlePropertiesKHR-handleType-00666~^~core~^~The spec valid usage text states 'handleType must not be one of the handle types defined as opaque.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-handleType-00666)~^~
+VALIDATION_ERROR_2b205601~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-vkGetMemoryWin32HandlePropertiesKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_2b209c01~^~Y~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-vkGetMemoryWin32HandlePropertiesKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_2b21b601~^~N~^~Unknown~^~vkGetMemoryWin32HandlePropertiesKHR~^~VUID-vkGetMemoryWin32HandlePropertiesKHR-pMemoryWin32HandleProperties-parameter~^~core~^~The spec valid usage text states 'pMemoryWin32HandleProperties must be a pointer to a VkMemoryWin32HandlePropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-pMemoryWin32HandleProperties-parameter)~^~implicit
VALIDATION_ERROR_2b405601~^~Y~^~Unknown~^~vkGetPastPresentationTimingGOOGLE~^~VUID-vkGetPastPresentationTimingGOOGLE-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPastPresentationTimingGOOGLE-device-parameter)~^~implicit
VALIDATION_ERROR_2b41ec01~^~N~^~Unknown~^~vkGetPastPresentationTimingGOOGLE~^~VUID-vkGetPastPresentationTimingGOOGLE-pPresentationTimingCount-parameter~^~core~^~The spec valid usage text states 'pPresentationTimingCount must be a pointer to a uint32_t value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPastPresentationTimingGOOGLE-pPresentationTimingCount-parameter)~^~implicit
VALIDATION_ERROR_2b41ee01~^~Y~^~Unknown~^~vkGetPastPresentationTimingGOOGLE~^~VUID-vkGetPastPresentationTimingGOOGLE-pPresentationTimings-parameter~^~core~^~The spec valid usage text states 'If the value referenced by pPresentationTimingCount is not 0, and pPresentationTimings is not NULL, pPresentationTimings must be a pointer to an array of pPresentationTimingCount VkPastPresentationTimingGOOGLE structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPastPresentationTimingGOOGLE-pPresentationTimings-parameter)~^~implicit
@@ -2845,9 +2864,9 @@ VALIDATION_ERROR_2b627a01~^~Y~^~Unknown~^~vkGetPhysicalDeviceDisplayPlanePropert
VALIDATION_ERROR_2b81f401~^~Y~^~Unknown~^~vkGetPhysicalDeviceDisplayPropertiesKHR~^~VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-pProperties-parameter~^~core~^~The spec valid usage text states 'If the value referenced by pPropertyCount is not 0, and pProperties is not NULL, pProperties must be a pointer to an array of pPropertyCount VkDisplayPropertiesKHR structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-pProperties-parameter)~^~implicit
VALIDATION_ERROR_2b81f601~^~N~^~Unknown~^~vkGetPhysicalDeviceDisplayPropertiesKHR~^~VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-pPropertyCount-parameter~^~core~^~The spec valid usage text states 'pPropertyCount must be a pointer to a uint32_t value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-pPropertyCount-parameter)~^~implicit
VALIDATION_ERROR_2b827a01~^~Y~^~Unknown~^~vkGetPhysicalDeviceDisplayPropertiesKHR~^~VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-physicalDevice-parameter~^~core~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-physicalDevice-parameter)~^~implicit
-VALIDATION_ERROR_2ba16201~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-pExternalBufferInfo-parameter~^~core~^~The spec valid usage text states 'pExternalBufferInfo must be a pointer to a valid VkPhysicalDeviceExternalBufferInfoKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-pExternalBufferInfo-parameter)~^~implicit
-VALIDATION_ERROR_2ba16401~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-pExternalBufferProperties-parameter~^~core~^~The spec valid usage text states 'pExternalBufferProperties must be a pointer to a VkExternalBufferPropertiesKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-pExternalBufferProperties-parameter)~^~implicit
-VALIDATION_ERROR_2ba27a01~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHX~^~VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-physicalDevice-parameter~^~core~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-physicalDevice-parameter)~^~implicit
+VALIDATION_ERROR_2ba16201~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-pExternalBufferInfo-parameter~^~core~^~The spec valid usage text states 'pExternalBufferInfo must be a pointer to a valid VkPhysicalDeviceExternalBufferInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-pExternalBufferInfo-parameter)~^~implicit
+VALIDATION_ERROR_2ba16401~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-pExternalBufferProperties-parameter~^~core~^~The spec valid usage text states 'pExternalBufferProperties must be a pointer to a VkExternalBufferPropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-pExternalBufferProperties-parameter)~^~implicit
+VALIDATION_ERROR_2ba27a01~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-physicalDevice-parameter~^~core~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-physicalDevice-parameter)~^~implicit
VALIDATION_ERROR_2bc08201~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalImageFormatPropertiesNV~^~VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-externalHandleType-parameter~^~core~^~The spec valid usage text states 'externalHandleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-externalHandleType-parameter)~^~implicit
VALIDATION_ERROR_2bc09001~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalImageFormatPropertiesNV~^~VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-flags-parameter)~^~implicit, TBD in parameter validation layer.
VALIDATION_ERROR_2bc09201~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalImageFormatPropertiesNV~^~VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-format-parameter~^~core~^~The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-format-parameter)~^~implicit
@@ -2857,9 +2876,9 @@ VALIDATION_ERROR_2bc2fa01~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalImageFormat
VALIDATION_ERROR_2bc30401~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalImageFormatPropertiesNV~^~VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-type-parameter~^~core~^~The spec valid usage text states 'type must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-type-parameter)~^~implicit
VALIDATION_ERROR_2bc30601~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalImageFormatPropertiesNV~^~VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-usage-parameter~^~core~^~The spec valid usage text states 'usage must be a valid combination of VkImageUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-usage-parameter)~^~implicit
VALIDATION_ERROR_2bc30603~^~Y~^~Unknown~^~vkGetPhysicalDeviceExternalImageFormatPropertiesNV~^~VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-usage-requiredbitmask~^~core~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-usage-requiredbitmask)~^~implicit
-VALIDATION_ERROR_2be16801~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHX~^~VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-pExternalSemaphoreInfo-parameter~^~core~^~The spec valid usage text states 'pExternalSemaphoreInfo must be a pointer to a valid VkPhysicalDeviceExternalSemaphoreInfoKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-pExternalSemaphoreInfo-parameter)~^~implicit
-VALIDATION_ERROR_2be16a01~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHX~^~VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-pExternalSemaphoreProperties-parameter~^~core~^~The spec valid usage text states 'pExternalSemaphoreProperties must be a pointer to a VkExternalSemaphorePropertiesKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-pExternalSemaphoreProperties-parameter)~^~implicit
-VALIDATION_ERROR_2be27a01~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHX~^~VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-physicalDevice-parameter~^~core~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-physicalDevice-parameter)~^~implicit
+VALIDATION_ERROR_2be16801~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-pExternalSemaphoreInfo-parameter~^~core~^~The spec valid usage text states 'pExternalSemaphoreInfo must be a pointer to a valid VkPhysicalDeviceExternalSemaphoreInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-pExternalSemaphoreInfo-parameter)~^~implicit
+VALIDATION_ERROR_2be16a01~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-pExternalSemaphoreProperties-parameter~^~core~^~The spec valid usage text states 'pExternalSemaphoreProperties must be a pointer to a VkExternalSemaphorePropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-pExternalSemaphoreProperties-parameter)~^~implicit
+VALIDATION_ERROR_2be27a01~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalSemaphorePropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-physicalDevice-parameter~^~core~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-physicalDevice-parameter)~^~implicit
VALIDATION_ERROR_2c016e01~^~Y~^~None~^~vkGetPhysicalDeviceFeatures~^~VUID-vkGetPhysicalDeviceFeatures-pFeatures-parameter~^~core~^~The spec valid usage text states 'pFeatures must be a pointer to a VkPhysicalDeviceFeatures structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceFeatures-pFeatures-parameter)~^~implicit
VALIDATION_ERROR_2c027a01~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures~^~VUID-vkGetPhysicalDeviceFeatures-physicalDevice-parameter~^~core~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceFeatures-physicalDevice-parameter)~^~implicit
VALIDATION_ERROR_2c216e01~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-vkGetPhysicalDeviceFeatures2KHR-pFeatures-parameter~^~core~^~The spec valid usage text states 'pFeatures must be a pointer to a VkPhysicalDeviceFeatures2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceFeatures2KHR-pFeatures-parameter)~^~implicit
@@ -2982,27 +3001,29 @@ VALIDATION_ERROR_30005601~^~Y~^~None~^~vkGetRenderAreaGranularity~^~VUID-vkGetRe
VALIDATION_ERROR_30017a01~^~Y~^~Unknown~^~vkGetRenderAreaGranularity~^~VUID-vkGetRenderAreaGranularity-pGranularity-parameter~^~core~^~The spec valid usage text states 'pGranularity must be a pointer to a VkExtent2D structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetRenderAreaGranularity-pGranularity-parameter)~^~implicit
VALIDATION_ERROR_3002ae01~^~Y~^~None~^~vkGetRenderAreaGranularity~^~VUID-vkGetRenderAreaGranularity-renderPass-parameter~^~core~^~The spec valid usage text states 'renderPass must be a valid VkRenderPass handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetRenderAreaGranularity-renderPass-parameter)~^~implicit
VALIDATION_ERROR_3002ae07~^~Y~^~Unknown~^~vkGetRenderAreaGranularity~^~VUID-vkGetRenderAreaGranularity-renderPass-parent~^~core~^~The spec valid usage text states 'renderPass must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetRenderAreaGranularity-renderPass-parent)~^~implicit
-VALIDATION_ERROR_302008d8~^~N~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-handleType-01132~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportSemaphoreCreateInfoKHX::handleTypes when semaphore's current state was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-01132)~^~
-VALIDATION_ERROR_302008da~^~N~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-semaphore-01133~^~core~^~The spec valid usage text states 'semaphore must not currently have its state replaced by imported semaphore state as described below in Importing Semaphore State unless that imported semaphore state's handle type was included in VkExternalSemaphorePropertiesKHX::exportFromImportedHandleTypes.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-semaphore-01133)~^~
-VALIDATION_ERROR_302008dc~^~N~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-handleType-01134~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with temporary import semantics, as defined below in Importing Semaphore State, there must be no queue waiting on semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-01134)~^~
-VALIDATION_ERROR_302008de~^~N~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-handleType-01135~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with temporary import semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-01135)~^~
-VALIDATION_ERROR_302008e0~^~N~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-handleType-01136~^~core~^~The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-01136)~^~
-VALIDATION_ERROR_30205601~^~N~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-device-parameter)~^~implicit
-VALIDATION_ERROR_30209c01~^~Y~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_30216c01~^~Y~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-pFd-parameter~^~core~^~The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-pFd-parameter)~^~implicit
-VALIDATION_ERROR_3022b801~^~N~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-semaphore-parameter)~^~implicit
-VALIDATION_ERROR_3022b807~^~N~^~Unknown~^~vkGetSemaphoreFdKHX~^~VUID-vkGetSemaphoreFdKHX-semaphore-parent~^~core~^~The spec valid usage text states 'semaphore must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-semaphore-parent)~^~implicit
-VALIDATION_ERROR_304008cc~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-handleType-01126~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportSemaphoreCreateInfoKHX::handleTypes when semaphore's current state was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01126)~^~
-VALIDATION_ERROR_304008ce~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-handleType-01127~^~core~^~The spec valid usage text states 'If handleType is defined as an NT handle, vkGetSemaphoreWin32HandleKHX must be called no more than once for each valid unique combination of semaphore and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01127)~^~
-VALIDATION_ERROR_304008d0~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-semaphore-01128~^~core~^~The spec valid usage text states 'semaphore must not currently have its state replaced by imported semaphore state as described below in Importing Semaphore State unless that imported semaphore state's handle type was included in VkExternalSemaphorePropertiesKHX::exportFromImportedHandleTypes.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-semaphore-01128)~^~
-VALIDATION_ERROR_304008d2~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-handleType-01129~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with temporary import semantics, as defined below in Importing Semaphore State, there must be no queue waiting on semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01129)~^~
-VALIDATION_ERROR_304008d4~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-handleType-01130~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with temporary import semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01130)~^~
-VALIDATION_ERROR_304008d6~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-handleType-01131~^~core~^~The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01131)~^~
-VALIDATION_ERROR_30405601~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-device-parameter)~^~implicit
-VALIDATION_ERROR_30409c01~^~Y~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-parameter)~^~implicit
-VALIDATION_ERROR_30417c01~^~Y~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-pHandle-parameter~^~core~^~The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-pHandle-parameter)~^~implicit
-VALIDATION_ERROR_3042b801~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-semaphore-parameter)~^~implicit
-VALIDATION_ERROR_3042b807~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHX~^~VUID-vkGetSemaphoreWin32HandleKHX-semaphore-parent~^~core~^~The spec valid usage text states 'semaphore must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-semaphore-parent)~^~implicit
+VALIDATION_ERROR_302008d8~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-handleType-01132~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportSemaphoreCreateInfoKHR::handleTypes when semaphore's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-01132)~^~
+VALIDATION_ERROR_302008da~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-semaphore-01133~^~core~^~The spec valid usage text states 'semaphore must not currently have its payload replaced by an imported payload as described below in Importing Semaphore Payloads unless that imported payload's handle type was included in VkExternalSemaphorePropertiesKHR::exportFromImportedHandleTypes for handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-semaphore-01133)~^~
+VALIDATION_ERROR_302008dc~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-handleType-01134~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, as defined below in Importing Semaphore Payloads, there must be no queue waiting on semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-01134)~^~
+VALIDATION_ERROR_302008de~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-handleType-01135~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-01135)~^~
+VALIDATION_ERROR_302008e0~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-handleType-01136~^~core~^~The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-01136)~^~
+VALIDATION_ERROR_30205601~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_30209c01~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_30216c01~^~Y~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-pFd-parameter~^~core~^~The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-pFd-parameter)~^~implicit
+VALIDATION_ERROR_3022b801~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-semaphore-parameter)~^~implicit
+VALIDATION_ERROR_3022b807~^~N~^~Unknown~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-semaphore-parent~^~core~^~The spec valid usage text states 'semaphore must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-semaphore-parent)~^~implicit
+VALIDATION_ERROR_30239e01~^~N~^~None~^~vkGetSemaphoreFdKHR~^~VUID-vkGetSemaphoreFdKHR-pGetFdInfo-parameter~^~core~^~The spec valid usage text states 'pGetFdInfo must be a pointer to a valid VkSemaphoreGetFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-pGetFdInfo-parameter)~^~implicit
+VALIDATION_ERROR_304008cc~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-handleType-01126~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportSemaphoreCreateInfoKHR::handleTypes when the semaphore's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01126)~^~
+VALIDATION_ERROR_304008ce~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-handleType-01127~^~core~^~The spec valid usage text states 'If handleType is defined as an NT handle, vkGetSemaphoreWin32HandleKHR must be called no more than once for each valid unique combination of semaphore and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01127)~^~
+VALIDATION_ERROR_304008d0~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-semaphore-01128~^~core~^~The spec valid usage text states 'semaphore must not currently have its payload replaced by an imported payload as described below in Importing Semaphore Payloads unless that imported payload's handle type was included in VkExternalSemaphorePropertiesKHR::exportFromImportedHandleTypes for handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-semaphore-01128)~^~
+VALIDATION_ERROR_304008d2~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-handleType-01129~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, as defined below in Importing Semaphore Payloads, there must be no queue waiting on semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01129)~^~
+VALIDATION_ERROR_304008d4~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-handleType-01130~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01130)~^~
+VALIDATION_ERROR_304008d6~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-handleType-01131~^~core~^~The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01131)~^~
+VALIDATION_ERROR_30405601~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_30409c01~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_30417c01~^~Y~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-pHandle-parameter~^~core~^~The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-pHandle-parameter)~^~implicit
+VALIDATION_ERROR_3042b801~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-semaphore-parameter)~^~implicit
+VALIDATION_ERROR_3042b807~^~N~^~Unknown~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-semaphore-parent~^~core~^~The spec valid usage text states 'semaphore must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-semaphore-parent)~^~implicit
+VALIDATION_ERROR_3043a001~^~N~^~None~^~vkGetSemaphoreWin32HandleKHR~^~VUID-vkGetSemaphoreWin32HandleKHR-pGetWin32HandleInfo-parameter~^~core~^~The spec valid usage text states 'pGetWin32HandleInfo must be a pointer to a valid VkSemaphoreGetWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-pGetWin32HandleInfo-parameter)~^~implicit
VALIDATION_ERROR_306009ba~^~N~^~Unknown~^~vkGetSwapchainCounterEXT~^~VUID-vkGetSwapchainCounterEXT-swapchain-01245~^~core~^~The spec valid usage text states 'One or more present commands on swapchain must have been processed by the presentation engine.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainCounterEXT-swapchain-01245)~^~
VALIDATION_ERROR_30603601~^~Y~^~Unknown~^~vkGetSwapchainCounterEXT~^~VUID-vkGetSwapchainCounterEXT-counter-parameter~^~core~^~The spec valid usage text states 'counter must be a valid VkSurfaceCounterFlagBitsEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainCounterEXT-counter-parameter)~^~implicit
VALIDATION_ERROR_30605601~^~N~^~Unknown~^~vkGetSwapchainCounterEXT~^~VUID-vkGetSwapchainCounterEXT-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainCounterEXT-device-parameter)~^~implicit
@@ -3014,11 +3035,11 @@ VALIDATION_ERROR_30825601~^~Y~^~Unknown~^~vkGetSwapchainImagesKHR~^~VUID-vkGetSw
VALIDATION_ERROR_3082f001~^~N~^~Unknown~^~vkGetSwapchainImagesKHR~^~VUID-vkGetSwapchainImagesKHR-swapchain-parameter~^~core~^~The spec valid usage text states 'swapchain must be a valid VkSwapchainKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainImagesKHR-swapchain-parameter)~^~implicit
VALIDATION_ERROR_30a05601~^~Y~^~Unknown~^~vkGetSwapchainStatusKHR~^~VUID-vkGetSwapchainStatusKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainStatusKHR-device-parameter)~^~implicit
VALIDATION_ERROR_30a2f001~^~Y~^~Unknown~^~vkGetSwapchainStatusKHR~^~VUID-vkGetSwapchainStatusKHR-swapchain-parameter~^~core~^~The spec valid usage text states 'swapchain must be a valid VkSwapchainKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainStatusKHR-swapchain-parameter)~^~implicit
-VALIDATION_ERROR_30c008ec~^~N~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-vkImportSemaphoreFdKHX-semaphore-01142~^~core~^~The spec valid usage text states 'semaphore must not be associated with any queue command that has not yet completed execution on that queue' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHX-semaphore-01142)~^~
-VALIDATION_ERROR_30c05601~^~N~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-vkImportSemaphoreFdKHX-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHX-device-parameter)~^~implicit
-VALIDATION_ERROR_30c18e01~^~N~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-vkImportSemaphoreFdKHX-pImportSemaphoreFdInfo-parameter~^~core~^~The spec valid usage text states 'pImportSemaphoreFdInfo must be a pointer to a valid VkImportSemaphoreFdInfoKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHX-pImportSemaphoreFdInfo-parameter)~^~implicit
-VALIDATION_ERROR_30e05601~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-vkImportSemaphoreWin32HandleKHX-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreWin32HandleKHX-device-parameter)~^~implicit
-VALIDATION_ERROR_30e19001~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHX~^~VUID-vkImportSemaphoreWin32HandleKHX-pImportSemaphoreWin32HandleInfo-parameter~^~core~^~The spec valid usage text states 'pImportSemaphoreWin32HandleInfo must be a pointer to a valid VkImportSemaphoreWin32HandleInfoKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreWin32HandleKHX-pImportSemaphoreWin32HandleInfo-parameter)~^~implicit
+VALIDATION_ERROR_30c008ec~^~N~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-vkImportSemaphoreFdKHR-semaphore-01142~^~core~^~The spec valid usage text states 'semaphore must not be associated with any queue command that has not yet completed execution on that queue' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHR-semaphore-01142)~^~
+VALIDATION_ERROR_30c05601~^~N~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-vkImportSemaphoreFdKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_30c18e01~^~N~^~Unknown~^~vkImportSemaphoreFdKHR~^~VUID-vkImportSemaphoreFdKHR-pImportSemaphoreFdInfo-parameter~^~core~^~The spec valid usage text states 'pImportSemaphoreFdInfo must be a pointer to a valid VkImportSemaphoreFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHR-pImportSemaphoreFdInfo-parameter)~^~implicit
+VALIDATION_ERROR_30e05601~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-vkImportSemaphoreWin32HandleKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreWin32HandleKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_30e19001~^~N~^~Unknown~^~vkImportSemaphoreWin32HandleKHR~^~VUID-vkImportSemaphoreWin32HandleKHR-pImportSemaphoreWin32HandleInfo-parameter~^~core~^~The spec valid usage text states 'pImportSemaphoreWin32HandleInfo must be a pointer to a valid VkImportSemaphoreWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreWin32HandleKHR-pImportSemaphoreWin32HandleInfo-parameter)~^~implicit
VALIDATION_ERROR_31005601~^~Y~^~None~^~vkInvalidateMappedMemoryRanges~^~VUID-vkInvalidateMappedMemoryRanges-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkInvalidateMappedMemoryRanges-device-parameter)~^~implicit
VALIDATION_ERROR_3100c81b~^~N~^~Unknown~^~vkInvalidateMappedMemoryRanges~^~VUID-vkInvalidateMappedMemoryRanges-memoryRangeCount-arraylength~^~core~^~The spec valid usage text states 'memoryRangeCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkInvalidateMappedMemoryRanges-memoryRangeCount-arraylength)~^~implicit
VALIDATION_ERROR_3101b201~^~Y~^~Unknown~^~vkInvalidateMappedMemoryRanges~^~VUID-vkInvalidateMappedMemoryRanges-pMemoryRanges-parameter~^~core~^~The spec valid usage text states 'pMemoryRanges must be a pointer to an array of memoryRangeCount valid VkMappedMemoryRange structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkInvalidateMappedMemoryRanges-pMemoryRanges-parameter)~^~implicit
@@ -3153,12 +3174,12 @@ VALIDATION_ERROR_33e05601~^~Y~^~None~^~vkWaitForFences~^~VUID-vkWaitForFences-de
VALIDATION_ERROR_33e08a1b~^~N~^~Unknown~^~vkWaitForFences~^~VUID-vkWaitForFences-fenceCount-arraylength~^~core~^~The spec valid usage text states 'fenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-fenceCount-arraylength)~^~implicit
VALIDATION_ERROR_33e17201~^~Y~^~Unknown~^~vkWaitForFences~^~VUID-vkWaitForFences-pFences-parameter~^~core~^~The spec valid usage text states 'pFences must be a pointer to an array of fenceCount valid VkFence handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parameter)~^~implicit
VALIDATION_ERROR_33e17207~^~Y~^~None~^~vkWaitForFences~^~VUID-vkWaitForFences-pFences-parent~^~core~^~The spec valid usage text states 'Each element of pFences must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parent)~^~implicit
-VALIDATION_ERROR_3401c40d~^~N~^~None~^~VkPhysicalDeviceProperties2KHR~^~VUID-VkPhysicalDeviceProperties2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceIDPropertiesKHX, VkPhysicalDeviceMultiviewPropertiesKHX, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, or VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceProperties2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3401c40d~^~N~^~None~^~VkPhysicalDeviceProperties2KHR~^~VUID-VkPhysicalDeviceProperties2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceIDPropertiesKHR, VkPhysicalDeviceMultiviewPropertiesKHX, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, or VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceProperties2KHR-pNext-pNext)~^~implicit
VALIDATION_ERROR_3402b00b~^~Y~^~None~^~VkPhysicalDeviceProperties2KHR~^~VUID-VkPhysicalDeviceProperties2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceProperties2KHR-sType-sType)~^~implicit
VALIDATION_ERROR_3402b00f~^~N~^~None~^~VkPhysicalDeviceProperties2KHR~^~VUID-VkPhysicalDeviceProperties2KHR-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceProperties2KHR-sType-unique)~^~implicit
VALIDATION_ERROR_3421c40d~^~N~^~None~^~VkFormatProperties2KHR~^~VUID-VkFormatProperties2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFormatProperties2KHR-pNext-pNext)~^~implicit
VALIDATION_ERROR_3422b00b~^~Y~^~None~^~VkFormatProperties2KHR~^~VUID-VkFormatProperties2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFormatProperties2KHR-sType-sType)~^~implicit
-VALIDATION_ERROR_3441c40d~^~N~^~None~^~VkImageFormatProperties2KHR~^~VUID-VkImageFormatProperties2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExternalImageFormatPropertiesKHX or VkTextureLODGatherFormatPropertiesAMD' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageFormatProperties2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3441c40d~^~N~^~None~^~VkImageFormatProperties2KHR~^~VUID-VkImageFormatProperties2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExternalImageFormatPropertiesKHR or VkTextureLODGatherFormatPropertiesAMD' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageFormatProperties2KHR-pNext-pNext)~^~implicit
VALIDATION_ERROR_3442b00b~^~Y~^~None~^~VkImageFormatProperties2KHR~^~VUID-VkImageFormatProperties2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageFormatProperties2KHR-sType-sType)~^~implicit
VALIDATION_ERROR_3442b00f~^~N~^~None~^~VkImageFormatProperties2KHR~^~VUID-VkImageFormatProperties2KHR-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageFormatProperties2KHR-sType-unique)~^~implicit
VALIDATION_ERROR_3461c40d~^~N~^~None~^~VkPhysicalDeviceMemoryProperties2KHR~^~VUID-VkPhysicalDeviceMemoryProperties2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMemoryProperties2KHR-pNext-pNext)~^~implicit
@@ -3167,10 +3188,10 @@ VALIDATION_ERROR_3481c40d~^~N~^~None~^~VkSurfaceCapabilities2KHR~^~VUID-VkSurfac
VALIDATION_ERROR_3482b00b~^~Y~^~None~^~VkSurfaceCapabilities2KHR~^~VUID-VkSurfaceCapabilities2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSurfaceCapabilities2KHR-sType-sType)~^~implicit
VALIDATION_ERROR_34a1c40d~^~N~^~None~^~VkDeviceGroupPresentCapabilitiesKHX~^~VUID-VkDeviceGroupPresentCapabilitiesKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceGroupPresentCapabilitiesKHX-pNext-pNext)~^~implicit
VALIDATION_ERROR_34a2b00b~^~Y~^~None~^~VkDeviceGroupPresentCapabilitiesKHX~^~VUID-VkDeviceGroupPresentCapabilitiesKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceGroupPresentCapabilitiesKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_34c1c40d~^~N~^~None~^~VkExternalBufferPropertiesKHX~^~VUID-VkExternalBufferPropertiesKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalBufferPropertiesKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_34c2b00b~^~Y~^~None~^~VkExternalBufferPropertiesKHX~^~VUID-VkExternalBufferPropertiesKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalBufferPropertiesKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_3521c40d~^~N~^~None~^~VkExternalSemaphorePropertiesKHX~^~VUID-VkExternalSemaphorePropertiesKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalSemaphorePropertiesKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_3522b00b~^~Y~^~None~^~VkExternalSemaphorePropertiesKHX~^~VUID-VkExternalSemaphorePropertiesKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalSemaphorePropertiesKHX-sType-sType)~^~implicit
+VALIDATION_ERROR_34c1c40d~^~N~^~None~^~VkExternalBufferPropertiesKHR~^~VUID-VkExternalBufferPropertiesKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalBufferPropertiesKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_34c2b00b~^~Y~^~None~^~VkExternalBufferPropertiesKHR~^~VUID-VkExternalBufferPropertiesKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalBufferPropertiesKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3521c40d~^~N~^~None~^~VkExternalSemaphorePropertiesKHR~^~VUID-VkExternalSemaphorePropertiesKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalSemaphorePropertiesKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3522b00b~^~Y~^~None~^~VkExternalSemaphorePropertiesKHR~^~VUID-VkExternalSemaphorePropertiesKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalSemaphorePropertiesKHR-sType-sType)~^~implicit
VALIDATION_ERROR_3541c40d~^~N~^~None~^~VkQueueFamilyProperties2KHR~^~VUID-VkQueueFamilyProperties2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkQueueFamilyProperties2KHR-pNext-pNext)~^~implicit
VALIDATION_ERROR_3542b00b~^~N~^~None~^~VkQueueFamilyProperties2KHR~^~VUID-VkQueueFamilyProperties2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkQueueFamilyProperties2KHR-sType-sType)~^~implicit
VALIDATION_ERROR_3561c40d~^~N~^~None~^~VkSparseImageFormatProperties2KHR~^~VUID-VkSparseImageFormatProperties2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSparseImageFormatProperties2KHR-pNext-pNext)~^~implicit
@@ -3179,10 +3200,10 @@ VALIDATION_ERROR_3581c40d~^~N~^~None~^~VkSurfaceFormat2KHR~^~VUID-VkSurfaceForma
VALIDATION_ERROR_3582b00b~^~N~^~None~^~VkSurfaceFormat2KHR~^~VUID-VkSurfaceFormat2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSurfaceFormat2KHR-sType-sType)~^~implicit
VALIDATION_ERROR_35c1c40d~^~N~^~None~^~VkPhysicalDeviceMultiviewPropertiesKHX~^~VUID-VkPhysicalDeviceMultiviewPropertiesKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPropertiesKHX-pNext-pNext)~^~implicit
VALIDATION_ERROR_35c2b00b~^~N~^~None~^~VkPhysicalDeviceMultiviewPropertiesKHX~^~VUID-VkPhysicalDeviceMultiviewPropertiesKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPropertiesKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_3601c40d~^~N~^~None~^~VkExternalImageFormatPropertiesKHX~^~VUID-VkExternalImageFormatPropertiesKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalImageFormatPropertiesKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_3602b00b~^~N~^~None~^~VkExternalImageFormatPropertiesKHX~^~VUID-VkExternalImageFormatPropertiesKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalImageFormatPropertiesKHX-sType-sType)~^~implicit
-VALIDATION_ERROR_3621c40d~^~N~^~None~^~VkPhysicalDeviceIDPropertiesKHX~^~VUID-VkPhysicalDeviceIDPropertiesKHX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceIDPropertiesKHX-pNext-pNext)~^~implicit
-VALIDATION_ERROR_3622b00b~^~N~^~None~^~VkPhysicalDeviceIDPropertiesKHX~^~VUID-VkPhysicalDeviceIDPropertiesKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceIDPropertiesKHX-sType-sType)~^~implicit
+VALIDATION_ERROR_3601c40d~^~N~^~None~^~VkExternalImageFormatPropertiesKHR~^~VUID-VkExternalImageFormatPropertiesKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalImageFormatPropertiesKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3602b00b~^~N~^~None~^~VkExternalImageFormatPropertiesKHR~^~VUID-VkExternalImageFormatPropertiesKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalImageFormatPropertiesKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3621c40d~^~N~^~None~^~VkPhysicalDeviceIDPropertiesKHR~^~VUID-VkPhysicalDeviceIDPropertiesKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceIDPropertiesKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3622b00b~^~N~^~None~^~VkPhysicalDeviceIDPropertiesKHR~^~VUID-VkPhysicalDeviceIDPropertiesKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceIDPropertiesKHR-sType-sType)~^~implicit
VALIDATION_ERROR_3641c40d~^~N~^~None~^~VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX~^~VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-pNext-pNext)~^~implicit
VALIDATION_ERROR_3642b00b~^~N~^~None~^~VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX~^~VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-sType-sType)~^~implicit
VALIDATION_ERROR_37e2b00b~^~N~^~None~^~VkSharedPresentSurfaceCapabilitiesKHR~^~VUID-VkSharedPresentSurfaceCapabilitiesKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSharedPresentSurfaceCapabilitiesKHR-sType-sType)~^~implicit
@@ -3209,4 +3230,114 @@ VALIDATION_ERROR_38c2b00b~^~N~^~None~^~VkPipelineCoverageToColorStateCreateInfoN
VALIDATION_ERROR_38e1c40d~^~N~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-pNext-pNext)~^~implicit
VALIDATION_ERROR_38e2b00b~^~N~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType)~^~implicit
VALIDATION_ERROR_38e35001~^~N~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter~^~core~^~The spec valid usage text states 'reductionMode must be a valid VkSamplerReductionModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter)~^~implicit
+VALIDATION_ERROR_39400b4c~^~N~^~None~^~VkExportFenceCreateInfoKHR~^~VUID-VkExportFenceCreateInfoKHR-handleTypes-01446~^~core~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalFencePropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceCreateInfoKHR-handleTypes-01446)~^~
+VALIDATION_ERROR_39409e01~^~N~^~None~^~VkExportFenceCreateInfoKHR~^~VUID-VkExportFenceCreateInfoKHR-handleTypes-parameter~^~core~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalFenceHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceCreateInfoKHR-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_3941c40d~^~N~^~None~^~VkExportFenceCreateInfoKHR~^~VUID-VkExportFenceCreateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceCreateInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3942b00b~^~N~^~None~^~VkExportFenceCreateInfoKHR~^~VUID-VkExportFenceCreateInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceCreateInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_39609c01~^~Y~^~None~^~VkPhysicalDeviceExternalFenceInfoKHR~^~VUID-VkPhysicalDeviceExternalFenceInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_3961c40d~^~Y~^~None~^~VkPhysicalDeviceExternalFenceInfoKHR~^~VUID-VkPhysicalDeviceExternalFenceInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3962b00b~^~Y~^~None~^~VkPhysicalDeviceExternalFenceInfoKHR~^~VUID-VkPhysicalDeviceExternalFenceInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3981c40d~^~N~^~None~^~VkExternalFencePropertiesKHR~^~VUID-VkExternalFencePropertiesKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalFencePropertiesKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3982b00b~^~Y~^~None~^~VkExternalFencePropertiesKHR~^~VUID-VkExternalFencePropertiesKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalFencePropertiesKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_39a27a01~^~N~^~None~^~vkGetPhysicalDeviceExternalFencePropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-physicalDevice-parameter~^~core~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-physicalDevice-parameter)~^~implicit
+VALIDATION_ERROR_39a3a201~^~N~^~None~^~vkGetPhysicalDeviceExternalFencePropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-pExternalFenceInfo-parameter~^~core~^~The spec valid usage text states 'pExternalFenceInfo must be a pointer to a valid VkPhysicalDeviceExternalFenceInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-pExternalFenceInfo-parameter)~^~implicit
+VALIDATION_ERROR_39a3a401~^~N~^~None~^~vkGetPhysicalDeviceExternalFencePropertiesKHR~^~VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-pExternalFenceProperties-parameter~^~core~^~The spec valid usage text states 'pExternalFenceProperties must be a pointer to a VkExternalFencePropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-pExternalFenceProperties-parameter)~^~implicit
+VALIDATION_ERROR_39c00b70~^~N~^~None~^~VkImportFenceFdInfoKHR~^~VUID-VkImportFenceFdInfoKHR-handleType-01464~^~core~^~The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportFenceFdInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-handleType-01464)~^~
+VALIDATION_ERROR_39c00b72~^~N~^~None~^~VkImportFenceFdInfoKHR~^~VUID-VkImportFenceFdInfoKHR-handleType-01465~^~core~^~The spec valid usage text states 'The fence from which handleType was exported must have been created on the same underlying physical device as fence.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-handleType-01465)~^~
+VALIDATION_ERROR_39c08801~^~N~^~None~^~VkImportFenceFdInfoKHR~^~VUID-VkImportFenceFdInfoKHR-fence-parameter~^~core~^~The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-fence-parameter)~^~implicit
+VALIDATION_ERROR_39c09001~^~Y~^~None~^~VkImportFenceFdInfoKHR~^~VUID-VkImportFenceFdInfoKHR-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkFenceImportFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-flags-parameter)~^~implicit
+VALIDATION_ERROR_39c09c01~^~Y~^~None~^~VkImportFenceFdInfoKHR~^~VUID-VkImportFenceFdInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_39c1c40d~^~Y~^~None~^~VkImportFenceFdInfoKHR~^~VUID-VkImportFenceFdInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_39c2b00b~^~Y~^~None~^~VkImportFenceFdInfoKHR~^~VUID-VkImportFenceFdInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_39e00b5a~^~N~^~None~^~VkFenceGetFdInfoKHR~^~VUID-VkFenceGetFdInfoKHR-handleType-01453~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportFenceCreateInfoKHR::handleTypes when fence's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-handleType-01453)~^~
+VALIDATION_ERROR_39e00b5c~^~N~^~None~^~VkFenceGetFdInfoKHR~^~VUID-VkFenceGetFdInfoKHR-handleType-01454~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, fence must be signaled, or have an associated fence signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-handleType-01454)~^~
+VALIDATION_ERROR_39e00b5e~^~N~^~None~^~VkFenceGetFdInfoKHR~^~VUID-VkFenceGetFdInfoKHR-fence-01455~^~core~^~The spec valid usage text states 'fence must not currently have its payload replaced by an imported payload as described below in Importing Fence Payloads unless that imported payload's handle type was included in VkExternalFencePropertiesKHR::exportFromImportedHandleTypes for handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-fence-01455)~^~
+VALIDATION_ERROR_39e00b60~^~N~^~None~^~VkFenceGetFdInfoKHR~^~VUID-VkFenceGetFdInfoKHR-handleType-01456~^~core~^~The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-handleType-01456)~^~
+VALIDATION_ERROR_39e08801~^~N~^~None~^~VkFenceGetFdInfoKHR~^~VUID-VkFenceGetFdInfoKHR-fence-parameter~^~core~^~The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-fence-parameter)~^~implicit
+VALIDATION_ERROR_39e09c01~^~Y~^~None~^~VkFenceGetFdInfoKHR~^~VUID-VkFenceGetFdInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_39e1c40d~^~Y~^~None~^~VkFenceGetFdInfoKHR~^~VUID-VkFenceGetFdInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_39e2b00b~^~Y~^~None~^~VkFenceGetFdInfoKHR~^~VUID-VkFenceGetFdInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3a000b6e~^~N~^~None~^~vkImportFenceFdKHR~^~VUID-vkImportFenceFdKHR-fence-01463~^~core~^~The spec valid usage text states 'fence must not be associated with any queue command that has not yet completed execution on that queue' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceFdKHR-fence-01463)~^~
+VALIDATION_ERROR_3a005601~^~N~^~None~^~vkImportFenceFdKHR~^~VUID-vkImportFenceFdKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceFdKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_3a03a801~^~N~^~None~^~vkImportFenceFdKHR~^~VUID-vkImportFenceFdKHR-pImportFenceFdInfo-parameter~^~core~^~The spec valid usage text states 'pImportFenceFdInfo must be a pointer to a valid VkImportFenceFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceFdKHR-pImportFenceFdInfo-parameter)~^~implicit
+VALIDATION_ERROR_3a205601~^~N~^~None~^~vkGetFenceFdKHR~^~VUID-vkGetFenceFdKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceFdKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_3a216c01~^~Y~^~None~^~vkGetFenceFdKHR~^~VUID-vkGetFenceFdKHR-pFd-parameter~^~core~^~The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceFdKHR-pFd-parameter)~^~implicit
+VALIDATION_ERROR_3a239e01~^~N~^~None~^~vkGetFenceFdKHR~^~VUID-vkGetFenceFdKHR-pGetFdInfo-parameter~^~core~^~The spec valid usage text states 'pGetFdInfo must be a pointer to a valid VkFenceGetFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceFdKHR-pGetFdInfo-parameter)~^~implicit
+VALIDATION_ERROR_3a400b62~^~N~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-handleType-01457~^~core~^~The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportFenceWin32HandleInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01457)~^~
+VALIDATION_ERROR_3a400b64~^~N~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-handleType-01458~^~core~^~The spec valid usage text states 'The fence from which handleType or name was exported must have been created on the same underlying physical device as fence.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01458)~^~
+VALIDATION_ERROR_3a400b66~^~N~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-handleType-01459~^~core~^~The spec valid usage text states 'If handleType is not VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01459)~^~
+VALIDATION_ERROR_3a400b68~^~N~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-handleType-01460~^~core~^~The spec valid usage text states 'If handleType is not 0 and handle is NULL, name must name a valid synchronization primitive of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01460)~^~
+VALIDATION_ERROR_3a400b6a~^~N~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-handleType-01461~^~core~^~The spec valid usage text states 'If handleType is not 0 and name is NULL, handle must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01461)~^~
+VALIDATION_ERROR_3a400b6c~^~N~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-handle-01462~^~core~^~The spec valid usage text states 'If handle is not NULL, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handle-01462)~^~
+VALIDATION_ERROR_3a408801~^~N~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-fence-parameter~^~core~^~The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-fence-parameter)~^~implicit
+VALIDATION_ERROR_3a409001~^~Y~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkFenceImportFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-flags-parameter)~^~implicit
+VALIDATION_ERROR_3a409c01~^~Y~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_3a41c40d~^~Y~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3a42b00b~^~Y~^~None~^~VkImportFenceWin32HandleInfoKHR~^~VUID-VkImportFenceWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3a600b4e~^~N~^~None~^~VkExportFenceWin32HandleInfoKHR~^~VUID-VkExportFenceWin32HandleInfoKHR-handleTypes-01447~^~core~^~The spec valid usage text states 'If VkExportFenceCreateInfoKHR::handleTypes does not include VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, VkExportFenceWin32HandleInfoKHR must not be in the pNext chain of VkFenceCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-handleTypes-01447)~^~
+VALIDATION_ERROR_3a60f401~^~N~^~None~^~VkExportFenceWin32HandleInfoKHR~^~VUID-VkExportFenceWin32HandleInfoKHR-pAttributes-parameter~^~core~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-pAttributes-parameter)~^~implicit
+VALIDATION_ERROR_3a61c40d~^~N~^~None~^~VkExportFenceWin32HandleInfoKHR~^~VUID-VkExportFenceWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3a62b00b~^~N~^~None~^~VkExportFenceWin32HandleInfoKHR~^~VUID-VkExportFenceWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3a800b50~^~N~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-handleType-01448~^~core~^~The spec valid usage text states 'handleType must have been included in VkExportFenceCreateInfoKHR::handleTypes when the fence's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01448)~^~
+VALIDATION_ERROR_3a800b52~^~N~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-handleType-01449~^~core~^~The spec valid usage text states 'If handleType is defined as an NT handle, vkGetFenceWin32HandleKHR must be called no more than once for each valid unique combination of fence and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01449)~^~
+VALIDATION_ERROR_3a800b54~^~N~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-fence-01450~^~core~^~The spec valid usage text states 'fence must not currently have its payload replaced by an imported payload as described below in Importing Fence Payloads unless that imported payload's handle type was included in VkExternalFencePropertiesKHR::exportFromImportedHandleTypes for handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-fence-01450)~^~
+VALIDATION_ERROR_3a800b56~^~N~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-handleType-01451~^~core~^~The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, fence must be signaled, or have an associated fence signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01451)~^~
+VALIDATION_ERROR_3a800b58~^~N~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-handleType-01452~^~core~^~The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01452)~^~
+VALIDATION_ERROR_3a808801~^~N~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-fence-parameter~^~core~^~The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-fence-parameter)~^~implicit
+VALIDATION_ERROR_3a809c01~^~Y~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_3a81c40d~^~Y~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3a82b00b~^~Y~^~None~^~VkFenceGetWin32HandleInfoKHR~^~VUID-VkFenceGetWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3aa05601~^~N~^~None~^~vkImportFenceWin32HandleKHR~^~VUID-vkImportFenceWin32HandleKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceWin32HandleKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_3aa3aa01~^~N~^~None~^~vkImportFenceWin32HandleKHR~^~VUID-vkImportFenceWin32HandleKHR-pImportFenceWin32HandleInfo-parameter~^~core~^~The spec valid usage text states 'pImportFenceWin32HandleInfo must be a pointer to a valid VkImportFenceWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceWin32HandleKHR-pImportFenceWin32HandleInfo-parameter)~^~implicit
+VALIDATION_ERROR_3ac05601~^~N~^~None~^~vkGetFenceWin32HandleKHR~^~VUID-vkGetFenceWin32HandleKHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceWin32HandleKHR-device-parameter)~^~implicit
+VALIDATION_ERROR_3ac17c01~^~Y~^~None~^~vkGetFenceWin32HandleKHR~^~VUID-vkGetFenceWin32HandleKHR-pHandle-parameter~^~core~^~The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceWin32HandleKHR-pHandle-parameter)~^~implicit
+VALIDATION_ERROR_3ac3a001~^~N~^~None~^~vkGetFenceWin32HandleKHR~^~VUID-vkGetFenceWin32HandleKHR-pGetWin32HandleInfo-parameter~^~core~^~The spec valid usage text states 'pGetWin32HandleInfo must be a pointer to a valid VkFenceGetWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceWin32HandleKHR-pGetWin32HandleInfo-parameter)~^~implicit
+VALIDATION_ERROR_3ae09c01~^~Y~^~None~^~VkSemaphoreGetFdInfoKHR~^~VUID-VkSemaphoreGetFdInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetFdInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_3ae1c40d~^~Y~^~None~^~VkSemaphoreGetFdInfoKHR~^~VUID-VkSemaphoreGetFdInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetFdInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3ae2b00b~^~Y~^~None~^~VkSemaphoreGetFdInfoKHR~^~VUID-VkSemaphoreGetFdInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetFdInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3ae2b801~^~N~^~None~^~VkSemaphoreGetFdInfoKHR~^~VUID-VkSemaphoreGetFdInfoKHR-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetFdInfoKHR-semaphore-parameter)~^~implicit
+VALIDATION_ERROR_3b009c01~^~Y~^~None~^~VkSemaphoreGetWin32HandleInfoKHR~^~VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_3b01c40d~^~Y~^~None~^~VkSemaphoreGetWin32HandleInfoKHR~^~VUID-VkSemaphoreGetWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3b02b00b~^~Y~^~None~^~VkSemaphoreGetWin32HandleInfoKHR~^~VUID-VkSemaphoreGetWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3b02b801~^~N~^~None~^~VkSemaphoreGetWin32HandleInfoKHR~^~VUID-VkSemaphoreGetWin32HandleInfoKHR-semaphore-parameter~^~core~^~The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetWin32HandleInfoKHR-semaphore-parameter)~^~implicit
+VALIDATION_ERROR_3b209c01~^~Y~^~None~^~VkMemoryGetFdInfoKHR~^~VUID-VkMemoryGetFdInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetFdInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_3b20c601~^~N~^~None~^~VkMemoryGetFdInfoKHR~^~VUID-VkMemoryGetFdInfoKHR-memory-parameter~^~core~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetFdInfoKHR-memory-parameter)~^~implicit
+VALIDATION_ERROR_3b21c40d~^~Y~^~None~^~VkMemoryGetFdInfoKHR~^~VUID-VkMemoryGetFdInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetFdInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3b22b00b~^~Y~^~None~^~VkMemoryGetFdInfoKHR~^~VUID-VkMemoryGetFdInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetFdInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3b409c01~^~Y~^~None~^~VkMemoryGetWin32HandleInfoKHR~^~VUID-VkMemoryGetWin32HandleInfoKHR-handleType-parameter~^~core~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_3b40c601~^~N~^~None~^~VkMemoryGetWin32HandleInfoKHR~^~VUID-VkMemoryGetWin32HandleInfoKHR-memory-parameter~^~core~^~The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-memory-parameter)~^~implicit
+VALIDATION_ERROR_3b41c40d~^~Y~^~None~^~VkMemoryGetWin32HandleInfoKHR~^~VUID-VkMemoryGetWin32HandleInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3b42b00b~^~Y~^~None~^~VkMemoryGetWin32HandleInfoKHR~^~VUID-VkMemoryGetWin32HandleInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3b61c40d~^~N~^~None~^~VkMemoryDedicatedRequirementsKHR~^~VUID-VkMemoryDedicatedRequirementsKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedRequirementsKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3b62b00b~^~N~^~None~^~VkMemoryDedicatedRequirementsKHR~^~VUID-VkMemoryDedicatedRequirementsKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedRequirementsKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3b800009~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-commonparent~^~core~^~The spec valid usage text states 'Both of buffer, and image that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-commonparent)~^~implicit
+VALIDATION_ERROR_3b800b30~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-image-01432~^~core~^~The spec valid usage text states 'At least one of image and buffer must be VK_NULL_HANDLE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01432)~^~
+VALIDATION_ERROR_3b800b32~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-image-01433~^~core~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01433)~^~
+VALIDATION_ERROR_3b800b34~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-image-01434~^~core~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must have been created without VK_IMAGE_CREATE_SPARSE_BINDING_BIT set in VkImageCreateInfo::flags' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01434)~^~
+VALIDATION_ERROR_3b800b36~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01435~^~core~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01435)~^~
+VALIDATION_ERROR_3b800b38~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01436~^~core~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must have been created without VK_BUFFER_CREATE_SPARSE_BINDING_BIT set in VkBufferCreateInfo::flags' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01436)~^~
+VALIDATION_ERROR_3b800b3a~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-image-01437~^~(VK_KHR_external_memory_win32,VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation, the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01437)~^~
+VALIDATION_ERROR_3b800b3c~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01438~^~(VK_KHR_external_memory_win32,VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation, the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01438)~^~
+VALIDATION_ERROR_3b801a01~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-parameter~^~core~^~The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-parameter)~^~implicit
+VALIDATION_ERROR_3b80a001~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-image-parameter~^~core~^~The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-parameter)~^~implicit
+VALIDATION_ERROR_3b81c40d~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3b82b00b~^~N~^~None~^~VkMemoryDedicatedAllocateInfoKHR~^~VUID-VkMemoryDedicatedAllocateInfoKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3ba01a01~^~N~^~None~^~VkBufferMemoryRequirementsInfo2KHR~^~VUID-VkBufferMemoryRequirementsInfo2KHR-buffer-parameter~^~core~^~The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2KHR-buffer-parameter)~^~implicit
+VALIDATION_ERROR_3ba1c40d~^~Y~^~None~^~VkBufferMemoryRequirementsInfo2KHR~^~VUID-VkBufferMemoryRequirementsInfo2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3ba2b00b~^~Y~^~None~^~VkBufferMemoryRequirementsInfo2KHR~^~VUID-VkBufferMemoryRequirementsInfo2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2KHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3bc0a001~^~N~^~None~^~VkImageMemoryRequirementsInfo2KHR~^~VUID-VkImageMemoryRequirementsInfo2KHR-image-parameter~^~core~^~The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2KHR-image-parameter)~^~implicit
+VALIDATION_ERROR_3bc1c40d~^~Y~^~None~^~VkImageMemoryRequirementsInfo2KHR~^~VUID-VkImageMemoryRequirementsInfo2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3bc2b00b~^~Y~^~None~^~VkImageMemoryRequirementsInfo2KHR~^~VUID-VkImageMemoryRequirementsInfo2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2KHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3c01c40d~^~N~^~None~^~VkMemoryRequirements2KHR~^~VUID-VkMemoryRequirements2KHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkMemoryDedicatedRequirementsKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryRequirements2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3c02b00b~^~Y~^~None~^~VkMemoryRequirements2KHR~^~VUID-VkMemoryRequirements2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryRequirements2KHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3c405601~^~N~^~None~^~vkGetImageMemoryRequirements2KHR~^~VUID-vkGetImageMemoryRequirements2KHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements2KHR-device-parameter)~^~implicit
+VALIDATION_ERROR_3c41b401~^~N~^~None~^~vkGetImageMemoryRequirements2KHR~^~VUID-vkGetImageMemoryRequirements2KHR-pMemoryRequirements-parameter~^~core~^~The spec valid usage text states 'pMemoryRequirements must be a pointer to a VkMemoryRequirements2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements2KHR-pMemoryRequirements-parameter)~^~implicit
+VALIDATION_ERROR_3c439c01~^~N~^~None~^~vkGetImageMemoryRequirements2KHR~^~VUID-vkGetImageMemoryRequirements2KHR-pInfo-parameter~^~core~^~The spec valid usage text states 'pInfo must be a pointer to a valid VkImageMemoryRequirementsInfo2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements2KHR-pInfo-parameter)~^~implicit
+VALIDATION_ERROR_3c605601~^~N~^~None~^~vkGetBufferMemoryRequirements2KHR~^~VUID-vkGetBufferMemoryRequirements2KHR-device-parameter~^~core~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetBufferMemoryRequirements2KHR-device-parameter)~^~implicit
+VALIDATION_ERROR_3c61b401~^~N~^~None~^~vkGetBufferMemoryRequirements2KHR~^~VUID-vkGetBufferMemoryRequirements2KHR-pMemoryRequirements-parameter~^~core~^~The spec valid usage text states 'pMemoryRequirements must be a pointer to a VkMemoryRequirements2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetBufferMemoryRequirements2KHR-pMemoryRequirements-parameter)~^~implicit
+VALIDATION_ERROR_3c639c01~^~N~^~None~^~vkGetBufferMemoryRequirements2KHR~^~VUID-vkGetBufferMemoryRequirements2KHR-pInfo-parameter~^~core~^~The spec valid usage text states 'pInfo must be a pointer to a valid VkBufferMemoryRequirementsInfo2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetBufferMemoryRequirements2KHR-pInfo-parameter)~^~implicit
+VALIDATION_ERROR_3ca2b00b~^~N~^~None~^~VkPhysicalDevice16BitStorageFeaturesKHR~^~VUID-VkPhysicalDevice16BitStorageFeaturesKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDevice16BitStorageFeaturesKHR-sType-sType)~^~implicit
+VALIDATION_ERROR_3cc00b2e~^~N~^~None~^~VkPhysicalDeviceVariablePointerFeaturesKHR~^~VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-variablePointers-01431~^~core~^~The spec valid usage text states 'If variablePointers is enabled then variablePointersStorageBuffer must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-variablePointers-01431)~^~
+VALIDATION_ERROR_3cc1c40d~^~N~^~None~^~VkPhysicalDeviceVariablePointerFeaturesKHR~^~VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3cc2b00b~^~N~^~None~^~VkPhysicalDeviceVariablePointerFeaturesKHR~^~VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-sType-sType)~^~implicit
diff --git a/layers/vk_validation_error_messages.h b/layers/vk_validation_error_messages.h
index 40089ea1..2f4786c6 100644
--- a/layers/vk_validation_error_messages.h
+++ b/layers/vk_validation_error_messages.h
@@ -124,6 +124,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_01409001 = 0x01409001,
VALIDATION_ERROR_0141c40d = 0x0141c40d,
VALIDATION_ERROR_0142b00b = 0x0142b00b,
+ VALIDATION_ERROR_0142b00f = 0x0142b00f,
VALIDATION_ERROR_0142c001 = 0x0142c001,
VALIDATION_ERROR_01430601 = 0x01430601,
VALIDATION_ERROR_01430603 = 0x01430603,
@@ -486,6 +487,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_09209001 = 0x09209001,
VALIDATION_ERROR_0921c40d = 0x0921c40d,
VALIDATION_ERROR_0922b00b = 0x0922b00b,
+ VALIDATION_ERROR_0922b00f = 0x0922b00f,
VALIDATION_ERROR_09400009 = 0x09400009,
VALIDATION_ERROR_094006d8 = 0x094006d8,
VALIDATION_ERROR_094006da = 0x094006da,
@@ -674,6 +676,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_09e00ae0 = 0x09e00ae0,
VALIDATION_ERROR_09e00b18 = 0x09e00b18,
VALIDATION_ERROR_09e00b1a = 0x09e00b1a,
+ VALIDATION_ERROR_09e00b46 = 0x09e00b46,
VALIDATION_ERROR_09e09001 = 0x09e09001,
VALIDATION_ERROR_09e09201 = 0x09e09201,
VALIDATION_ERROR_09e0ac01 = 0x09e0ac01,
@@ -784,6 +787,9 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_0b000526 = 0x0b000526,
VALIDATION_ERROR_0b000528 = 0x0b000528,
VALIDATION_ERROR_0b00052a = 0x0b00052a,
+ VALIDATION_ERROR_0b000b3e = 0x0b000b3e,
+ VALIDATION_ERROR_0b000b40 = 0x0b000b40,
+ VALIDATION_ERROR_0b000b42 = 0x0b000b42,
VALIDATION_ERROR_0b009c01 = 0x0b009c01,
VALIDATION_ERROR_0b01c40d = 0x0b01c40d,
VALIDATION_ERROR_0b02b00b = 0x0b02b00b,
@@ -794,12 +800,18 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_0b22b00b = 0x0b22b00b,
VALIDATION_ERROR_0b4008ee = 0x0b4008ee,
VALIDATION_ERROR_0b4008f0 = 0x0b4008f0,
+ VALIDATION_ERROR_0b409001 = 0x0b409001,
VALIDATION_ERROR_0b409c01 = 0x0b409c01,
VALIDATION_ERROR_0b41c40d = 0x0b41c40d,
VALIDATION_ERROR_0b42b00b = 0x0b42b00b,
VALIDATION_ERROR_0b42b801 = 0x0b42b801,
VALIDATION_ERROR_0b6008e8 = 0x0b6008e8,
VALIDATION_ERROR_0b6008ea = 0x0b6008ea,
+ VALIDATION_ERROR_0b600b74 = 0x0b600b74,
+ VALIDATION_ERROR_0b600b76 = 0x0b600b76,
+ VALIDATION_ERROR_0b600b78 = 0x0b600b78,
+ VALIDATION_ERROR_0b600b7a = 0x0b600b7a,
+ VALIDATION_ERROR_0b609001 = 0x0b609001,
VALIDATION_ERROR_0b609c01 = 0x0b609c01,
VALIDATION_ERROR_0b609c03 = 0x0b609c03,
VALIDATION_ERROR_0b61c40d = 0x0b61c40d,
@@ -831,6 +843,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_0be28e01 = 0x0be28e01,
VALIDATION_ERROR_0be29001 = 0x0be29001,
VALIDATION_ERROR_0be2b00b = 0x0be2b00b,
+ VALIDATION_ERROR_0be2b00f = 0x0be2b00f,
VALIDATION_ERROR_0c000a4a = 0x0c000a4a,
VALIDATION_ERROR_0c009005 = 0x0c009005,
VALIDATION_ERROR_0c01c40d = 0x0c01c40d,
@@ -1004,6 +1017,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_0f809005 = 0x0f809005,
VALIDATION_ERROR_0f81c40d = 0x0f81c40d,
VALIDATION_ERROR_0f82b00b = 0x0f82b00b,
+ VALIDATION_ERROR_0fa00b44 = 0x0fa00b44,
VALIDATION_ERROR_0fa07c1b = 0x0fa07c1b,
VALIDATION_ERROR_0fa09005 = 0x0fa09005,
VALIDATION_ERROR_0fa15801 = 0x0fa15801,
@@ -1096,6 +1110,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_10c09005 = 0x10c09005,
VALIDATION_ERROR_10c1c40d = 0x10c1c40d,
VALIDATION_ERROR_10c2b00b = 0x10c2b00b,
+ VALIDATION_ERROR_10c2b00f = 0x10c2b00f,
VALIDATION_ERROR_10c2b61b = 0x10c2b61b,
VALIDATION_ERROR_10c30a1b = 0x10c30a1b,
VALIDATION_ERROR_10e0097e = 0x10e0097e,
@@ -1200,6 +1215,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_12809005 = 0x12809005,
VALIDATION_ERROR_1281c40d = 0x1281c40d,
VALIDATION_ERROR_1282b00b = 0x1282b00b,
+ VALIDATION_ERROR_1282b00f = 0x1282b00f,
VALIDATION_ERROR_12a0087a = 0x12a0087a,
VALIDATION_ERROR_12a0087c = 0x12a0087c,
VALIDATION_ERROR_12a0087e = 0x12a0087e,
@@ -1350,6 +1366,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_14629401 = 0x14629401,
VALIDATION_ERROR_14629601 = 0x14629601,
VALIDATION_ERROR_1462b00b = 0x1462b00b,
+ VALIDATION_ERROR_1462b00f = 0x1462b00f,
VALIDATION_ERROR_1462ec01 = 0x1462ec01,
VALIDATION_ERROR_14805a1b = 0x14805a1b,
VALIDATION_ERROR_14814401 = 0x14814401,
@@ -1492,6 +1509,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_1700081a = 0x1700081a,
VALIDATION_ERROR_1700081c = 0x1700081c,
VALIDATION_ERROR_1700081e = 0x1700081e,
+ VALIDATION_ERROR_17000b48 = 0x17000b48,
VALIDATION_ERROR_17001a01 = 0x17001a01,
VALIDATION_ERROR_17001a07 = 0x17001a07,
VALIDATION_ERROR_17005601 = 0x17005601,
@@ -1508,6 +1526,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_17400832 = 0x17400832,
VALIDATION_ERROR_17400834 = 0x17400834,
VALIDATION_ERROR_17400836 = 0x17400836,
+ VALIDATION_ERROR_17400b4a = 0x17400b4a,
VALIDATION_ERROR_17405601 = 0x17405601,
VALIDATION_ERROR_1740a001 = 0x1740a001,
VALIDATION_ERROR_1740a007 = 0x1740a007,
@@ -2832,6 +2851,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_2aa0c601 = 0x2aa0c601,
VALIDATION_ERROR_2aa0c607 = 0x2aa0c607,
VALIDATION_ERROR_2aa16c01 = 0x2aa16c01,
+ VALIDATION_ERROR_2aa39e01 = 0x2aa39e01,
VALIDATION_ERROR_2ac00542 = 0x2ac00542,
VALIDATION_ERROR_2ac00544 = 0x2ac00544,
VALIDATION_ERROR_2ac05601 = 0x2ac05601,
@@ -2845,6 +2865,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_2ae0c601 = 0x2ae0c601,
VALIDATION_ERROR_2ae0c607 = 0x2ae0c607,
VALIDATION_ERROR_2ae17c01 = 0x2ae17c01,
+ VALIDATION_ERROR_2ae3a001 = 0x2ae3a001,
VALIDATION_ERROR_2b000a5c = 0x2b000a5c,
VALIDATION_ERROR_2b005601 = 0x2b005601,
VALIDATION_ERROR_2b009c01 = 0x2b009c01,
@@ -3014,6 +3035,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_30216c01 = 0x30216c01,
VALIDATION_ERROR_3022b801 = 0x3022b801,
VALIDATION_ERROR_3022b807 = 0x3022b807,
+ VALIDATION_ERROR_30239e01 = 0x30239e01,
VALIDATION_ERROR_304008cc = 0x304008cc,
VALIDATION_ERROR_304008ce = 0x304008ce,
VALIDATION_ERROR_304008d0 = 0x304008d0,
@@ -3025,6 +3047,7 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_30417c01 = 0x30417c01,
VALIDATION_ERROR_3042b801 = 0x3042b801,
VALIDATION_ERROR_3042b807 = 0x3042b807,
+ VALIDATION_ERROR_3043a001 = 0x3043a001,
VALIDATION_ERROR_306009ba = 0x306009ba,
VALIDATION_ERROR_30603601 = 0x30603601,
VALIDATION_ERROR_30605601 = 0x30605601,
@@ -3231,7 +3254,117 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
VALIDATION_ERROR_38e1c40d = 0x38e1c40d,
VALIDATION_ERROR_38e2b00b = 0x38e2b00b,
VALIDATION_ERROR_38e35001 = 0x38e35001,
- VALIDATION_ERROR_MAX_ENUM = 954421250,
+ VALIDATION_ERROR_39400b4c = 0x39400b4c,
+ VALIDATION_ERROR_39409e01 = 0x39409e01,
+ VALIDATION_ERROR_3941c40d = 0x3941c40d,
+ VALIDATION_ERROR_3942b00b = 0x3942b00b,
+ VALIDATION_ERROR_39609c01 = 0x39609c01,
+ VALIDATION_ERROR_3961c40d = 0x3961c40d,
+ VALIDATION_ERROR_3962b00b = 0x3962b00b,
+ VALIDATION_ERROR_3981c40d = 0x3981c40d,
+ VALIDATION_ERROR_3982b00b = 0x3982b00b,
+ VALIDATION_ERROR_39a27a01 = 0x39a27a01,
+ VALIDATION_ERROR_39a3a201 = 0x39a3a201,
+ VALIDATION_ERROR_39a3a401 = 0x39a3a401,
+ VALIDATION_ERROR_39c00b70 = 0x39c00b70,
+ VALIDATION_ERROR_39c00b72 = 0x39c00b72,
+ VALIDATION_ERROR_39c08801 = 0x39c08801,
+ VALIDATION_ERROR_39c09001 = 0x39c09001,
+ VALIDATION_ERROR_39c09c01 = 0x39c09c01,
+ VALIDATION_ERROR_39c1c40d = 0x39c1c40d,
+ VALIDATION_ERROR_39c2b00b = 0x39c2b00b,
+ VALIDATION_ERROR_39e00b5a = 0x39e00b5a,
+ VALIDATION_ERROR_39e00b5c = 0x39e00b5c,
+ VALIDATION_ERROR_39e00b5e = 0x39e00b5e,
+ VALIDATION_ERROR_39e00b60 = 0x39e00b60,
+ VALIDATION_ERROR_39e08801 = 0x39e08801,
+ VALIDATION_ERROR_39e09c01 = 0x39e09c01,
+ VALIDATION_ERROR_39e1c40d = 0x39e1c40d,
+ VALIDATION_ERROR_39e2b00b = 0x39e2b00b,
+ VALIDATION_ERROR_3a000b6e = 0x3a000b6e,
+ VALIDATION_ERROR_3a005601 = 0x3a005601,
+ VALIDATION_ERROR_3a03a801 = 0x3a03a801,
+ VALIDATION_ERROR_3a205601 = 0x3a205601,
+ VALIDATION_ERROR_3a216c01 = 0x3a216c01,
+ VALIDATION_ERROR_3a239e01 = 0x3a239e01,
+ VALIDATION_ERROR_3a400b62 = 0x3a400b62,
+ VALIDATION_ERROR_3a400b64 = 0x3a400b64,
+ VALIDATION_ERROR_3a400b66 = 0x3a400b66,
+ VALIDATION_ERROR_3a400b68 = 0x3a400b68,
+ VALIDATION_ERROR_3a400b6a = 0x3a400b6a,
+ VALIDATION_ERROR_3a400b6c = 0x3a400b6c,
+ VALIDATION_ERROR_3a408801 = 0x3a408801,
+ VALIDATION_ERROR_3a409001 = 0x3a409001,
+ VALIDATION_ERROR_3a409c01 = 0x3a409c01,
+ VALIDATION_ERROR_3a41c40d = 0x3a41c40d,
+ VALIDATION_ERROR_3a42b00b = 0x3a42b00b,
+ VALIDATION_ERROR_3a600b4e = 0x3a600b4e,
+ VALIDATION_ERROR_3a60f401 = 0x3a60f401,
+ VALIDATION_ERROR_3a61c40d = 0x3a61c40d,
+ VALIDATION_ERROR_3a62b00b = 0x3a62b00b,
+ VALIDATION_ERROR_3a800b50 = 0x3a800b50,
+ VALIDATION_ERROR_3a800b52 = 0x3a800b52,
+ VALIDATION_ERROR_3a800b54 = 0x3a800b54,
+ VALIDATION_ERROR_3a800b56 = 0x3a800b56,
+ VALIDATION_ERROR_3a800b58 = 0x3a800b58,
+ VALIDATION_ERROR_3a808801 = 0x3a808801,
+ VALIDATION_ERROR_3a809c01 = 0x3a809c01,
+ VALIDATION_ERROR_3a81c40d = 0x3a81c40d,
+ VALIDATION_ERROR_3a82b00b = 0x3a82b00b,
+ VALIDATION_ERROR_3aa05601 = 0x3aa05601,
+ VALIDATION_ERROR_3aa3aa01 = 0x3aa3aa01,
+ VALIDATION_ERROR_3ac05601 = 0x3ac05601,
+ VALIDATION_ERROR_3ac17c01 = 0x3ac17c01,
+ VALIDATION_ERROR_3ac3a001 = 0x3ac3a001,
+ VALIDATION_ERROR_3ae09c01 = 0x3ae09c01,
+ VALIDATION_ERROR_3ae1c40d = 0x3ae1c40d,
+ VALIDATION_ERROR_3ae2b00b = 0x3ae2b00b,
+ VALIDATION_ERROR_3ae2b801 = 0x3ae2b801,
+ VALIDATION_ERROR_3b009c01 = 0x3b009c01,
+ VALIDATION_ERROR_3b01c40d = 0x3b01c40d,
+ VALIDATION_ERROR_3b02b00b = 0x3b02b00b,
+ VALIDATION_ERROR_3b02b801 = 0x3b02b801,
+ VALIDATION_ERROR_3b209c01 = 0x3b209c01,
+ VALIDATION_ERROR_3b20c601 = 0x3b20c601,
+ VALIDATION_ERROR_3b21c40d = 0x3b21c40d,
+ VALIDATION_ERROR_3b22b00b = 0x3b22b00b,
+ VALIDATION_ERROR_3b409c01 = 0x3b409c01,
+ VALIDATION_ERROR_3b40c601 = 0x3b40c601,
+ VALIDATION_ERROR_3b41c40d = 0x3b41c40d,
+ VALIDATION_ERROR_3b42b00b = 0x3b42b00b,
+ VALIDATION_ERROR_3b61c40d = 0x3b61c40d,
+ VALIDATION_ERROR_3b62b00b = 0x3b62b00b,
+ VALIDATION_ERROR_3b800009 = 0x3b800009,
+ VALIDATION_ERROR_3b800b30 = 0x3b800b30,
+ VALIDATION_ERROR_3b800b32 = 0x3b800b32,
+ VALIDATION_ERROR_3b800b34 = 0x3b800b34,
+ VALIDATION_ERROR_3b800b36 = 0x3b800b36,
+ VALIDATION_ERROR_3b800b38 = 0x3b800b38,
+ VALIDATION_ERROR_3b800b3a = 0x3b800b3a,
+ VALIDATION_ERROR_3b800b3c = 0x3b800b3c,
+ VALIDATION_ERROR_3b801a01 = 0x3b801a01,
+ VALIDATION_ERROR_3b80a001 = 0x3b80a001,
+ VALIDATION_ERROR_3b81c40d = 0x3b81c40d,
+ VALIDATION_ERROR_3b82b00b = 0x3b82b00b,
+ VALIDATION_ERROR_3ba01a01 = 0x3ba01a01,
+ VALIDATION_ERROR_3ba1c40d = 0x3ba1c40d,
+ VALIDATION_ERROR_3ba2b00b = 0x3ba2b00b,
+ VALIDATION_ERROR_3bc0a001 = 0x3bc0a001,
+ VALIDATION_ERROR_3bc1c40d = 0x3bc1c40d,
+ VALIDATION_ERROR_3bc2b00b = 0x3bc2b00b,
+ VALIDATION_ERROR_3c01c40d = 0x3c01c40d,
+ VALIDATION_ERROR_3c02b00b = 0x3c02b00b,
+ VALIDATION_ERROR_3c405601 = 0x3c405601,
+ VALIDATION_ERROR_3c41b401 = 0x3c41b401,
+ VALIDATION_ERROR_3c439c01 = 0x3c439c01,
+ VALIDATION_ERROR_3c605601 = 0x3c605601,
+ VALIDATION_ERROR_3c61b401 = 0x3c61b401,
+ VALIDATION_ERROR_3c639c01 = 0x3c639c01,
+ VALIDATION_ERROR_3ca2b00b = 0x3ca2b00b,
+ VALIDATION_ERROR_3cc00b2e = 0x3cc00b2e,
+ VALIDATION_ERROR_3cc1c40d = 0x3cc1c40d,
+ VALIDATION_ERROR_3cc2b00b = 0x3cc2b00b,
+ VALIDATION_ERROR_MAX_ENUM = 1019392012,
};
// Mapping from unique validation error enum to the corresponding error message
@@ -3321,13 +3454,14 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_01400728, "The spec valid usage text states 'If the sparse buffer residency feature is not enabled, flags must not contain VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-flags-00916)"},
{VALIDATION_ERROR_0140072a, "The spec valid usage text states 'If the sparse aliased residency feature is not enabled, flags must not contain VK_BUFFER_CREATE_SPARSE_ALIASED_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-flags-00917)"},
{VALIDATION_ERROR_0140072c, "The spec valid usage text states 'If flags contains VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT or VK_BUFFER_CREATE_SPARSE_ALIASED_BIT, it must also contain VK_BUFFER_CREATE_SPARSE_BINDING_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-flags-00918)"},
- {VALIDATION_ERROR_0140072e, "The spec valid usage text states 'If any of the handle types specified in VkExternalMemoryImageCreateInfoKHX::handleTypes requires dedicated allocation, as reported by vkGetPhysicalDeviceExternalBufferPropertiesKHX in VkExternalBufferPropertiesKHX::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationBufferCreateInfoNV with its dedicatedAllocation field set to VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-handleTypes-00919)"},
- {VALIDATION_ERROR_01400730, "The spec valid usage text states 'If the pNext extension contains an instance of VkExternalMemoryBufferCreateInfoKHX, its handleTypes member must only contain bits that are also in VkExternalBufferPropertiesKHX::externalMemoryProperties.pname:compatibleHandleTypes, as returned by vkGetPhysicalDeviceExternalBufferPropertiesKHX with pExternalBufferInfo->handleType equal to any one of the handle types specified in VkExternalMemoryBufferCreateInfoKHX::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-pNext-00920)"},
+ {VALIDATION_ERROR_0140072e, "The spec valid usage text states 'If any of the handle types specified in VkExternalMemoryImageCreateInfoKHR::handleTypes requires dedicated allocation, as reported by vkGetPhysicalDeviceExternalBufferPropertiesKHR in VkExternalBufferPropertiesKHR::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationBufferCreateInfoNV with its dedicatedAllocation field set to VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-handleTypes-00919)"},
+ {VALIDATION_ERROR_01400730, "The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryBufferCreateInfoKHR, its handleTypes member must only contain bits that are also in VkExternalBufferPropertiesKHR::externalMemoryProperties.pname:compatibleHandleTypes, as returned by vkGetPhysicalDeviceExternalBufferPropertiesKHR with pExternalBufferInfo->handleType equal to any one of the handle types specified in VkExternalMemoryBufferCreateInfoKHR::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-pNext-00920)"},
{VALIDATION_ERROR_01400ade, "The spec valid usage text states 'If sharingMode is VK_SHARING_MODE_CONCURRENT, each element of pQueueFamilyIndices must be unique and must be less than pQueueFamilyPropertyCount returned by vkGetPhysicalDeviceQueueFamilyProperties for the physicalDevice that was used to create device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-sharingMode-01391)"},
{VALIDATION_ERROR_01400b16, "The spec valid usage text states 'If sharingMode is VK_SHARING_MODE_CONCURRENT, each element of pQueueFamilyIndices must be unique and must be less than pQueueFamilyPropertyCount returned by either vkGetPhysicalDeviceQueueFamilyProperties or vkGetPhysicalDeviceQueueFamilyProperties2KHR for the physicalDevice that was used to create device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferCreateInfo-sharingMode-01419)"},
{VALIDATION_ERROR_01409001, "The spec valid usage text states 'flags must be a valid combination of VkBufferCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-flags-parameter)"},
- {VALIDATION_ERROR_0141c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDedicatedAllocationBufferCreateInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_0141c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationBufferCreateInfoNV or VkExternalMemoryBufferCreateInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_0142b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-sType-sType)"},
+ {VALIDATION_ERROR_0142b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-sType-unique)"},
{VALIDATION_ERROR_0142c001, "The spec valid usage text states 'sharingMode must be a valid VkSharingMode value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-sharingMode-parameter)"},
{VALIDATION_ERROR_01430601, "The spec valid usage text states 'usage must be a valid combination of VkBufferUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-usage-parameter)"},
{VALIDATION_ERROR_01430603, "The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferCreateInfo-usage-requiredbitmask)"},
@@ -3360,10 +3494,10 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0180094e, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, at least one of srcQueueFamilyIndex and dstQueueFamilyIndex must be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01191)"},
{VALIDATION_ERROR_01800950, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, srcQueueFamilyIndex and dstQueueFamilyIndex must either both be VK_QUEUE_FAMILY_IGNORED, or both be a valid queue family (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01192)"},
{VALIDATION_ERROR_01800952, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must also be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01193)"},
- {VALIDATION_ERROR_01800954, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01194)"},
- {VALIDATION_ERROR_01800956, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01195)"},
+ {VALIDATION_ERROR_01800954, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHR (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01194)"},
+ {VALIDATION_ERROR_01800956, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHR (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01195)"},
{VALIDATION_ERROR_01800958, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, and srcQueueFamilyIndex and dstQueueFamilyIndex are not VK_QUEUE_FAMILY_IGNORED, at least one of them must be the same as the family of the queue that will execute this barrier' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01196)"},
- {VALIDATION_ERROR_01800ac8, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, and one of srcQueueFamilyIndex and dstQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, the other must be VK_QUEUE_FAMILY_IGNORED or VK_QUEUE_FAMILY_EXTERNAL_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01380)"},
+ {VALIDATION_ERROR_01800ac8, "The spec valid usage text states 'If buffer was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, and one of srcQueueFamilyIndex and dstQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, the other must be VK_QUEUE_FAMILY_IGNORED or VK_QUEUE_FAMILY_EXTERNAL_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-01380)"},
{VALIDATION_ERROR_01801a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-buffer-parameter)"},
{VALIDATION_ERROR_01806801, "The spec valid usage text states 'dstAccessMask must be a valid combination of VkAccessFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-dstAccessMask-parameter)"},
{VALIDATION_ERROR_0181c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryBarrier-pNext-pNext)"},
@@ -3465,11 +3599,11 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0321c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-pNext-pNext)"},
{VALIDATION_ERROR_0322b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-sType-sType)"},
{VALIDATION_ERROR_0322d201, "The spec valid usage text states 'srcSet must be a valid VkDescriptorSet handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCopyDescriptorSet-srcSet-parameter)"},
- {VALIDATION_ERROR_0340009e, "The spec valid usage text states 'waitSemaphoreValuesCount must be the same value as VkSubmitInfo::waitSemaphoreCount, where SubmitInfo is in the pNext chain of this VkD3D12FenceSubmitInfoKHX structure.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-waitSemaphoreValuesCount-00079)"},
- {VALIDATION_ERROR_034000a0, "The spec valid usage text states 'signalSemaphoreValuesCount must be the same value as VkSubmitInfo::signalSemaphoreCount, where SubmitInfo is in the pNext chain of this VkD3D12FenceSubmitInfoKHX structure.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-signalSemaphoreValuesCount-00080)"},
- {VALIDATION_ERROR_03423201, "The spec valid usage text states 'If signalSemaphoreValuesCount is not 0, and pSignalSemaphoreValues is not NULL, pSignalSemaphoreValues must be a pointer to an array of signalSemaphoreValuesCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-pSignalSemaphoreValues-parameter)"},
- {VALIDATION_ERROR_03427401, "The spec valid usage text states 'If waitSemaphoreValuesCount is not 0, and pWaitSemaphoreValues is not NULL, pWaitSemaphoreValues must be a pointer to an array of waitSemaphoreValuesCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-pWaitSemaphoreValues-parameter)"},
- {VALIDATION_ERROR_0342b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHX-sType-sType)"},
+ {VALIDATION_ERROR_0340009e, "The spec valid usage text states 'waitSemaphoreValuesCount must be the same value as VkSubmitInfo::waitSemaphoreCount, where VkSubmitInfo is in the pNext chain of this VkD3D12FenceSubmitInfoKHR structure.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-waitSemaphoreValuesCount-00079)"},
+ {VALIDATION_ERROR_034000a0, "The spec valid usage text states 'signalSemaphoreValuesCount must be the same value as VkSubmitInfo::signalSemaphoreCount, where VkSubmitInfo is in the pNext chain of this VkD3D12FenceSubmitInfoKHR structure.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-signalSemaphoreValuesCount-00080)"},
+ {VALIDATION_ERROR_03423201, "The spec valid usage text states 'If signalSemaphoreValuesCount is not 0, and pSignalSemaphoreValues is not NULL, pSignalSemaphoreValues must be a pointer to an array of signalSemaphoreValuesCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-pSignalSemaphoreValues-parameter)"},
+ {VALIDATION_ERROR_03427401, "The spec valid usage text states 'If waitSemaphoreValuesCount is not 0, and pWaitSemaphoreValues is not NULL, pWaitSemaphoreValues must be a pointer to an array of waitSemaphoreValuesCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-pWaitSemaphoreValues-parameter)"},
+ {VALIDATION_ERROR_0342b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkD3D12FenceSubmitInfoKHR-sType-sType)"},
{VALIDATION_ERROR_0361a801, "The spec valid usage text states 'pMarkerName must be a null-terminated UTF-8 string' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDebugMarkerMarkerInfoEXT-pMarkerName-parameter)"},
{VALIDATION_ERROR_0361c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDebugMarkerMarkerInfoEXT-pNext-pNext)"},
{VALIDATION_ERROR_0362b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDebugMarkerMarkerInfoEXT-sType-sType)"},
@@ -3557,7 +3691,7 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_056002ec, "The spec valid usage text states 'ppEnabledExtensionNames must not contain both VK_KHR_maintenance1 and VK_AMD_negative_viewport_height' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-00374)"},
{VALIDATION_ERROR_05609005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-flags-zerobitmask)"},
{VALIDATION_ERROR_05615a01, "The spec valid usage text states 'If pEnabledFeatures is not NULL, pEnabledFeatures must be a pointer to a valid VkPhysicalDeviceFeatures structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pEnabledFeatures-parameter)"},
- {VALIDATION_ERROR_0561c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceFeatures2KHR, VkPhysicalDeviceMultiviewFeaturesKHX, or VkDeviceGroupDeviceCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_0561c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceFeatures2KHR, VkPhysicalDevice16BitStorageFeaturesKHR, VkPhysicalDeviceVariablePointerFeaturesKHR, VkPhysicalDeviceMultiviewFeaturesKHX, or VkDeviceGroupDeviceCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_0561fe01, "The spec valid usage text states 'pQueueCreateInfos must be a pointer to an array of queueCreateInfoCount valid VkDeviceQueueCreateInfo structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-pQueueCreateInfos-parameter)"},
{VALIDATION_ERROR_05628e01, "The spec valid usage text states 'If enabledExtensionCount is not 0, ppEnabledExtensionNames must be a pointer to an array of enabledExtensionCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledExtensionNames-parameter)"},
{VALIDATION_ERROR_05629001, "The spec valid usage text states 'If enabledLayerCount is not 0, ppEnabledLayerNames must be a pointer to an array of enabledLayerCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceCreateInfo-ppEnabledLayerNames-parameter)"},
@@ -3655,41 +3789,42 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_07e09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-flags-zerobitmask)"},
{VALIDATION_ERROR_07e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_07e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EVENT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-sType-sType)"},
- {VALIDATION_ERROR_08000520, "The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalImageFormatPropertiesKHX or VkExternalBufferPropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHX-handleTypes-00656)"},
- {VALIDATION_ERROR_08009e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHX-handleTypes-parameter)"},
- {VALIDATION_ERROR_0801c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0802b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHX-sType-sType)"},
+ {VALIDATION_ERROR_08000520, "The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalImageFormatPropertiesKHR or VkExternalBufferPropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHR-handleTypes-00656)"},
+ {VALIDATION_ERROR_08009e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHR-handleTypes-parameter)"},
+ {VALIDATION_ERROR_0801c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0802b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoKHR-sType-sType)"},
{VALIDATION_ERROR_08209e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter)"},
{VALIDATION_ERROR_0821c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-pNext-pNext)"},
{VALIDATION_ERROR_0822b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-sType-sType)"},
- {VALIDATION_ERROR_08400522, "The spec valid usage text states 'If VkExportMemoryAllocateInfoKHX::handleTypes does not include VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHX, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHX, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHX, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHX, VkExportMemoryWin32HandleInfoKHX must not be in the pNext chain of VkMemoryAllocateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHX-handleTypes-00657)"},
- {VALIDATION_ERROR_0840f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHX-pAttributes-parameter)"},
- {VALIDATION_ERROR_0841c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0842b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHX-sType-sType)"},
+ {VALIDATION_ERROR_08400522, "The spec valid usage text states 'If VkExportMemoryAllocateInfoKHR::handleTypes does not include VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR, VkExportMemoryWin32HandleInfoKHR must not be in the pNext chain of VkMemoryAllocateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657)"},
+ {VALIDATION_ERROR_0840f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter)"},
+ {VALIDATION_ERROR_0841c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0842b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-sType-sType)"},
{VALIDATION_ERROR_0860f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter)"},
{VALIDATION_ERROR_0861c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pNext-pNext)"},
{VALIDATION_ERROR_0862b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-sType-sType)"},
- {VALIDATION_ERROR_088008c8, "The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalSemaphorePropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHX-handleTypes-01124)"},
- {VALIDATION_ERROR_08809e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalSemaphoreHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHX-handleTypes-parameter)"},
- {VALIDATION_ERROR_0881c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0882b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHX-sType-sType)"},
- {VALIDATION_ERROR_08a008ca, "The spec valid usage text states 'If VkExportSemaphoreCreateInfoKHX::handleTypes does not include VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHX or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHX, VkExportSemaphoreWin32HandleInfoKHX must not be in the pNext chain of VkSemaphoreCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHX-handleTypes-01125)"},
- {VALIDATION_ERROR_08a0f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHX-pAttributes-parameter)"},
- {VALIDATION_ERROR_08a1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_08a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHX-sType-sType)"},
- {VALIDATION_ERROR_08c09e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHX-handleTypes-parameter)"},
- {VALIDATION_ERROR_08c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_08c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHX-sType-sType)"},
- {VALIDATION_ERROR_08e09e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHX-handleTypes-parameter)"},
- {VALIDATION_ERROR_08e09e03, "The spec valid usage text states 'handleTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHX-handleTypes-requiredbitmask)"},
- {VALIDATION_ERROR_08e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_08e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHX-sType-sType)"},
+ {VALIDATION_ERROR_088008c8, "The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalSemaphorePropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHR-handleTypes-01124)"},
+ {VALIDATION_ERROR_08809e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalSemaphoreHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHR-handleTypes-parameter)"},
+ {VALIDATION_ERROR_0881c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0882b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreCreateInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_08a008ca, "The spec valid usage text states 'If VkExportSemaphoreCreateInfoKHR::handleTypes does not include VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR, VkExportSemaphoreWin32HandleInfoKHR must not be in the pNext chain of VkSemaphoreCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125)"},
+ {VALIDATION_ERROR_08a0f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter)"},
+ {VALIDATION_ERROR_08a1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_08a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_08c09e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHR-handleTypes-parameter)"},
+ {VALIDATION_ERROR_08c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_08c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_08e09e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHR-handleTypes-parameter)"},
+ {VALIDATION_ERROR_08e09e03, "The spec valid usage text states 'handleTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHR-handleTypes-requiredbitmask)"},
+ {VALIDATION_ERROR_08e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_08e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoKHR-sType-sType)"},
{VALIDATION_ERROR_09009e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter)"},
{VALIDATION_ERROR_0901c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-pNext-pNext)"},
{VALIDATION_ERROR_0902b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-sType-sType)"},
{VALIDATION_ERROR_09209001, "The spec valid usage text states 'flags must be a valid combination of VkFenceCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-flags-parameter)"},
- {VALIDATION_ERROR_0921c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_0921c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExportFenceCreateInfoKHR or VkExportFenceWin32HandleInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_0922b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FENCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-sType-sType)"},
+ {VALIDATION_ERROR_0922b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-sType-unique)"},
{VALIDATION_ERROR_09400009, "The spec valid usage text states 'Both of renderPass, and the elements of pAttachments that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFramebufferCreateInfo-commonparent)"},
{VALIDATION_ERROR_094006d8, "The spec valid usage text states 'attachmentCount must be equal to the attachment count specified in renderPass' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFramebufferCreateInfo-attachmentCount-00876)"},
{VALIDATION_ERROR_094006da, "The spec valid usage text states 'Any given element of pAttachments that is used as a color attachment or resolve attachment by renderPass must have been created with a usage value including VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFramebufferCreateInfo-pAttachments-00877)"},
@@ -3762,7 +3897,7 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0960be01, "The spec valid usage text states 'layout must be a valid VkPipelineLayout handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-layout-parameter)"},
{VALIDATION_ERROR_09615601, "The spec valid usage text states 'If pDynamicState is not NULL, pDynamicState must be a pointer to a valid VkPipelineDynamicStateCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pDynamicState-parameter)"},
{VALIDATION_ERROR_09619801, "The spec valid usage text states 'pInputAssemblyState must be a pointer to a valid VkPipelineInputAssemblyStateCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pInputAssemblyState-parameter)"},
- {VALIDATION_ERROR_0961c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_0961c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPipelineDiscardRectangleStateCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_09620801, "The spec valid usage text states 'pRasterizationState must be a pointer to a valid VkPipelineRasterizationStateCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pRasterizationState-parameter)"},
{VALIDATION_ERROR_09623e01, "The spec valid usage text states 'pStages must be a pointer to an array of stageCount valid VkPipelineShaderStageCreateInfo structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pStages-parameter)"},
{VALIDATION_ERROR_09626801, "The spec valid usage text states 'pVertexInputState must be a pointer to a valid VkPipelineVertexInputStateCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkGraphicsPipelineCreateInfo-pVertexInputState-parameter)"},
@@ -3869,20 +4004,21 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_09e007b2, "The spec valid usage text states 'If tiling is VK_IMAGE_TILING_OPTIMAL, and VkFormatProperties::optimalTilingFeatures (as returned by vkGetPhysicalDeviceFormatProperties with the same value of format) does not include VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT, usage must not contain VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-tiling-00985)"},
{VALIDATION_ERROR_09e007b4, "The spec valid usage text states 'If tiling is VK_IMAGE_TILING_OPTIMAL, and VkFormatProperties::optimalTilingFeatures (as returned by vkGetPhysicalDeviceFormatProperties with the same value of format) does not include VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT, usage must not contain VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-tiling-00986)"},
{VALIDATION_ERROR_09e007b6, "The spec valid usage text states 'If flags contains VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT or VK_IMAGE_CREATE_SPARSE_ALIASED_BIT, it must also contain VK_IMAGE_CREATE_SPARSE_BINDING_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-flags-00987)"},
- {VALIDATION_ERROR_09e007b8, "The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoNV, it must not contain an instance of VkExternalMemoryImageCreateInfoKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00988)"},
- {VALIDATION_ERROR_09e007ba, "The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoKHX, and any of the handle types specified in VkExternalMemoryImageCreateInfoKHX::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2KHR in VkExternalImageFormatPropertiesKHX::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationImageCreateInfoNV with its dedicatedAllocation field set to VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00989)"},
- {VALIDATION_ERROR_09e007bc, "The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoKHX, its handleTypes member must only contain bits that are also in VkExternalImageFormatPropertiesKHX::externalMemoryProperties::compatibleHandleTypes, as returned by vkGetPhysicalDeviceImageFormatProperties2KHR with format, type, tiling, usage, and flags equal to those in this structure, and with an instance of VkPhysicalDeviceExternalImageFormatInfoKHX in the pNext chain, with a handleType equal to any one of the handle types specified in VkExternalMemoryImageCreateInfoKHX::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00990)"},
+ {VALIDATION_ERROR_09e007b8, "The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoNV, it must not contain an instance of VkExternalMemoryImageCreateInfoKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00988)"},
+ {VALIDATION_ERROR_09e007ba, "The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoKHR, and any of the handle types specified in VkExternalMemoryImageCreateInfoKHR::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2KHR in VkExternalImageFormatPropertiesKHR::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationImageCreateInfoNV with its dedicatedAllocation field set to VK_TRUE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00989)"},
+ {VALIDATION_ERROR_09e007bc, "The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoKHR, its handleTypes member must only contain bits that are also in VkExternalImageFormatPropertiesKHR::externalMemoryProperties::compatibleHandleTypes, as returned by vkGetPhysicalDeviceImageFormatProperties2KHR with format, type, tiling, usage, and flags equal to those in this structure, and with an instance of VkPhysicalDeviceExternalImageFormatInfoKHR in the pNext chain, with a handleType equal to any one of the handle types specified in VkExternalMemoryImageCreateInfoKHR::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00990)"},
{VALIDATION_ERROR_09e007be, "The spec valid usage text states 'If the pNext chain contains an instance of VkExternalMemoryImageCreateInfoNV, its handleTypes member must only contain bits that are also in VkExternalImageFormatPropertiesNV::externalMemoryProperties::compatibleHandleTypes, as returned by vkGetPhysicalDeviceExternalImageFormatPropertiesNV with format, type, tiling, usage, and flags equal to those in this structure, and with externalHandleType equal to any one of the handle types specified in VkExternalMemoryImageCreateInfoNV::handleTypes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-00991)"},
- {VALIDATION_ERROR_09e007c0, "The spec valid usage text states 'If flags contains VK_IMAGE_CREATE_BIND_SFR_BIT_KHX, then mipLevels must be one, arrayLayers must be one, imageType must be VK_IMAGE_TYPE_2D, and tiling must be VK_IMAGE_TILING_OPTIMAL.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-flags-00992)"},
+ {VALIDATION_ERROR_09e007c0, "The spec valid usage text states 'If flags contains VK_IMAGE_CREATE_BIND_SFR_BIT_KHX, then mipLevels must be one, arrayLayers must be one, imageType must be VK_IMAGE_TYPE_2D, and tiling must be VK_IMAGE_TILING_OPTIMAL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-flags-00992)"},
{VALIDATION_ERROR_09e007c2, "The spec valid usage text states 'initialLayout must be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-initialLayout-00993)"},
{VALIDATION_ERROR_09e00ae0, "The spec valid usage text states 'If sharingMode is VK_SHARING_MODE_CONCURRENT, each element of pQueueFamilyIndices must be unique and must be less than pQueueFamilyPropertyCount returned by vkGetPhysicalDeviceQueueFamilyProperties for the physicalDevice that was used to create device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-sharingMode-01392)"},
{VALIDATION_ERROR_09e00b18, "The spec valid usage text states 'If sharingMode is VK_SHARING_MODE_CONCURRENT, each element of pQueueFamilyIndices must be unique and must be less than pQueueFamilyPropertyCount returned by either vkGetPhysicalDeviceQueueFamilyProperties or vkGetPhysicalDeviceQueueFamilyProperties2KHR for the physicalDevice that was used to create device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-sharingMode-01420)"},
{VALIDATION_ERROR_09e00b1a, "The spec valid usage text states 'If the logical device was created with VkDeviceGroupDeviceCreateInfoKHX::physicalDeviceCount equal to 1, flags must not contain VK_IMAGE_CREATE_BIND_SFR_BIT_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-physicalDeviceCount-01421)"},
+ {VALIDATION_ERROR_09e00b46, "The spec valid usage text states 'If the pNext chain includes a' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageCreateInfo-pNext-01443)"},
{VALIDATION_ERROR_09e09001, "The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-flags-parameter)"},
{VALIDATION_ERROR_09e09201, "The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-format-parameter)"},
{VALIDATION_ERROR_09e0ac01, "The spec valid usage text states 'imageType must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-imageType-parameter)"},
{VALIDATION_ERROR_09e0b801, "The spec valid usage text states 'initialLayout must be a valid VkImageLayout value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-initialLayout-parameter)"},
- {VALIDATION_ERROR_09e1c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationImageCreateInfoNV or VkImageSwapchainCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_09e1c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationImageCreateInfoNV, VkImageSwapchainCreateInfoKHX, VkExternalMemoryImageCreateInfoKHR, or VkExternalMemoryImageCreateInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_09e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-sType-sType)"},
{VALIDATION_ERROR_09e2b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-sType-unique)"},
{VALIDATION_ERROR_09e2b401, "The spec valid usage text states 'samples must be a valid VkSampleCountFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageCreateInfo-samples-parameter)"},
@@ -3895,8 +4031,8 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0a00095e, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, srcQueueFamilyIndex and dstQueueFamilyIndex must both be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01199)"},
{VALIDATION_ERROR_0a000960, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, srcQueueFamilyIndex and dstQueueFamilyIndex must either both be VK_QUEUE_FAMILY_IGNORED, or both be a valid queue family (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01200)"},
{VALIDATION_ERROR_0a000962, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must also be VK_QUEUE_FAMILY_IGNORED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01201)"},
- {VALIDATION_ERROR_0a000964, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01202)"},
- {VALIDATION_ERROR_0a000966, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01203)"},
+ {VALIDATION_ERROR_0a000964, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHR (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01202)"},
+ {VALIDATION_ERROR_0a000966, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHR (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01203)"},
{VALIDATION_ERROR_0a00096a, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, and srcQueueFamilyIndex and dstQueueFamilyIndex are not VK_QUEUE_FAMILY_IGNORED, at least one of them must be the same as the family of the queue that will execute this barrier' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01205)"},
{VALIDATION_ERROR_0a00096c, "The spec valid usage text states 'subresourceRange must be a valid image subresource range for the image (see Image Views)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-subresourceRange-01206)"},
{VALIDATION_ERROR_0a00096e, "The spec valid usage text states 'If image has a depth/stencil format with both depth and stencil components, then aspectMask member of subresourceRange must include both VK_IMAGE_ASPECT_DEPTH_BIT and VK_IMAGE_ASPECT_STENCIL_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01207)"},
@@ -3907,7 +4043,7 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0a000978, "The spec valid usage text states 'If either oldLayout or newLayout is VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL then image must have been created with VK_IMAGE_USAGE_TRANSFER_SRC_BIT set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-oldLayout-01212)"},
{VALIDATION_ERROR_0a00097a, "The spec valid usage text states 'If either oldLayout or newLayout is VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL then image must have been created with VK_IMAGE_USAGE_TRANSFER_DST_BIT set' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-oldLayout-01213)"},
{VALIDATION_ERROR_0a000aca, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, at least one of srcQueueFamilyIndex and dstQueueFamilyIndex must be VK_QUEUE_FAMILY_IGNORED' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01381)"},
- {VALIDATION_ERROR_0a000acc, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, and one of srcQueueFamilyIndex and dstQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, the other must be VK_QUEUE_FAMILY_IGNORED or VK_QUEUE_FAMILY_EXTERNAL_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01382)"},
+ {VALIDATION_ERROR_0a000acc, "The spec valid usage text states 'If image was created with a sharing mode of VK_SHARING_MODE_CONCURRENT, and one of srcQueueFamilyIndex and dstQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, the other must be VK_QUEUE_FAMILY_IGNORED or VK_QUEUE_FAMILY_EXTERNAL_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageMemoryBarrier-image-01382)"},
{VALIDATION_ERROR_0a006801, "The spec valid usage text states 'dstAccessMask must be a valid combination of VkAccessFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-dstAccessMask-parameter)"},
{VALIDATION_ERROR_0a00a001, "The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-image-parameter)"},
{VALIDATION_ERROR_0a00d401, "The spec valid usage text states 'newLayout must be a valid VkImageLayout value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryBarrier-newLayout-parameter)"},
@@ -3958,12 +4094,12 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0ac007e0, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage contains VK_IMAGE_USAGE_SAMPLED_BIT, format must be supported for sampled images, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01008)"},
{VALIDATION_ERROR_0ac007e2, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage contains VK_IMAGE_USAGE_STORAGE_BIT, format must be supported for storage images, as specified by the VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01009)"},
{VALIDATION_ERROR_0ac007e4, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage contains VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, format must be supported for color attachments, as specified by the VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01010)"},
- {VALIDATION_ERROR_0ac007e6, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage containing VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, format must be supported for depth/stencil attachments, as specified by the VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01011)"},
+ {VALIDATION_ERROR_0ac007e6, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_LINEAR and usage contains VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, format must be supported for depth/stencil attachments, as specified by the VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT flag in VkFormatProperties::linearTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01011)"},
{VALIDATION_ERROR_0ac007e8, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL, format must be format that has at least one supported feature bit present in the value of VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01012)"},
{VALIDATION_ERROR_0ac007ea, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage contains VK_IMAGE_USAGE_SAMPLED_BIT, format must be supported for sampled images, as specified by the VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01013)"},
{VALIDATION_ERROR_0ac007ec, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage contains VK_IMAGE_USAGE_STORAGE_BIT, format must be supported for storage images, as specified by the VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01014)"},
{VALIDATION_ERROR_0ac007ee, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage contains VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, format must be supported for color attachments, as specified by the VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01015)"},
- {VALIDATION_ERROR_0ac007f0, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage containing VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, format must be supported for depth/stencil attachments, as specified by the VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01016)"},
+ {VALIDATION_ERROR_0ac007f0, "The spec valid usage text states 'If image was created with VK_IMAGE_TILING_OPTIMAL and usage contains VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, format must be supported for depth/stencil attachments, as specified by the VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT flag in VkFormatProperties::optimalTilingFeatures returned by vkGetPhysicalDeviceFormatProperties with the same value of format' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01016)"},
{VALIDATION_ERROR_0ac007f2, "The spec valid usage text states 'subresourceRange must be a valid image subresource range for image (see Image Views)' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-subresourceRange-01017)"},
{VALIDATION_ERROR_0ac007f4, "The spec valid usage text states 'If image was created with the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, format must be compatible with the format used to create image, as defined in Format Compatibility Classes' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01018)"},
{VALIDATION_ERROR_0ac007f6, "The spec valid usage text states 'If image was not created with the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag, format must be identical to the format used to create image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01019)"},
@@ -3977,38 +4113,47 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0ac2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-sType-sType)"},
{VALIDATION_ERROR_0ac2ea01, "The spec valid usage text states 'subresourceRange must be a valid VkImageSubresourceRange structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-subresourceRange-parameter)"},
{VALIDATION_ERROR_0ac30801, "The spec valid usage text states 'viewType must be a valid VkImageViewType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageViewCreateInfo-viewType-parameter)"},
- {VALIDATION_ERROR_0ae00536, "The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatPropertiesKHX or VkExternalBufferPropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-handleType-00667)"},
- {VALIDATION_ERROR_0ae00538, "The spec valid usage text states 'The memory from which fd was exported must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-fd-00668)"},
- {VALIDATION_ERROR_0ae0053a, "The spec valid usage text states 'If handleType is not 0, it must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-handleType-00669)"},
- {VALIDATION_ERROR_0ae0053c, "The spec valid usage text states 'If handleType is not 0, fd must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-handleType-00670)"},
- {VALIDATION_ERROR_0ae09c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-handleType-parameter)"},
- {VALIDATION_ERROR_0ae1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0ae2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHX-sType-sType)"},
- {VALIDATION_ERROR_0b000524, "The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatPropertiesKHX or VkExternalBufferPropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00658)"},
- {VALIDATION_ERROR_0b000526, "The spec valid usage text states 'The memory from which handle was exported must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handle-00659)"},
- {VALIDATION_ERROR_0b000528, "The spec valid usage text states 'If handleType is not 0, it must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00660)"},
- {VALIDATION_ERROR_0b00052a, "The spec valid usage text states 'If handleType is not 0, handle must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handleType-00661)"},
- {VALIDATION_ERROR_0b009c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-handleType-parameter)"},
- {VALIDATION_ERROR_0b01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0b02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHX-sType-sType)"},
+ {VALIDATION_ERROR_0ae00536, "The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatPropertiesKHR or VkExternalBufferPropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-00667)"},
+ {VALIDATION_ERROR_0ae00538, "The spec valid usage text states 'The memory from which fd was exported must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-fd-00668)"},
+ {VALIDATION_ERROR_0ae0053a, "The spec valid usage text states 'If handleType is not 0, it must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-00669)"},
+ {VALIDATION_ERROR_0ae0053c, "The spec valid usage text states 'If handleType is not 0, fd must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-00670)"},
+ {VALIDATION_ERROR_0ae09c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_0ae1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0ae2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_0b000524, "The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatPropertiesKHR or VkExternalBufferPropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658)"},
+ {VALIDATION_ERROR_0b000526, "The spec valid usage text states 'The memory from which handle was exported, or the memory named by name must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659)"},
+ {VALIDATION_ERROR_0b000528, "The spec valid usage text states 'If handleType is not 0, it must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00660)"},
+ {VALIDATION_ERROR_0b00052a, "The spec valid usage text states 'If handleType is not 0 and name is NULL, handle must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00661)"},
+ {VALIDATION_ERROR_0b000b3e, "The spec valid usage text states 'If handleType is not VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-01439)"},
+ {VALIDATION_ERROR_0b000b40, "The spec valid usage text states 'If handleType is not 0 and handle is NULL, name must name a valid memory resource of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-01440)"},
+ {VALIDATION_ERROR_0b000b42, "The spec valid usage text states 'if handle is not NULL, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-01441)"},
+ {VALIDATION_ERROR_0b009c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_0b01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0b02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType)"},
{VALIDATION_ERROR_0b200a5e, "The spec valid usage text states 'handleType must not have more than one bit set.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327)"},
{VALIDATION_ERROR_0b200a60, "The spec valid usage text states 'handle must be a valid handle to memory, obtained as specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handle-01328)"},
{VALIDATION_ERROR_0b209c01, "The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter)"},
{VALIDATION_ERROR_0b21c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-pNext-pNext)"},
{VALIDATION_ERROR_0b22b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-sType-sType)"},
- {VALIDATION_ERROR_0b4008ee, "The spec valid usage text states 'handleType must be a value included in the Handle Type Permanence for VkImportSemaphoreFdInfoKHX table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-handleType-01143)"},
- {VALIDATION_ERROR_0b4008f0, "The spec valid usage text states 'The semaphore from which handleType was exported must have been created on the same underlying physical device as semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-handleType-01144)"},
- {VALIDATION_ERROR_0b409c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-handleType-parameter)"},
- {VALIDATION_ERROR_0b41c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0b42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-sType-sType)"},
- {VALIDATION_ERROR_0b42b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHX-semaphore-parameter)"},
- {VALIDATION_ERROR_0b6008e8, "The spec valid usage text states 'handleType must be a value included in the Handle Type Permanence for VkImportSemaphoreWin32HandleInfoKHX table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-01140)"},
- {VALIDATION_ERROR_0b6008ea, "The spec valid usage text states 'The semaphore from which handleType was exported must have been created on the same underlying physical device as semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-01141)"},
- {VALIDATION_ERROR_0b609c01, "The spec valid usage text states 'handleType must be a valid combination of VkExternalSemaphoreHandleTypeFlagBitsKHX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-parameter)"},
- {VALIDATION_ERROR_0b609c03, "The spec valid usage text states 'handleType must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-handleType-requiredbitmask)"},
- {VALIDATION_ERROR_0b61c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0b62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-sType-sType)"},
- {VALIDATION_ERROR_0b62b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHX-semaphore-parameter)"},
+ {VALIDATION_ERROR_0b4008ee, "The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportSemaphoreFdInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-01143)"},
+ {VALIDATION_ERROR_0b4008f0, "The spec valid usage text states 'The semaphore from which handleType was exported must have been created on the same underlying physical device as semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-01144)"},
+ {VALIDATION_ERROR_0b409001, "The spec valid usage text states 'flags must be a valid combination of VkSemaphoreImportFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-flags-parameter)"},
+ {VALIDATION_ERROR_0b409c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_0b41c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0b42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_0b42b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-semaphore-parameter)"},
+ {VALIDATION_ERROR_0b6008e8, "The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportSemaphoreWin32HandleInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01140)"},
+ {VALIDATION_ERROR_0b6008ea, "The spec valid usage text states 'The semaphore from which handleType or name was exported must have been created on the same underlying physical device as semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01141)"},
+ {VALIDATION_ERROR_0b600b74, "The spec valid usage text states 'If handleType is not VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01466)"},
+ {VALIDATION_ERROR_0b600b76, "The spec valid usage text states 'If handleType is not 0 and handle is NULL, name must name a valid synchronization primitive of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01467)"},
+ {VALIDATION_ERROR_0b600b78, "The spec valid usage text states 'If handleType is not 0 and name is NULL, handle must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-01468)"},
+ {VALIDATION_ERROR_0b600b7a, "The spec valid usage text states 'If handle is not NULL, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handle-01469)"},
+ {VALIDATION_ERROR_0b609001, "The spec valid usage text states 'flags must be a valid combination of VkSemaphoreImportFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-flags-parameter)"},
+ {VALIDATION_ERROR_0b609c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_0b609c03, "The spec valid usage text states 'handleType must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-handleType-requiredbitmask)"},
+ {VALIDATION_ERROR_0b61c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0b62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_0b62b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportSemaphoreWin32HandleInfoKHR-semaphore-parameter)"},
{VALIDATION_ERROR_0b800a86, "The spec valid usage text states 'tokenCount must be greater than 0 and below VkDeviceGeneratedCommandsLimitsNVX::maxIndirectCommandsLayoutTokenCount' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-tokenCount-01347)"},
{VALIDATION_ERROR_0b800a88, "The spec valid usage text states 'If the VkDeviceGeneratedCommandsFeaturesNVX::computeBindingPointSupport feature is not enabled, then pipelineBindPoint must not be VK_PIPELINE_BIND_POINT_COMPUTE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-computeBindingPointSupport-01348)"},
{VALIDATION_ERROR_0b800a8a, "The spec valid usage text states 'If pTokens contains an entry of VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX it must be the first element of the array and there must be only a single element of such token type.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-01349)"},
@@ -4031,10 +4176,11 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0bc2fe01, "The spec valid usage text states 'tokenType must be a valid VkIndirectCommandsTokenTypeNVX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsTokenNVX-tokenType-parameter)"},
{VALIDATION_ERROR_0be09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-flags-zerobitmask)"},
{VALIDATION_ERROR_0be0ee01, "The spec valid usage text states 'If pApplicationInfo is not NULL, pApplicationInfo must be a pointer to a valid VkApplicationInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-pApplicationInfo-parameter)"},
- {VALIDATION_ERROR_0be1c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDebugReportCallbackCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_0be1c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDebugReportCallbackCreateInfoEXT or VkValidationFlagsEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_0be28e01, "The spec valid usage text states 'If enabledExtensionCount is not 0, ppEnabledExtensionNames must be a pointer to an array of enabledExtensionCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-ppEnabledExtensionNames-parameter)"},
{VALIDATION_ERROR_0be29001, "The spec valid usage text states 'If enabledLayerCount is not 0, ppEnabledLayerNames must be a pointer to an array of enabledLayerCount null-terminated UTF-8 strings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-ppEnabledLayerNames-parameter)"},
{VALIDATION_ERROR_0be2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-sType-sType)"},
+ {VALIDATION_ERROR_0be2b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkInstanceCreateInfo-sType-unique)"},
{VALIDATION_ERROR_0c000a4a, "The spec valid usage text states 'pView must be a valid NSView and must be backed by a CALayer instance of type CAMetalLayer.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMacOSSurfaceCreateInfoMVK-pView-01317)"},
{VALIDATION_ERROR_0c009005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMacOSSurfaceCreateInfoMVK-flags-zerobitmask)"},
{VALIDATION_ERROR_0c01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMacOSSurfaceCreateInfoMVK-pNext-pNext)"},
@@ -4056,17 +4202,17 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0c42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateFlagsInfoKHX-sType-sType)"},
{VALIDATION_ERROR_0c6004fa, "The spec valid usage text states 'allocationSize must be less than or equal to the amount of memory available to the VkMemoryHeap specified by memoryTypeIndex and the calling command's VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00637)"},
{VALIDATION_ERROR_0c6004fc, "The spec valid usage text states 'allocationSize must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00638)"},
- {VALIDATION_ERROR_0c6004fe, "The spec valid usage text states 'If the pNext chain contains an instance of VkExportMemoryAllocateInfoKHX, and any of the handle types specified in VkExportMemoryAllocateInfoKHX::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2KHR in VkExternalImageFormatPropertiesKHX::externalMemoryProperties::externalMemoryFeatures or VkExternalBufferPropertiesKHX::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of VkDedicatedAllocationMemoryAllocateInfoNV with either its image or buffer field set to a value other than VK_NULL_HANDLE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00639)"},
- {VALIDATION_ERROR_0c600500, "The spec valid usage text states 'If the pNext chain contains an instance of VkExportMemoryAllocateInfoKHX, it must not contain an instance of VkExportMemoryAllocateInfoNV or VkExportMemoryWin32HandleInfoNV.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00640)"},
- {VALIDATION_ERROR_0c600502, "The spec valid usage text states 'If the pNext chain contains an instance of VkImportMemoryWin32HandleInfoKHX, it must not contain an instance of VkImportMemoryWin32HandleInfoNV.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00641)"},
+ {VALIDATION_ERROR_0c6004fe, "The spec valid usage text states 'If the pNext chain contains an instance of VkExportMemoryAllocateInfoKHR, and any of the handle types specified in VkExportMemoryAllocateInfoKHR::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2KHR in VkExternalImageFormatPropertiesKHR::externalMemoryProperties::externalMemoryFeatures or VkExternalBufferPropertiesKHR::externalMemoryProperties::externalMemoryFeatures, the pNext chain must contain an instance of' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00639)"},
+ {VALIDATION_ERROR_0c600500, "The spec valid usage text states 'If the pNext chain contains an instance of VkExportMemoryAllocateInfoKHR, it must not contain an instance of VkExportMemoryAllocateInfoNV or VkExportMemoryWin32HandleInfoNV.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00640)"},
+ {VALIDATION_ERROR_0c600502, "The spec valid usage text states 'If the pNext chain contains an instance of VkImportMemoryWin32HandleInfoKHR, it must not contain an instance of VkImportMemoryWin32HandleInfoNV.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00641)"},
{VALIDATION_ERROR_0c600504, "The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the values of allocationSize and memoryTypeIndex must match those specified when the memory object being imported was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00642)"},
{VALIDATION_ERROR_0c600506, "The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the device mask specified by VkMemoryAllocateFlagsInfoKHX must match that specified when the memory object being imported was allocated.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-None-00643)"},
{VALIDATION_ERROR_0c600508, "The spec valid usage text states 'If the parameters define an import operation and the external handle specified was created by the Vulkan API, the list of physical devices that comprise the logical device passed to vkAllocateMemory must match the list of physical devices that comprise the logical device on which the memory was originally allocated.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-None-00644)"},
- {VALIDATION_ERROR_0c60050a, "The spec valid usage text states 'If the parameters define an import operation and the external handle is an NT handle or a global share handle created outside of the Vulkan API, the value of memoryTypeIndex must be one of those returned by vkGetMemoryWin32HandlePropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-memoryTypeIndex-00645)"},
- {VALIDATION_ERROR_0c60050c, "The spec valid usage text states 'If the parameters define an import operation and the external handle type is VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHX, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHX, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHX, allocationSize must match the size reported in the memory requirements of the image or buffer member of the instance of VkDedicatedAllocationMemoryAllocateInfoNV included in the pNext chain.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00646)"},
- {VALIDATION_ERROR_0c60050e, "The spec valid usage text states 'If the parameters define an import operation and the external handle type is VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHX, allocationSize must match the size specified when creating the Direct3D 12 heap from which the external handle was extracted.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00647)"},
- {VALIDATION_ERROR_0c600510, "The spec valid usage text states 'If the parameters define an import operation and the external handle is a POSIX file descriptor created outside of the Vulkan API, the value of memoryTypeIndex must be one of those returned by vkGetMemoryFdPropertiesKHX.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-memoryTypeIndex-00648)"},
- {VALIDATION_ERROR_0c61c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationMemoryAllocateInfoNV or VkMemoryAllocateFlagsInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_0c60050a, "The spec valid usage text states 'If the parameters define an import operation and the external handle is an NT handle or a global share handle created outside of the Vulkan API, the value of memoryTypeIndex must be one of those returned by vkGetMemoryWin32HandlePropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-memoryTypeIndex-00645)"},
+ {VALIDATION_ERROR_0c60050c, "The spec valid usage text states 'If the parameters define an import operation and the external handle type is VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR, allocationSize must match the size reported in the memory requirements of the image or buffer member of the instance of VkDedicatedAllocationMemoryAllocateInfoNV included in the pNext chain.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00646)"},
+ {VALIDATION_ERROR_0c60050e, "The spec valid usage text states 'If the parameters define an import operation and the external handle type is VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR, allocationSize must match the size specified when creating the Direct3D 12 heap from which the external handle was extracted.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00647)"},
+ {VALIDATION_ERROR_0c600510, "The spec valid usage text states 'If the parameters define an import operation and the external handle is a POSIX file descriptor created outside of the Vulkan API, the value of memoryTypeIndex must be one of those returned by vkGetMemoryFdPropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-memoryTypeIndex-00648)"},
+ {VALIDATION_ERROR_0c61c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDedicatedAllocationMemoryAllocateInfoNV, VkMemoryAllocateFlagsInfoKHX, VkMemoryDedicatedAllocateInfoKHR, VkExportMemoryAllocateInfoKHR, VkImportMemoryWin32HandleInfoKHR, VkImportMemoryWin32HandleInfoNV, VkImportMemoryFdInfoKHR, VkExportMemoryAllocateInfoNV, VkExportMemoryWin32HandleInfoKHR, or VkExportMemoryWin32HandleInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-pNext)"},
{VALIDATION_ERROR_0c62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-sType-sType)"},
{VALIDATION_ERROR_0c62b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-sType-unique)"},
{VALIDATION_ERROR_0c806801, "The spec valid usage text states 'dstAccessMask must be a valid combination of VkAccessFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryBarrier-dstAccessMask-parameter)"},
@@ -4127,24 +4273,24 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0d830401, "The spec valid usage text states 'type must be a valid VkObjectEntryTypeNVX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkObjectTableVertexBufferEntryNVX-type-parameter)"},
{VALIDATION_ERROR_0da1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-pNext-pNext)"},
{VALIDATION_ERROR_0da2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceDiscardRectanglePropertiesEXT-sType-sType)"},
- {VALIDATION_ERROR_0dc09001, "The spec valid usage text states 'flags must be a valid combination of VkBufferCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-flags-parameter)"},
- {VALIDATION_ERROR_0dc09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-handleType-parameter)"},
- {VALIDATION_ERROR_0dc1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0dc2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-sType-sType)"},
- {VALIDATION_ERROR_0dc30601, "The spec valid usage text states 'usage must be a valid combination of VkBufferUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-usage-parameter)"},
- {VALIDATION_ERROR_0dc30603, "The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHX-usage-requiredbitmask)"},
- {VALIDATION_ERROR_0de09c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfoKHX-handleType-parameter)"},
- {VALIDATION_ERROR_0de2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfoKHX-sType-sType)"},
- {VALIDATION_ERROR_0e009c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-handleType-parameter)"},
- {VALIDATION_ERROR_0e01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-pNext-pNext)"},
- {VALIDATION_ERROR_0e02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHX-sType-sType)"},
+ {VALIDATION_ERROR_0dc09001, "The spec valid usage text states 'flags must be a valid combination of VkBufferCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-flags-parameter)"},
+ {VALIDATION_ERROR_0dc09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_0dc1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0dc2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_0dc30601, "The spec valid usage text states 'usage must be a valid combination of VkBufferUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-usage-parameter)"},
+ {VALIDATION_ERROR_0dc30603, "The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfoKHR-usage-requiredbitmask)"},
+ {VALIDATION_ERROR_0de09c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_0de2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_0e009c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_0e01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0e02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfoKHR-sType-sType)"},
{VALIDATION_ERROR_0e200486, "The spec valid usage text states 'If any member of this structure is VK_FALSE, as returned by vkGetPhysicalDeviceFeatures, then it must be VK_FALSE when passed as part of the VkDeviceCreateInfo struct when creating a device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures-None-00579)"},
- {VALIDATION_ERROR_0e41c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceMultiviewFeaturesKHX or VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2KHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0e41c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDevice16BitStorageFeaturesKHR, VkPhysicalDeviceVariablePointerFeaturesKHR, VkPhysicalDeviceMultiviewFeaturesKHX, or VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2KHR-pNext-pNext)"},
{VALIDATION_ERROR_0e42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2KHR-sType-sType)"},
{VALIDATION_ERROR_0e42b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceFeatures2KHR-sType-unique)"},
{VALIDATION_ERROR_0e609001, "The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-flags-parameter)"},
{VALIDATION_ERROR_0e609201, "The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-format-parameter)"},
- {VALIDATION_ERROR_0e61c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPhysicalDeviceExternalImageFormatInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-pNext-pNext)"},
+ {VALIDATION_ERROR_0e61c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPhysicalDeviceExternalImageFormatInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-pNext-pNext)"},
{VALIDATION_ERROR_0e62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-sType-sType)"},
{VALIDATION_ERROR_0e62fa01, "The spec valid usage text states 'tiling must be a valid VkImageTiling value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-tiling-parameter)"},
{VALIDATION_ERROR_0e630401, "The spec valid usage text states 'type must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceImageFormatInfo2KHR-type-parameter)"},
@@ -4208,6 +4354,7 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_0f809005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask)"},
{VALIDATION_ERROR_0f81c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-pNext-pNext)"},
{VALIDATION_ERROR_0f82b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType)"},
+ {VALIDATION_ERROR_0fa00b44, "The spec valid usage text states 'Each element of pDynamicStates must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442)"},
{VALIDATION_ERROR_0fa07c1b, "The spec valid usage text states 'dynamicStateCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength)"},
{VALIDATION_ERROR_0fa09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-flags-zerobitmask)"},
{VALIDATION_ERROR_0fa15801, "The spec valid usage text states 'pDynamicStates must be a pointer to an array of dynamicStateCount valid VkDynamicState values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-parameter)"},
@@ -4298,8 +4445,9 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_10c00986, "The spec valid usage text states 'scissorCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-scissorCount-01219)"},
{VALIDATION_ERROR_10c00988, "The spec valid usage text states 'scissorCount and viewportCount must be identical' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-scissorCount-01220)"},
{VALIDATION_ERROR_10c09005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-flags-zerobitmask)"},
- {VALIDATION_ERROR_10c1c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkPipelineViewportWScalingStateCreateInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_10c1c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPipelineViewportWScalingStateCreateInfoNV or VkPipelineViewportSwizzleStateCreateInfoNV' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_10c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-sType-sType)"},
+ {VALIDATION_ERROR_10c2b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-sType-unique)"},
{VALIDATION_ERROR_10c2b61b, "The spec valid usage text states 'scissorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-scissorCount-arraylength)"},
{VALIDATION_ERROR_10c30a1b, "The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength)"},
{VALIDATION_ERROR_10e0097e, "The spec valid usage text states 'viewportCount must match the viewportCount set in VkPipelineViewportStateCreateInfo' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215)"},
@@ -4364,7 +4512,7 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_12209005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-flags-zerobitmask)"},
{VALIDATION_ERROR_1220f201, "The spec valid usage text states 'If attachmentCount is not 0, pAttachments must be a pointer to an array of attachmentCount valid VkAttachmentDescription structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pAttachments-parameter)"},
{VALIDATION_ERROR_12212601, "The spec valid usage text states 'If dependencyCount is not 0, pDependencies must be a pointer to an array of dependencyCount valid VkSubpassDependency structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pDependencies-parameter)"},
- {VALIDATION_ERROR_1221c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_1221c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkRenderPassMultiviewCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_12224201, "The spec valid usage text states 'pSubpasses must be a pointer to an array of subpassCount valid VkSubpassDescription structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-pSubpasses-parameter)"},
{VALIDATION_ERROR_1222b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-sType-sType)"},
{VALIDATION_ERROR_1222e61b, "The spec valid usage text states 'subpassCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-subpassCount-arraylength)"},
@@ -4402,8 +4550,9 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_1261c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkSamplerReductionModeCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_1262b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerCreateInfo-sType-sType)"},
{VALIDATION_ERROR_12809005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-flags-zerobitmask)"},
- {VALIDATION_ERROR_1281c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_1281c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExportSemaphoreCreateInfoKHR or VkExportSemaphoreWin32HandleInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-pNext-pNext)"},
{VALIDATION_ERROR_1282b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-sType-sType)"},
+ {VALIDATION_ERROR_1282b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreCreateInfo-sType-unique)"},
{VALIDATION_ERROR_12a0087a, "The spec valid usage text states 'codeSize must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkShaderModuleCreateInfo-codeSize-01085)"},
{VALIDATION_ERROR_12a0087c, "The spec valid usage text states 'codeSize must be a multiple of 4' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkShaderModuleCreateInfo-codeSize-01086)"},
{VALIDATION_ERROR_12a0087e, "The spec valid usage text states 'pCode must point to valid SPIR-V code, formatted and packed as described by the Khronos SPIR-V Specification' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkShaderModuleCreateInfo-pCode-01087)"},
@@ -4465,7 +4614,7 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_13c0009a, "The spec valid usage text states 'If the tessellation shaders feature is not enabled, any given element of pWaitDstStageMask must not contain VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT or VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-00077)"},
{VALIDATION_ERROR_13c0009c, "The spec valid usage text states 'Any given element of pWaitDstStageMask must not include VK_PIPELINE_STAGE_HOST_BIT.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-00078)"},
{VALIDATION_ERROR_13c11401, "The spec valid usage text states 'If commandBufferCount is not 0, pCommandBuffers must be a pointer to an array of commandBufferCount valid VkCommandBuffer handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pCommandBuffers-parameter)"},
- {VALIDATION_ERROR_13c1c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkWin32KeyedMutexAcquireReleaseInfoNV, VkWin32KeyedMutexAcquireReleaseInfoKHX, VkD3D12FenceSubmitInfoKHX, or VkDeviceGroupSubmitInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pNext-pNext)"},
+ {VALIDATION_ERROR_13c1c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkWin32KeyedMutexAcquireReleaseInfoNV, VkWin32KeyedMutexAcquireReleaseInfoKHR, VkD3D12FenceSubmitInfoKHR, or VkDeviceGroupSubmitInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pNext-pNext)"},
{VALIDATION_ERROR_13c23401, "The spec valid usage text states 'If signalSemaphoreCount is not 0, pSignalSemaphores must be a pointer to an array of signalSemaphoreCount valid VkSemaphore handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pSignalSemaphores-parameter)"},
{VALIDATION_ERROR_13c27001, "The spec valid usage text states 'If waitSemaphoreCount is not 0, pWaitDstStageMask must be a pointer to an array of waitSemaphoreCount valid combinations of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-parameter)"},
{VALIDATION_ERROR_13c27003, "The spec valid usage text states 'Each element of pWaitDstStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubmitInfo-pWaitDstStageMask-requiredbitmask)"},
@@ -4550,10 +4699,11 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_1460ae03, "The spec valid usage text states 'imageUsage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-imageUsage-requiredbitmask)"},
{VALIDATION_ERROR_1460de01, "The spec valid usage text states 'If oldSwapchain is not VK_NULL_HANDLE, oldSwapchain must be a valid VkSwapchainKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-oldSwapchain-parameter)"},
{VALIDATION_ERROR_1460de07, "The spec valid usage text states 'If oldSwapchain is a valid handle, it must have been created, allocated, or retrieved from surface' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-oldSwapchain-parent)"},
- {VALIDATION_ERROR_1461c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDeviceGroupSwapchainCreateInfoKHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_1461c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDeviceGroupSwapchainCreateInfoKHX or VkSwapchainCounterCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-pNext-pNext)"},
{VALIDATION_ERROR_14629401, "The spec valid usage text states 'preTransform must be a valid VkSurfaceTransformFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-preTransform-parameter)"},
{VALIDATION_ERROR_14629601, "The spec valid usage text states 'presentMode must be a valid VkPresentModeKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-presentMode-parameter)"},
{VALIDATION_ERROR_1462b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_1462b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-sType-unique)"},
{VALIDATION_ERROR_1462ec01, "The spec valid usage text states 'surface must be a valid VkSurfaceKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-surface-parameter)"},
{VALIDATION_ERROR_14805a1b, "The spec valid usage text states 'disabledValidationCheckCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength)"},
{VALIDATION_ERROR_14814401, "The spec valid usage text states 'pDisabledValidationChecks must be a pointer to an array of disabledValidationCheckCount VkValidationCheckEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter)"},
@@ -4590,14 +4740,14 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_15409005, "The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWaylandSurfaceCreateInfoKHR-flags-zerobitmask)"},
{VALIDATION_ERROR_1541c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWaylandSurfaceCreateInfoKHR-pNext-pNext)"},
{VALIDATION_ERROR_1542b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWaylandSurfaceCreateInfoKHR-sType-sType)"},
- {VALIDATION_ERROR_15600009, "The spec valid usage text states 'Both of the elements of pAcquireSyncs, and the elements of pReleaseSyncs that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-commonparent)"},
- {VALIDATION_ERROR_156000a2, "The spec valid usage text states 'Each member of pAcquireSyncs and pReleaseSyncs must be a device memory object imported by setting VkImportMemoryWin32HandleInfoKHX::handleType to VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHX or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHX.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireSyncs-00081)"},
- {VALIDATION_ERROR_1560e201, "The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireKeys-parameter)"},
- {VALIDATION_ERROR_1560e401, "The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireSyncs-parameter)"},
- {VALIDATION_ERROR_1560e801, "The spec valid usage text states 'If acquireCount is not 0, pAcquireTimeouts must be a pointer to an array of acquireCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pAcquireTimeouts-parameter)"},
- {VALIDATION_ERROR_15621201, "The spec valid usage text states 'If releaseCount is not 0, pReleaseKeys must be a pointer to an array of releaseCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pReleaseKeys-parameter)"},
- {VALIDATION_ERROR_15621401, "The spec valid usage text states 'If releaseCount is not 0, pReleaseSyncs must be a pointer to an array of releaseCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-pReleaseSyncs-parameter)"},
- {VALIDATION_ERROR_1562b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHX-sType-sType)"},
+ {VALIDATION_ERROR_15600009, "The spec valid usage text states 'Both of the elements of pAcquireSyncs, and the elements of pReleaseSyncs that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-commonparent)"},
+ {VALIDATION_ERROR_156000a2, "The spec valid usage text states 'Each member of pAcquireSyncs and pReleaseSyncs must be a device memory object imported by setting VkImportMemoryWin32HandleInfoKHR::handleType to VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-00081)"},
+ {VALIDATION_ERROR_1560e201, "The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireKeys-parameter)"},
+ {VALIDATION_ERROR_1560e401, "The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-parameter)"},
+ {VALIDATION_ERROR_1560e801, "The spec valid usage text states 'If acquireCount is not 0, pAcquireTimeouts must be a pointer to an array of acquireCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireTimeouts-parameter)"},
+ {VALIDATION_ERROR_15621201, "The spec valid usage text states 'If releaseCount is not 0, pReleaseKeys must be a pointer to an array of releaseCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseKeys-parameter)"},
+ {VALIDATION_ERROR_15621401, "The spec valid usage text states 'If releaseCount is not 0, pReleaseSyncs must be a pointer to an array of releaseCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseSyncs-parameter)"},
+ {VALIDATION_ERROR_1562b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-sType-sType)"},
{VALIDATION_ERROR_15800009, "The spec valid usage text states 'Both of the elements of pAcquireSyncs, and the elements of pReleaseSyncs that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-commonparent)"},
{VALIDATION_ERROR_1580e201, "The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireKeys-parameter)"},
{VALIDATION_ERROR_1580e401, "The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireSyncs-parameter)"},
@@ -4694,8 +4844,9 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_17000816, "The spec valid usage text states 'memory must have been allocated using one of the memory types allowed in the memoryTypeBits member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-memory-01035)"},
{VALIDATION_ERROR_17000818, "The spec valid usage text states 'memoryOffset must be an integer multiple of the alignment member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-memoryOffset-01036)"},
{VALIDATION_ERROR_1700081a, "The spec valid usage text states 'The size member of the VkMemoryRequirements structure returned from a call to vkGetBufferMemoryRequirements with buffer must be less than or equal to the size of memory minus memoryOffset' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-size-01037)"},
- {VALIDATION_ERROR_1700081c, "The spec valid usage text states 'If buffer was created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::buffer equal to buffer and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01038)"},
- {VALIDATION_ERROR_1700081e, "The spec valid usage text states 'If buffer was not created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01039)"},
+ {VALIDATION_ERROR_1700081c, "The spec valid usage text states 'If buffer was created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::buffer equal to a buffer handle created with identical creation parameters to buffer and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01038)"},
+ {VALIDATION_ERROR_1700081e, "The spec valid usage text states 'If buffer was not created with VkDedicatedAllocationBufferCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01039)"},
+ {VALIDATION_ERROR_17000b48, "The spec valid usage text states 'If buffer requires a dedicated allocation(as reported by vkGetBufferMemoryRequirements2KHR in VkMemoryDedicatedRequirementsKHR::requiresDedicatedAllocation for image), memory must have been created with VkMemoryDedicatedAllocateInfoKHR::buffer equal to buffer and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindBufferMemory-buffer-01444)"},
{VALIDATION_ERROR_17001a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-buffer-parameter)"},
{VALIDATION_ERROR_17001a07, "The spec valid usage text states 'buffer must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-buffer-parent)"},
{VALIDATION_ERROR_17005601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindBufferMemory-device-parameter)"},
@@ -4710,8 +4861,9 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_1740082e, "The spec valid usage text states 'memory must have been allocated using one of the memory types allowed in the memoryTypeBits member of the VkMemoryRequirements structure returned from a call to vkGetImageMemoryRequirements with image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-memory-01047)"},
{VALIDATION_ERROR_17400830, "The spec valid usage text states 'memoryOffset must be an integer multiple of the alignment member of the VkMemoryRequirements structure returned from a call to vkGetImageMemoryRequirements with image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-memoryOffset-01048)"},
{VALIDATION_ERROR_17400832, "The spec valid usage text states 'The size member of the VkMemoryRequirements structure returned from a call to vkGetImageMemoryRequirements with image must be less than or equal to the size of memory minus memoryOffset' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-size-01049)"},
- {VALIDATION_ERROR_17400834, "The spec valid usage text states 'If image was created with VkDedicatedAllocationImageCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::image equal to image and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory-image-01050)"},
- {VALIDATION_ERROR_17400836, "The spec valid usage text states 'If image was not created with VkDedicatedAllocationImageCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory-image-01051)"},
+ {VALIDATION_ERROR_17400834, "The spec valid usage text states 'If image was created with VkDedicatedAllocationImageCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must have been created with VkDedicatedAllocationMemoryAllocateInfoNV::image equal to an image handle created with identical creation parameters to image and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory-image-01050)"},
+ {VALIDATION_ERROR_17400836, "The spec valid usage text states 'If image was not created with VkDedicatedAllocationImageCreateInfoNV::dedicatedAllocation equal to VK_TRUE, memory must not have been allocated dedicated for a specific buffer or image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-image-01051)"},
+ {VALIDATION_ERROR_17400b4a, "The spec valid usage text states 'If image requires a dedicated allocation (as reported by vkGetImageMemoryRequirements2KHR in VkMemoryDedicatedRequirementsKHR::requiresDedicatedAllocation for image), memory must have been created with VkMemoryDedicatedAllocateInfoKHR::image equal to image and memoryOffset must be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkBindImageMemory-image-01445)"},
{VALIDATION_ERROR_17405601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-device-parameter)"},
{VALIDATION_ERROR_1740a001, "The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-image-parameter)"},
{VALIDATION_ERROR_1740a007, "The spec valid usage text states 'image must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkBindImageMemory-image-parent)"},
@@ -6029,26 +6181,28 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_2a624401, "The spec valid usage text states 'pSubresource must be a pointer to a valid VkImageSubresource structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageSubresourceLayout-pSubresource-parameter)"},
{VALIDATION_ERROR_2a80bc01, "The spec valid usage text states 'If instance is not NULL, instance must be a valid VkInstance handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetInstanceProcAddr-instance-parameter)"},
{VALIDATION_ERROR_2a81c001, "The spec valid usage text states 'pName must be a null-terminated UTF-8 string' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetInstanceProcAddr-pName-parameter)"},
- {VALIDATION_ERROR_2aa0053e, "The spec valid usage text states 'handleType must have been included in VkExportMemoryAllocateInfoKHX::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-handleType-00671)"},
- {VALIDATION_ERROR_2aa00540, "The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-handleType-00672)"},
- {VALIDATION_ERROR_2aa05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-device-parameter)"},
- {VALIDATION_ERROR_2aa09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-handleType-parameter)"},
- {VALIDATION_ERROR_2aa0c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-memory-parameter)"},
- {VALIDATION_ERROR_2aa0c607, "The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-memory-parent)"},
- {VALIDATION_ERROR_2aa16c01, "The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHX-pFd-parameter)"},
- {VALIDATION_ERROR_2ac00542, "The spec valid usage text states 'fd must be an external memory handle created outside of the Vulkan API.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-fd-00673)"},
- {VALIDATION_ERROR_2ac00544, "The spec valid usage text states 'handleType must not be one of the handle types defined as opaque.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-handleType-00674)"},
- {VALIDATION_ERROR_2ac05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-device-parameter)"},
- {VALIDATION_ERROR_2ac09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-handleType-parameter)"},
- {VALIDATION_ERROR_2ac1ae01, "The spec valid usage text states 'pMemoryFdProperties must be a pointer to a VkMemoryFdPropertiesKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHX-pMemoryFdProperties-parameter)"},
- {VALIDATION_ERROR_2ae0052c, "The spec valid usage text states 'handleType must have been included in VkExportMemoryAllocateInfoKHX::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-handleType-00662)"},
- {VALIDATION_ERROR_2ae0052e, "The spec valid usage text states 'If handleType is defined as an NT handle, vkGetMemoryWin32HandleKHX must be called no more than once for each valid unique combination of memory and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-handleType-00663)"},
- {VALIDATION_ERROR_2ae00530, "The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-handleType-00664)"},
- {VALIDATION_ERROR_2ae05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-device-parameter)"},
- {VALIDATION_ERROR_2ae09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-handleType-parameter)"},
- {VALIDATION_ERROR_2ae0c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-memory-parameter)"},
- {VALIDATION_ERROR_2ae0c607, "The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-memory-parent)"},
- {VALIDATION_ERROR_2ae17c01, "The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHX-pHandle-parameter)"},
+ {VALIDATION_ERROR_2aa0053e, "The spec valid usage text states 'handleType must have been included in VkExportMemoryAllocateInfoKHR::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-handleType-00671)"},
+ {VALIDATION_ERROR_2aa00540, "The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-handleType-00672)"},
+ {VALIDATION_ERROR_2aa05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-device-parameter)"},
+ {VALIDATION_ERROR_2aa09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_2aa0c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-memory-parameter)"},
+ {VALIDATION_ERROR_2aa0c607, "The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-memory-parent)"},
+ {VALIDATION_ERROR_2aa16c01, "The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-pFd-parameter)"},
+ {VALIDATION_ERROR_2aa39e01, "The spec valid usage text states 'pGetFdInfo must be a pointer to a valid VkMemoryGetFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdKHR-pGetFdInfo-parameter)"},
+ {VALIDATION_ERROR_2ac00542, "The spec valid usage text states 'fd must be an external memory handle created outside of the Vulkan API.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-fd-00673)"},
+ {VALIDATION_ERROR_2ac00544, "The spec valid usage text states 'handleType must not be one of the handle types defined as opaque.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-handleType-00674)"},
+ {VALIDATION_ERROR_2ac05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-device-parameter)"},
+ {VALIDATION_ERROR_2ac09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_2ac1ae01, "The spec valid usage text states 'pMemoryFdProperties must be a pointer to a VkMemoryFdPropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryFdPropertiesKHR-pMemoryFdProperties-parameter)"},
+ {VALIDATION_ERROR_2ae0052c, "The spec valid usage text states 'handleType must have been included in VkExportMemoryAllocateInfoKHR::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-handleType-00662)"},
+ {VALIDATION_ERROR_2ae0052e, "The spec valid usage text states 'If handleType is defined as an NT handle, vkGetMemoryWin32HandleKHR must be called no more than once for each valid unique combination of memory and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-handleType-00663)"},
+ {VALIDATION_ERROR_2ae00530, "The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-handleType-00664)"},
+ {VALIDATION_ERROR_2ae05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-device-parameter)"},
+ {VALIDATION_ERROR_2ae09c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_2ae0c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-memory-parameter)"},
+ {VALIDATION_ERROR_2ae0c607, "The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-memory-parent)"},
+ {VALIDATION_ERROR_2ae17c01, "The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-pHandle-parameter)"},
+ {VALIDATION_ERROR_2ae3a001, "The spec valid usage text states 'pGetWin32HandleInfo must be a pointer to a valid VkMemoryGetWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleKHR-pGetWin32HandleInfo-parameter)"},
{VALIDATION_ERROR_2b000a5c, "The spec valid usage text states 'handleType must be a flag specified in VkExportMemoryAllocateInfoNV::handleTypes when allocating memory' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-handleType-01326)"},
{VALIDATION_ERROR_2b005601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-device-parameter)"},
{VALIDATION_ERROR_2b009c01, "The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-handleType-parameter)"},
@@ -6056,11 +6210,11 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_2b00c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-memory-parameter)"},
{VALIDATION_ERROR_2b00c607, "The spec valid usage text states 'memory must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-memory-parent)"},
{VALIDATION_ERROR_2b017c01, "The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandleNV-pHandle-parameter)"},
- {VALIDATION_ERROR_2b200532, "The spec valid usage text states 'handle must be an external memory handle created outside of the Vulkan API.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-handle-00665)"},
- {VALIDATION_ERROR_2b200534, "The spec valid usage text states 'handleType must not be one of the handle types defined as opaque.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-handleType-00666)"},
- {VALIDATION_ERROR_2b205601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-device-parameter)"},
- {VALIDATION_ERROR_2b209c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-handleType-parameter)"},
- {VALIDATION_ERROR_2b21b601, "The spec valid usage text states 'pMemoryWin32HandleProperties must be a pointer to a VkMemoryWin32HandlePropertiesKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHX-pMemoryWin32HandleProperties-parameter)"},
+ {VALIDATION_ERROR_2b200532, "The spec valid usage text states 'handle must be an external memory handle created outside of the Vulkan API.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-handle-00665)"},
+ {VALIDATION_ERROR_2b200534, "The spec valid usage text states 'handleType must not be one of the handle types defined as opaque.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-handleType-00666)"},
+ {VALIDATION_ERROR_2b205601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-device-parameter)"},
+ {VALIDATION_ERROR_2b209c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_2b21b601, "The spec valid usage text states 'pMemoryWin32HandleProperties must be a pointer to a VkMemoryWin32HandlePropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetMemoryWin32HandlePropertiesKHR-pMemoryWin32HandleProperties-parameter)"},
{VALIDATION_ERROR_2b405601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPastPresentationTimingGOOGLE-device-parameter)"},
{VALIDATION_ERROR_2b41ec01, "The spec valid usage text states 'pPresentationTimingCount must be a pointer to a uint32_t value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPastPresentationTimingGOOGLE-pPresentationTimingCount-parameter)"},
{VALIDATION_ERROR_2b41ee01, "The spec valid usage text states 'If the value referenced by pPresentationTimingCount is not 0, and pPresentationTimings is not NULL, pPresentationTimings must be a pointer to an array of pPresentationTimingCount VkPastPresentationTimingGOOGLE structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPastPresentationTimingGOOGLE-pPresentationTimings-parameter)"},
@@ -6071,9 +6225,9 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_2b81f401, "The spec valid usage text states 'If the value referenced by pPropertyCount is not 0, and pProperties is not NULL, pProperties must be a pointer to an array of pPropertyCount VkDisplayPropertiesKHR structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-pProperties-parameter)"},
{VALIDATION_ERROR_2b81f601, "The spec valid usage text states 'pPropertyCount must be a pointer to a uint32_t value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-pPropertyCount-parameter)"},
{VALIDATION_ERROR_2b827a01, "The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceDisplayPropertiesKHR-physicalDevice-parameter)"},
- {VALIDATION_ERROR_2ba16201, "The spec valid usage text states 'pExternalBufferInfo must be a pointer to a valid VkPhysicalDeviceExternalBufferInfoKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-pExternalBufferInfo-parameter)"},
- {VALIDATION_ERROR_2ba16401, "The spec valid usage text states 'pExternalBufferProperties must be a pointer to a VkExternalBufferPropertiesKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-pExternalBufferProperties-parameter)"},
- {VALIDATION_ERROR_2ba27a01, "The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHX-physicalDevice-parameter)"},
+ {VALIDATION_ERROR_2ba16201, "The spec valid usage text states 'pExternalBufferInfo must be a pointer to a valid VkPhysicalDeviceExternalBufferInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-pExternalBufferInfo-parameter)"},
+ {VALIDATION_ERROR_2ba16401, "The spec valid usage text states 'pExternalBufferProperties must be a pointer to a VkExternalBufferPropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-pExternalBufferProperties-parameter)"},
+ {VALIDATION_ERROR_2ba27a01, "The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalBufferPropertiesKHR-physicalDevice-parameter)"},
{VALIDATION_ERROR_2bc08201, "The spec valid usage text states 'externalHandleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-externalHandleType-parameter)"},
{VALIDATION_ERROR_2bc09001, "The spec valid usage text states 'flags must be a valid combination of VkImageCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-flags-parameter)"},
{VALIDATION_ERROR_2bc09201, "The spec valid usage text states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-format-parameter)"},
@@ -6083,9 +6237,9 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_2bc30401, "The spec valid usage text states 'type must be a valid VkImageType value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-type-parameter)"},
{VALIDATION_ERROR_2bc30601, "The spec valid usage text states 'usage must be a valid combination of VkImageUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-usage-parameter)"},
{VALIDATION_ERROR_2bc30603, "The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-usage-requiredbitmask)"},
- {VALIDATION_ERROR_2be16801, "The spec valid usage text states 'pExternalSemaphoreInfo must be a pointer to a valid VkPhysicalDeviceExternalSemaphoreInfoKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-pExternalSemaphoreInfo-parameter)"},
- {VALIDATION_ERROR_2be16a01, "The spec valid usage text states 'pExternalSemaphoreProperties must be a pointer to a VkExternalSemaphorePropertiesKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-pExternalSemaphoreProperties-parameter)"},
- {VALIDATION_ERROR_2be27a01, "The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHX-physicalDevice-parameter)"},
+ {VALIDATION_ERROR_2be16801, "The spec valid usage text states 'pExternalSemaphoreInfo must be a pointer to a valid VkPhysicalDeviceExternalSemaphoreInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-pExternalSemaphoreInfo-parameter)"},
+ {VALIDATION_ERROR_2be16a01, "The spec valid usage text states 'pExternalSemaphoreProperties must be a pointer to a VkExternalSemaphorePropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-pExternalSemaphoreProperties-parameter)"},
+ {VALIDATION_ERROR_2be27a01, "The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalSemaphorePropertiesKHR-physicalDevice-parameter)"},
{VALIDATION_ERROR_2c016e01, "The spec valid usage text states 'pFeatures must be a pointer to a VkPhysicalDeviceFeatures structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceFeatures-pFeatures-parameter)"},
{VALIDATION_ERROR_2c027a01, "The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceFeatures-physicalDevice-parameter)"},
{VALIDATION_ERROR_2c216e01, "The spec valid usage text states 'pFeatures must be a pointer to a VkPhysicalDeviceFeatures2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceFeatures2KHR-pFeatures-parameter)"},
@@ -6208,27 +6362,29 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_30017a01, "The spec valid usage text states 'pGranularity must be a pointer to a VkExtent2D structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetRenderAreaGranularity-pGranularity-parameter)"},
{VALIDATION_ERROR_3002ae01, "The spec valid usage text states 'renderPass must be a valid VkRenderPass handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetRenderAreaGranularity-renderPass-parameter)"},
{VALIDATION_ERROR_3002ae07, "The spec valid usage text states 'renderPass must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetRenderAreaGranularity-renderPass-parent)"},
- {VALIDATION_ERROR_302008d8, "The spec valid usage text states 'handleType must have been included in VkExportSemaphoreCreateInfoKHX::handleTypes when semaphore's current state was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-01132)"},
- {VALIDATION_ERROR_302008da, "The spec valid usage text states 'semaphore must not currently have its state replaced by imported semaphore state as described below in Importing Semaphore State unless that imported semaphore state's handle type was included in VkExternalSemaphorePropertiesKHX::exportFromImportedHandleTypes.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-semaphore-01133)"},
- {VALIDATION_ERROR_302008dc, "The spec valid usage text states 'If handleType refers to a handle type with temporary import semantics, as defined below in Importing Semaphore State, there must be no queue waiting on semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-01134)"},
- {VALIDATION_ERROR_302008de, "The spec valid usage text states 'If handleType refers to a handle type with temporary import semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-01135)"},
- {VALIDATION_ERROR_302008e0, "The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-01136)"},
- {VALIDATION_ERROR_30205601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-device-parameter)"},
- {VALIDATION_ERROR_30209c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-handleType-parameter)"},
- {VALIDATION_ERROR_30216c01, "The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-pFd-parameter)"},
- {VALIDATION_ERROR_3022b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-semaphore-parameter)"},
- {VALIDATION_ERROR_3022b807, "The spec valid usage text states 'semaphore must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHX-semaphore-parent)"},
- {VALIDATION_ERROR_304008cc, "The spec valid usage text states 'handleType must have been included in VkExportSemaphoreCreateInfoKHX::handleTypes when semaphore's current state was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01126)"},
- {VALIDATION_ERROR_304008ce, "The spec valid usage text states 'If handleType is defined as an NT handle, vkGetSemaphoreWin32HandleKHX must be called no more than once for each valid unique combination of semaphore and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01127)"},
- {VALIDATION_ERROR_304008d0, "The spec valid usage text states 'semaphore must not currently have its state replaced by imported semaphore state as described below in Importing Semaphore State unless that imported semaphore state's handle type was included in VkExternalSemaphorePropertiesKHX::exportFromImportedHandleTypes.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-semaphore-01128)"},
- {VALIDATION_ERROR_304008d2, "The spec valid usage text states 'If handleType refers to a handle type with temporary import semantics, as defined below in Importing Semaphore State, there must be no queue waiting on semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01129)"},
- {VALIDATION_ERROR_304008d4, "The spec valid usage text states 'If handleType refers to a handle type with temporary import semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01130)"},
- {VALIDATION_ERROR_304008d6, "The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-01131)"},
- {VALIDATION_ERROR_30405601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-device-parameter)"},
- {VALIDATION_ERROR_30409c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHX value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-handleType-parameter)"},
- {VALIDATION_ERROR_30417c01, "The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-pHandle-parameter)"},
- {VALIDATION_ERROR_3042b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-semaphore-parameter)"},
- {VALIDATION_ERROR_3042b807, "The spec valid usage text states 'semaphore must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHX-semaphore-parent)"},
+ {VALIDATION_ERROR_302008d8, "The spec valid usage text states 'handleType must have been included in VkExportSemaphoreCreateInfoKHR::handleTypes when semaphore's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-01132)"},
+ {VALIDATION_ERROR_302008da, "The spec valid usage text states 'semaphore must not currently have its payload replaced by an imported payload as described below in Importing Semaphore Payloads unless that imported payload's handle type was included in VkExternalSemaphorePropertiesKHR::exportFromImportedHandleTypes for handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-semaphore-01133)"},
+ {VALIDATION_ERROR_302008dc, "The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, as defined below in Importing Semaphore Payloads, there must be no queue waiting on semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-01134)"},
+ {VALIDATION_ERROR_302008de, "The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-01135)"},
+ {VALIDATION_ERROR_302008e0, "The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-01136)"},
+ {VALIDATION_ERROR_30205601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-device-parameter)"},
+ {VALIDATION_ERROR_30209c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_30216c01, "The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-pFd-parameter)"},
+ {VALIDATION_ERROR_3022b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-semaphore-parameter)"},
+ {VALIDATION_ERROR_3022b807, "The spec valid usage text states 'semaphore must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-semaphore-parent)"},
+ {VALIDATION_ERROR_30239e01, "The spec valid usage text states 'pGetFdInfo must be a pointer to a valid VkSemaphoreGetFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreFdKHR-pGetFdInfo-parameter)"},
+ {VALIDATION_ERROR_304008cc, "The spec valid usage text states 'handleType must have been included in VkExportSemaphoreCreateInfoKHR::handleTypes when the semaphore's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01126)"},
+ {VALIDATION_ERROR_304008ce, "The spec valid usage text states 'If handleType is defined as an NT handle, vkGetSemaphoreWin32HandleKHR must be called no more than once for each valid unique combination of semaphore and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01127)"},
+ {VALIDATION_ERROR_304008d0, "The spec valid usage text states 'semaphore must not currently have its payload replaced by an imported payload as described below in Importing Semaphore Payloads unless that imported payload's handle type was included in VkExternalSemaphorePropertiesKHR::exportFromImportedHandleTypes for handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-semaphore-01128)"},
+ {VALIDATION_ERROR_304008d2, "The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, as defined below in Importing Semaphore Payloads, there must be no queue waiting on semaphore.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01129)"},
+ {VALIDATION_ERROR_304008d4, "The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, semaphore must be signaled, or have an associated semaphore signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01130)"},
+ {VALIDATION_ERROR_304008d6, "The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-01131)"},
+ {VALIDATION_ERROR_30405601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-device-parameter)"},
+ {VALIDATION_ERROR_30409c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_30417c01, "The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-pHandle-parameter)"},
+ {VALIDATION_ERROR_3042b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-semaphore-parameter)"},
+ {VALIDATION_ERROR_3042b807, "The spec valid usage text states 'semaphore must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-semaphore-parent)"},
+ {VALIDATION_ERROR_3043a001, "The spec valid usage text states 'pGetWin32HandleInfo must be a pointer to a valid VkSemaphoreGetWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSemaphoreWin32HandleKHR-pGetWin32HandleInfo-parameter)"},
{VALIDATION_ERROR_306009ba, "The spec valid usage text states 'One or more present commands on swapchain must have been processed by the presentation engine.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainCounterEXT-swapchain-01245)"},
{VALIDATION_ERROR_30603601, "The spec valid usage text states 'counter must be a valid VkSurfaceCounterFlagBitsEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainCounterEXT-counter-parameter)"},
{VALIDATION_ERROR_30605601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainCounterEXT-device-parameter)"},
@@ -6240,11 +6396,11 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_3082f001, "The spec valid usage text states 'swapchain must be a valid VkSwapchainKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainImagesKHR-swapchain-parameter)"},
{VALIDATION_ERROR_30a05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainStatusKHR-device-parameter)"},
{VALIDATION_ERROR_30a2f001, "The spec valid usage text states 'swapchain must be a valid VkSwapchainKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetSwapchainStatusKHR-swapchain-parameter)"},
- {VALIDATION_ERROR_30c008ec, "The spec valid usage text states 'semaphore must not be associated with any queue command that has not yet completed execution on that queue' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHX-semaphore-01142)"},
- {VALIDATION_ERROR_30c05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHX-device-parameter)"},
- {VALIDATION_ERROR_30c18e01, "The spec valid usage text states 'pImportSemaphoreFdInfo must be a pointer to a valid VkImportSemaphoreFdInfoKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHX-pImportSemaphoreFdInfo-parameter)"},
- {VALIDATION_ERROR_30e05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreWin32HandleKHX-device-parameter)"},
- {VALIDATION_ERROR_30e19001, "The spec valid usage text states 'pImportSemaphoreWin32HandleInfo must be a pointer to a valid VkImportSemaphoreWin32HandleInfoKHX structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreWin32HandleKHX-pImportSemaphoreWin32HandleInfo-parameter)"},
+ {VALIDATION_ERROR_30c008ec, "The spec valid usage text states 'semaphore must not be associated with any queue command that has not yet completed execution on that queue' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHR-semaphore-01142)"},
+ {VALIDATION_ERROR_30c05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHR-device-parameter)"},
+ {VALIDATION_ERROR_30c18e01, "The spec valid usage text states 'pImportSemaphoreFdInfo must be a pointer to a valid VkImportSemaphoreFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreFdKHR-pImportSemaphoreFdInfo-parameter)"},
+ {VALIDATION_ERROR_30e05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreWin32HandleKHR-device-parameter)"},
+ {VALIDATION_ERROR_30e19001, "The spec valid usage text states 'pImportSemaphoreWin32HandleInfo must be a pointer to a valid VkImportSemaphoreWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportSemaphoreWin32HandleKHR-pImportSemaphoreWin32HandleInfo-parameter)"},
{VALIDATION_ERROR_31005601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkInvalidateMappedMemoryRanges-device-parameter)"},
{VALIDATION_ERROR_3100c81b, "The spec valid usage text states 'memoryRangeCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkInvalidateMappedMemoryRanges-memoryRangeCount-arraylength)"},
{VALIDATION_ERROR_3101b201, "The spec valid usage text states 'pMemoryRanges must be a pointer to an array of memoryRangeCount valid VkMappedMemoryRange structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkInvalidateMappedMemoryRanges-pMemoryRanges-parameter)"},
@@ -6379,12 +6535,12 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_33e08a1b, "The spec valid usage text states 'fenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-fenceCount-arraylength)"},
{VALIDATION_ERROR_33e17201, "The spec valid usage text states 'pFences must be a pointer to an array of fenceCount valid VkFence handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parameter)"},
{VALIDATION_ERROR_33e17207, "The spec valid usage text states 'Each element of pFences must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parent)"},
- {VALIDATION_ERROR_3401c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceIDPropertiesKHX, VkPhysicalDeviceMultiviewPropertiesKHX, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, or VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceProperties2KHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3401c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceIDPropertiesKHR, VkPhysicalDeviceMultiviewPropertiesKHX, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, or VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceProperties2KHR-pNext-pNext)"},
{VALIDATION_ERROR_3402b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceProperties2KHR-sType-sType)"},
{VALIDATION_ERROR_3402b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceProperties2KHR-sType-unique)"},
{VALIDATION_ERROR_3421c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFormatProperties2KHR-pNext-pNext)"},
{VALIDATION_ERROR_3422b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFormatProperties2KHR-sType-sType)"},
- {VALIDATION_ERROR_3441c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExternalImageFormatPropertiesKHX or VkTextureLODGatherFormatPropertiesAMD' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageFormatProperties2KHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3441c40d, "The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExternalImageFormatPropertiesKHR or VkTextureLODGatherFormatPropertiesAMD' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageFormatProperties2KHR-pNext-pNext)"},
{VALIDATION_ERROR_3442b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageFormatProperties2KHR-sType-sType)"},
{VALIDATION_ERROR_3442b00f, "The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageFormatProperties2KHR-sType-unique)"},
{VALIDATION_ERROR_3461c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMemoryProperties2KHR-pNext-pNext)"},
@@ -6393,10 +6549,10 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_3482b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSurfaceCapabilities2KHR-sType-sType)"},
{VALIDATION_ERROR_34a1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceGroupPresentCapabilitiesKHX-pNext-pNext)"},
{VALIDATION_ERROR_34a2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceGroupPresentCapabilitiesKHX-sType-sType)"},
- {VALIDATION_ERROR_34c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalBufferPropertiesKHX-pNext-pNext)"},
- {VALIDATION_ERROR_34c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalBufferPropertiesKHX-sType-sType)"},
- {VALIDATION_ERROR_3521c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalSemaphorePropertiesKHX-pNext-pNext)"},
- {VALIDATION_ERROR_3522b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalSemaphorePropertiesKHX-sType-sType)"},
+ {VALIDATION_ERROR_34c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalBufferPropertiesKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_34c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalBufferPropertiesKHR-sType-sType)"},
+ {VALIDATION_ERROR_3521c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalSemaphorePropertiesKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3522b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalSemaphorePropertiesKHR-sType-sType)"},
{VALIDATION_ERROR_3541c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkQueueFamilyProperties2KHR-pNext-pNext)"},
{VALIDATION_ERROR_3542b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkQueueFamilyProperties2KHR-sType-sType)"},
{VALIDATION_ERROR_3561c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSparseImageFormatProperties2KHR-pNext-pNext)"},
@@ -6405,10 +6561,10 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_3582b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSurfaceFormat2KHR-sType-sType)"},
{VALIDATION_ERROR_35c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPropertiesKHX-pNext-pNext)"},
{VALIDATION_ERROR_35c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPropertiesKHX-sType-sType)"},
- {VALIDATION_ERROR_3601c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalImageFormatPropertiesKHX-pNext-pNext)"},
- {VALIDATION_ERROR_3602b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalImageFormatPropertiesKHX-sType-sType)"},
- {VALIDATION_ERROR_3621c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceIDPropertiesKHX-pNext-pNext)"},
- {VALIDATION_ERROR_3622b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceIDPropertiesKHX-sType-sType)"},
+ {VALIDATION_ERROR_3601c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalImageFormatPropertiesKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3602b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalImageFormatPropertiesKHR-sType-sType)"},
+ {VALIDATION_ERROR_3621c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceIDPropertiesKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3622b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceIDPropertiesKHR-sType-sType)"},
{VALIDATION_ERROR_3641c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-pNext-pNext)"},
{VALIDATION_ERROR_3642b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX-sType-sType)"},
{VALIDATION_ERROR_37e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSharedPresentSurfaceCapabilitiesKHR-sType-sType)"},
@@ -6435,4 +6591,114 @@ static std::unordered_map<int, char const *const> validation_error_map{
{VALIDATION_ERROR_38e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-pNext-pNext)"},
{VALIDATION_ERROR_38e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType)"},
{VALIDATION_ERROR_38e35001, "The spec valid usage text states 'reductionMode must be a valid VkSamplerReductionModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter)"},
+ {VALIDATION_ERROR_39400b4c, "The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalFencePropertiesKHR.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceCreateInfoKHR-handleTypes-01446)"},
+ {VALIDATION_ERROR_39409e01, "The spec valid usage text states 'handleTypes must be a valid combination of VkExternalFenceHandleTypeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceCreateInfoKHR-handleTypes-parameter)"},
+ {VALIDATION_ERROR_3941c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceCreateInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3942b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceCreateInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_39609c01, "The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_3961c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3962b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3981c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalFencePropertiesKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3982b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExternalFencePropertiesKHR-sType-sType)"},
+ {VALIDATION_ERROR_39a27a01, "The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-physicalDevice-parameter)"},
+ {VALIDATION_ERROR_39a3a201, "The spec valid usage text states 'pExternalFenceInfo must be a pointer to a valid VkPhysicalDeviceExternalFenceInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-pExternalFenceInfo-parameter)"},
+ {VALIDATION_ERROR_39a3a401, "The spec valid usage text states 'pExternalFenceProperties must be a pointer to a VkExternalFencePropertiesKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalFencePropertiesKHR-pExternalFenceProperties-parameter)"},
+ {VALIDATION_ERROR_39c00b70, "The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportFenceFdInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-handleType-01464)"},
+ {VALIDATION_ERROR_39c00b72, "The spec valid usage text states 'The fence from which handleType was exported must have been created on the same underlying physical device as fence.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-handleType-01465)"},
+ {VALIDATION_ERROR_39c08801, "The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-fence-parameter)"},
+ {VALIDATION_ERROR_39c09001, "The spec valid usage text states 'flags must be a valid combination of VkFenceImportFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-flags-parameter)"},
+ {VALIDATION_ERROR_39c09c01, "The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_39c1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_39c2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceFdInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_39e00b5a, "The spec valid usage text states 'handleType must have been included in VkExportFenceCreateInfoKHR::handleTypes when fence's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-handleType-01453)"},
+ {VALIDATION_ERROR_39e00b5c, "The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, fence must be signaled, or have an associated fence signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-handleType-01454)"},
+ {VALIDATION_ERROR_39e00b5e, "The spec valid usage text states 'fence must not currently have its payload replaced by an imported payload as described below in Importing Fence Payloads unless that imported payload's handle type was included in VkExternalFencePropertiesKHR::exportFromImportedHandleTypes for handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-fence-01455)"},
+ {VALIDATION_ERROR_39e00b60, "The spec valid usage text states 'handleType must be defined as a POSIX file descriptor handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-handleType-01456)"},
+ {VALIDATION_ERROR_39e08801, "The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-fence-parameter)"},
+ {VALIDATION_ERROR_39e09c01, "The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_39e1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_39e2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetFdInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3a000b6e, "The spec valid usage text states 'fence must not be associated with any queue command that has not yet completed execution on that queue' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceFdKHR-fence-01463)"},
+ {VALIDATION_ERROR_3a005601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceFdKHR-device-parameter)"},
+ {VALIDATION_ERROR_3a03a801, "The spec valid usage text states 'pImportFenceFdInfo must be a pointer to a valid VkImportFenceFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceFdKHR-pImportFenceFdInfo-parameter)"},
+ {VALIDATION_ERROR_3a205601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceFdKHR-device-parameter)"},
+ {VALIDATION_ERROR_3a216c01, "The spec valid usage text states 'pFd must be a pointer to a int value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceFdKHR-pFd-parameter)"},
+ {VALIDATION_ERROR_3a239e01, "The spec valid usage text states 'pGetFdInfo must be a pointer to a valid VkFenceGetFdInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceFdKHR-pGetFdInfo-parameter)"},
+ {VALIDATION_ERROR_3a400b62, "The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportFenceWin32HandleInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01457)"},
+ {VALIDATION_ERROR_3a400b64, "The spec valid usage text states 'The fence from which handleType or name was exported must have been created on the same underlying physical device as fence.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01458)"},
+ {VALIDATION_ERROR_3a400b66, "The spec valid usage text states 'If handleType is not VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01459)"},
+ {VALIDATION_ERROR_3a400b68, "The spec valid usage text states 'If handleType is not 0 and handle is NULL, name must name a valid synchronization primitive of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01460)"},
+ {VALIDATION_ERROR_3a400b6a, "The spec valid usage text states 'If handleType is not 0 and name is NULL, handle must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-01461)"},
+ {VALIDATION_ERROR_3a400b6c, "The spec valid usage text states 'If handle is not NULL, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handle-01462)"},
+ {VALIDATION_ERROR_3a408801, "The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-fence-parameter)"},
+ {VALIDATION_ERROR_3a409001, "The spec valid usage text states 'flags must be a valid combination of VkFenceImportFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-flags-parameter)"},
+ {VALIDATION_ERROR_3a409c01, "The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_3a41c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3a42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImportFenceWin32HandleInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3a600b4e, "The spec valid usage text states 'If VkExportFenceCreateInfoKHR::handleTypes does not include VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, VkExportFenceWin32HandleInfoKHR must not be in the pNext chain of VkFenceCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-handleTypes-01447)"},
+ {VALIDATION_ERROR_3a60f401, "The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-pAttributes-parameter)"},
+ {VALIDATION_ERROR_3a61c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3a62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkExportFenceWin32HandleInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3a800b50, "The spec valid usage text states 'handleType must have been included in VkExportFenceCreateInfoKHR::handleTypes when the fence's current payload was created.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01448)"},
+ {VALIDATION_ERROR_3a800b52, "The spec valid usage text states 'If handleType is defined as an NT handle, vkGetFenceWin32HandleKHR must be called no more than once for each valid unique combination of fence and handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01449)"},
+ {VALIDATION_ERROR_3a800b54, "The spec valid usage text states 'fence must not currently have its payload replaced by an imported payload as described below in Importing Fence Payloads unless that imported payload's handle type was included in VkExternalFencePropertiesKHR::exportFromImportedHandleTypes for handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-fence-01450)"},
+ {VALIDATION_ERROR_3a800b56, "The spec valid usage text states 'If handleType refers to a handle type with copy payload transference semantics, fence must be signaled, or have an associated fence signal operation pending execution.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01451)"},
+ {VALIDATION_ERROR_3a800b58, "The spec valid usage text states 'handleType must be defined as an NT handle or a global share handle.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-01452)"},
+ {VALIDATION_ERROR_3a808801, "The spec valid usage text states 'fence must be a valid VkFence handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-fence-parameter)"},
+ {VALIDATION_ERROR_3a809c01, "The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_3a81c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3a82b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceGetWin32HandleInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3aa05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceWin32HandleKHR-device-parameter)"},
+ {VALIDATION_ERROR_3aa3aa01, "The spec valid usage text states 'pImportFenceWin32HandleInfo must be a pointer to a valid VkImportFenceWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkImportFenceWin32HandleKHR-pImportFenceWin32HandleInfo-parameter)"},
+ {VALIDATION_ERROR_3ac05601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceWin32HandleKHR-device-parameter)"},
+ {VALIDATION_ERROR_3ac17c01, "The spec valid usage text states 'pHandle must be a pointer to a HANDLE value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceWin32HandleKHR-pHandle-parameter)"},
+ {VALIDATION_ERROR_3ac3a001, "The spec valid usage text states 'pGetWin32HandleInfo must be a pointer to a valid VkFenceGetWin32HandleInfoKHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetFenceWin32HandleKHR-pGetWin32HandleInfo-parameter)"},
+ {VALIDATION_ERROR_3ae09c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetFdInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_3ae1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetFdInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3ae2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetFdInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3ae2b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetFdInfoKHR-semaphore-parameter)"},
+ {VALIDATION_ERROR_3b009c01, "The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetWin32HandleInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_3b01c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3b02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetWin32HandleInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3b02b801, "The spec valid usage text states 'semaphore must be a valid VkSemaphore handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSemaphoreGetWin32HandleInfoKHR-semaphore-parameter)"},
+ {VALIDATION_ERROR_3b209c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetFdInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_3b20c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetFdInfoKHR-memory-parameter)"},
+ {VALIDATION_ERROR_3b21c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetFdInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3b22b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetFdInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3b409c01, "The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-handleType-parameter)"},
+ {VALIDATION_ERROR_3b40c601, "The spec valid usage text states 'memory must be a valid VkDeviceMemory handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-memory-parameter)"},
+ {VALIDATION_ERROR_3b41c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3b42b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryGetWin32HandleInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3b61c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedRequirementsKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3b62b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedRequirementsKHR-sType-sType)"},
+ {VALIDATION_ERROR_3b800009, "The spec valid usage text states 'Both of buffer, and image that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-commonparent)"},
+ {VALIDATION_ERROR_3b800b30, "The spec valid usage text states 'At least one of image and buffer must be VK_NULL_HANDLE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01432)"},
+ {VALIDATION_ERROR_3b800b32, "The spec valid usage text states 'If image is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the image' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01433)"},
+ {VALIDATION_ERROR_3b800b34, "The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must have been created without VK_IMAGE_CREATE_SPARSE_BINDING_BIT set in VkImageCreateInfo::flags' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01434)"},
+ {VALIDATION_ERROR_3b800b36, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the buffer' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01435)"},
+ {VALIDATION_ERROR_3b800b38, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must have been created without VK_BUFFER_CREATE_SPARSE_BINDING_BIT set in VkBufferCreateInfo::flags' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01436)"},
+ {VALIDATION_ERROR_3b800b3a, "The spec valid usage text states 'If image is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation, the memory being imported must also be a dedicated image allocation and image must be identical to the image associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-01437)"},
+ {VALIDATION_ERROR_3b800b3c, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE and VkMemoryAllocateInfo defines a memory import operation, the memory being imported must also be a dedicated buffer allocation and buffer must be identical to the buffer associated with the imported memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-01438)"},
+ {VALIDATION_ERROR_3b801a01, "The spec valid usage text states 'If buffer is not VK_NULL_HANDLE, buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-buffer-parameter)"},
+ {VALIDATION_ERROR_3b80a001, "The spec valid usage text states 'If image is not VK_NULL_HANDLE, image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-image-parameter)"},
+ {VALIDATION_ERROR_3b81c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3b82b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfoKHR-sType-sType)"},
+ {VALIDATION_ERROR_3ba01a01, "The spec valid usage text states 'buffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2KHR-buffer-parameter)"},
+ {VALIDATION_ERROR_3ba1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2KHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3ba2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferMemoryRequirementsInfo2KHR-sType-sType)"},
+ {VALIDATION_ERROR_3bc0a001, "The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2KHR-image-parameter)"},
+ {VALIDATION_ERROR_3bc1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2KHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3bc2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageMemoryRequirementsInfo2KHR-sType-sType)"},
+ {VALIDATION_ERROR_3c01c40d, "The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkMemoryDedicatedRequirementsKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryRequirements2KHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3c02b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryRequirements2KHR-sType-sType)"},
+ {VALIDATION_ERROR_3c405601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements2KHR-device-parameter)"},
+ {VALIDATION_ERROR_3c41b401, "The spec valid usage text states 'pMemoryRequirements must be a pointer to a VkMemoryRequirements2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements2KHR-pMemoryRequirements-parameter)"},
+ {VALIDATION_ERROR_3c439c01, "The spec valid usage text states 'pInfo must be a pointer to a valid VkImageMemoryRequirementsInfo2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetImageMemoryRequirements2KHR-pInfo-parameter)"},
+ {VALIDATION_ERROR_3c605601, "The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetBufferMemoryRequirements2KHR-device-parameter)"},
+ {VALIDATION_ERROR_3c61b401, "The spec valid usage text states 'pMemoryRequirements must be a pointer to a VkMemoryRequirements2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetBufferMemoryRequirements2KHR-pMemoryRequirements-parameter)"},
+ {VALIDATION_ERROR_3c639c01, "The spec valid usage text states 'pInfo must be a pointer to a valid VkBufferMemoryRequirementsInfo2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetBufferMemoryRequirements2KHR-pInfo-parameter)"},
+ {VALIDATION_ERROR_3ca2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDevice16BitStorageFeaturesKHR-sType-sType)"},
+ {VALIDATION_ERROR_3cc00b2e, "The spec valid usage text states 'If variablePointers is enabled then variablePointersStorageBuffer must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-variablePointers-01431)"},
+ {VALIDATION_ERROR_3cc1c40d, "The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-pNext-pNext)"},
+ {VALIDATION_ERROR_3cc2b00b, "The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceVariablePointerFeaturesKHR-sType-sType)"},
};
diff --git a/layers/windows/VkLayer_core_validation.json b/layers/windows/VkLayer_core_validation.json
index 35b2f092..1912cd98 100644
--- a/layers/windows/VkLayer_core_validation.json
+++ b/layers/windows/VkLayer_core_validation.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_LUNARG_core_validation",
"type": "GLOBAL",
"library_path": ".\\VkLayer_core_validation.dll",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "LunarG Validation Layer",
"instance_extensions": [
diff --git a/layers/windows/VkLayer_object_tracker.json b/layers/windows/VkLayer_object_tracker.json
index d572edbc..053291fb 100644
--- a/layers/windows/VkLayer_object_tracker.json
+++ b/layers/windows/VkLayer_object_tracker.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_LUNARG_object_tracker",
"type": "GLOBAL",
"library_path": ".\\VkLayer_object_tracker.dll",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "LunarG Validation Layer",
"instance_extensions": [
diff --git a/layers/windows/VkLayer_parameter_validation.json b/layers/windows/VkLayer_parameter_validation.json
index 5131b43b..b8aa6419 100644
--- a/layers/windows/VkLayer_parameter_validation.json
+++ b/layers/windows/VkLayer_parameter_validation.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_LUNARG_parameter_validation",
"type": "GLOBAL",
"library_path": ".\\VkLayer_parameter_validation.dll",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "LunarG Validation Layer",
"instance_extensions": [
diff --git a/layers/windows/VkLayer_standard_validation.json b/layers/windows/VkLayer_standard_validation.json
index 6b52306e..e5f52394 100644
--- a/layers/windows/VkLayer_standard_validation.json
+++ b/layers/windows/VkLayer_standard_validation.json
@@ -3,7 +3,7 @@
"layer": {
"name": "VK_LAYER_LUNARG_standard_validation",
"type": "GLOBAL",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "LunarG Standard Validation",
"component_layers": [
diff --git a/layers/windows/VkLayer_threading.json b/layers/windows/VkLayer_threading.json
index ffd244c3..2dcd9fb5 100644
--- a/layers/windows/VkLayer_threading.json
+++ b/layers/windows/VkLayer_threading.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_GOOGLE_threading",
"type": "GLOBAL",
"library_path": ".\\VkLayer_threading.dll",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "Google Validation Layer",
"instance_extensions": [
diff --git a/layers/windows/VkLayer_unique_objects.json b/layers/windows/VkLayer_unique_objects.json
index 82eca7c2..8a438b84 100644
--- a/layers/windows/VkLayer_unique_objects.json
+++ b/layers/windows/VkLayer_unique_objects.json
@@ -4,7 +4,7 @@
"name": "VK_LAYER_GOOGLE_unique_objects",
"type": "GLOBAL",
"library_path": ".\\VkLayer_unique_objects.dll",
- "api_version": "1.0.51",
+ "api_version": "1.0.54",
"implementation_version": "1",
"description": "Google Validation Layer"
}