From 7c32e6842579a5d3a27ed1b0108257bc3efee42e Mon Sep 17 00:00:00 2001 From: Mark Lobodzinski Date: Mon, 26 Jun 2017 16:27:15 -0600 Subject: [PATCH] layers: Plumb in PV implicit requiredbits vuids Change-Id: I6a9296d7f7bd73bf90855b32c522ab9d2b8bb04a --- layers/parameter_validation.cpp | 19 ++++++----- layers/parameter_validation_utils.h | 7 ++-- layers/vk_validation_error_database.txt | 56 +++++++++++++++---------------- scripts/parameter_validation_generator.py | 14 +++++--- 4 files changed, 51 insertions(+), 45 deletions(-) diff --git a/layers/parameter_validation.cpp b/layers/parameter_validation.cpp index ea56552..f9fff6c 100644 --- a/layers/parameter_validation.cpp +++ b/layers/parameter_validation.cpp @@ -2320,12 +2320,13 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateGraphicsPipelines(VkDevice device, VkPipeli "VkBlendOp", VK_BLEND_OP_BEGIN_RANGE, VK_BLEND_OP_END_RANGE, pCreateInfos[i].pColorBlendState->pAttachments[attachmentIndex].alphaBlendOp); - skip |= validate_flags( - report_data, "vkCreateGraphicsPipelines", - ParameterName("pCreateInfos[%i].pColorBlendState->pAttachments[%i].colorWriteMask", - ParameterName::IndexVector{i, attachmentIndex}), - "VkColorComponentFlagBits", AllVkColorComponentFlagBits, - pCreateInfos[i].pColorBlendState->pAttachments[attachmentIndex].colorWriteMask, false, false); + skip |= + validate_flags(report_data, "vkCreateGraphicsPipelines", + ParameterName("pCreateInfos[%i].pColorBlendState->pAttachments[%i].colorWriteMask", + ParameterName::IndexVector{i, attachmentIndex}), + "VkColorComponentFlagBits", AllVkColorComponentFlagBits, + pCreateInfos[i].pColorBlendState->pAttachments[attachmentIndex].colorWriteMask, + false, false, VALIDATION_ERROR_UNDEFINED); } } @@ -3027,10 +3028,10 @@ static bool PreBeginCommandBuffer(layer_data *dev_data, VkCommandBuffer commandB "inheritedQueries. %s", validation_error_map[VALIDATION_ERROR_02a00070]); } - // VALIDATION_ERROR_02a00072 check if ((dev_data->physical_device_features.inheritedQueries != VK_FALSE) && (pInfo->occlusionQueryEnable != VK_FALSE)) { skip |= validate_flags(dev_data->report_data, "vkBeginCommandBuffer", "pBeginInfo->pInheritanceInfo->queryFlags", - "VkQueryControlFlagBits", AllVkQueryControlFlagBits, pInfo->queryFlags, false, false); + "VkQueryControlFlagBits", AllVkQueryControlFlagBits, pInfo->queryFlags, false, false, + VALIDATION_ERROR_02a00072); } } return skip; @@ -3066,7 +3067,7 @@ VKAPI_ATTR VkResult VKAPI_CALL BeginCommandBuffer(VkCommandBuffer commandBuffer, // TODO: This must be 0 if the pipeline statistics queries feature is not enabled skip |= validate_flags(report_data, "vkBeginCommandBuffer", "pBeginInfo->pInheritanceInfo->pipelineStatistics", "VkQueryPipelineStatisticFlagBits", AllVkQueryPipelineStatisticFlagBits, - pBeginInfo->pInheritanceInfo->pipelineStatistics, false, false); + pBeginInfo->pInheritanceInfo->pipelineStatistics, false, false, VALIDATION_ERROR_UNDEFINED); } skip |= PreBeginCommandBuffer(device_data, commandBuffer, pBeginInfo); diff --git a/layers/parameter_validation_utils.h b/layers/parameter_validation_utils.h index b1ccc1a..518283b 100644 --- a/layers/parameter_validation_utils.h +++ b/layers/parameter_validation_utils.h @@ -732,14 +732,15 @@ static bool validate_reserved_flags(debug_report_data *report_data, const char * * @return Boolean value indicating that the call should be skipped. */ static bool validate_flags(debug_report_data *report_data, const char *api_name, const ParameterName ¶meter_name, - const char *flag_bits_name, VkFlags all_flags, VkFlags value, bool flags_required, bool singleFlag) { + const char *flag_bits_name, VkFlags all_flags, VkFlags value, bool flags_required, bool singleFlag, + UNIQUE_VALIDATION_ERROR_CODE vuid) { bool skip_call = false; if (value == 0) { if (flags_required) { skip_call |= log_msg(report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0, __LINE__, - REQUIRED_PARAMETER, LayerName, "%s: value of %s must not be 0", api_name, - parameter_name.get_name().c_str()); + vuid, LayerName, "%s: value of %s must not be 0. %s", api_name, + parameter_name.get_name().c_str(), validation_error_map[vuid]); } } else if ((value & (~all_flags)) != 0) { skip_call |= diff --git a/layers/vk_validation_error_database.txt b/layers/vk_validation_error_database.txt index 4042a4a..aaad81f 100644 --- a/layers/vk_validation_error_database.txt +++ b/layers/vk_validation_error_database.txt @@ -101,7 +101,7 @@ VALIDATION_ERROR_0141c40d~^~Y~^~Unknown~^~vkCreateBuffer~^~VUID-VkBufferCreateIn 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_0142c001~^~N~^~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~^~N~^~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 +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 VALIDATION_ERROR_01600182~^~Y~^~MiscImageLayerTests~^~vkCmdCopyImageToBuffer~^~VUID-VkBufferImageCopy-bufferOffset-00193~^~core~^~The spec valid usage text states 'If the the calling command's VkImage parameter's format is not a depth/stencil format, then bufferOffset must be a multiple of the format's element size' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferImageCopy-bufferOffset-00193)~^~ VALIDATION_ERROR_01600184~^~Y~^~MiscImageLayerTests~^~vkCmdCopyImageToBuffer~^~VUID-VkBufferImageCopy-bufferOffset-00194~^~core~^~The spec valid usage text states 'bufferOffset must be a multiple of 4' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferImageCopy-bufferOffset-00194)~^~ VALIDATION_ERROR_01600186~^~Y~^~MiscImageLayerTests~^~vkCmdCopyImageToBuffer~^~VUID-VkBufferImageCopy-bufferRowLength-00195~^~core~^~The spec valid usage text states 'bufferRowLength must be 0, or greater than or equal to the width member of imageExtent' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkBufferImageCopy-bufferRowLength-00195)~^~ @@ -201,7 +201,7 @@ VALIDATION_ERROR_0281c40d~^~Y~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandB VALIDATION_ERROR_0282b00b~^~Y~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandBufferBeginInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCommandBufferBeginInfo-sType-sType)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_02a00009~^~Y~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandBufferInheritanceInfo-commonparent~^~core~^~The spec valid usage text states 'Both of framebuffer, and renderPass 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-VkCommandBufferInheritanceInfo-commonparent)~^~implicit VALIDATION_ERROR_02a00070~^~Y~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandBufferInheritanceInfo-occlusionQueryEnable-00056~^~core~^~The spec valid usage text states 'If the inherited queries feature is not enabled, occlusionQueryEnable must be VK_FALSE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCommandBufferInheritanceInfo-occlusionQueryEnable-00056)~^~ -VALIDATION_ERROR_02a00072~^~N~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandBufferInheritanceInfo-queryFlags-00057~^~core~^~The spec valid usage text states 'If the inherited queries feature is enabled, queryFlags must be a valid combination of VkQueryControlFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCommandBufferInheritanceInfo-queryFlags-00057)~^~ +VALIDATION_ERROR_02a00072~^~Y~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandBufferInheritanceInfo-queryFlags-00057~^~core~^~The spec valid usage text states 'If the inherited queries feature is enabled, queryFlags must be a valid combination of VkQueryControlFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCommandBufferInheritanceInfo-queryFlags-00057)~^~ VALIDATION_ERROR_02a00074~^~N~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandBufferInheritanceInfo-pipelineStatistics-00058~^~core~^~The spec valid usage text states 'If the pipeline statistics queries feature is not enabled, pipelineStatistics must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCommandBufferInheritanceInfo-pipelineStatistics-00058)~^~ VALIDATION_ERROR_02a1c40d~^~N~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandBufferInheritanceInfo-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-VkCommandBufferInheritanceInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer. VALIDATION_ERROR_02a2b00b~^~N~^~Unknown~^~vkBeginCommandBuffer~^~VUID-VkCommandBufferInheritanceInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkCommandBufferInheritanceInfo-sType-sType)~^~implicit, TBD in parameter validation layer. @@ -656,7 +656,7 @@ VALIDATION_ERROR_09e2b401~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo VALIDATION_ERROR_09e2c001~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-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-VkImageCreateInfo-sharingMode-parameter)~^~implicit VALIDATION_ERROR_09e2fa01~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-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-VkImageCreateInfo-tiling-parameter)~^~implicit VALIDATION_ERROR_09e30601~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageCreateInfo-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-VkImageCreateInfo-usage-parameter)~^~implicit -VALIDATION_ERROR_09e30603~^~N~^~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_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)~^~ @@ -701,19 +701,19 @@ VALIDATION_ERROR_0a22d601~^~N~^~Unknown~^~vkCmdResolveImage~^~VUID-VkImageResolv VALIDATION_ERROR_0a4007cc~^~Y~^~ExerciseGetImageSubresourceLayout~^~vkGetImageSubresourceLayout~^~VUID-VkImageSubresource-mipLevel-00998~^~core~^~The spec valid usage text states 'mipLevel must be less than the mipLevels specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresource-mipLevel-00998)~^~ VALIDATION_ERROR_0a4007ce~^~Y~^~ExerciseGetImageSubresourceLayout~^~vkGetImageSubresourceLayout~^~VUID-VkImageSubresource-arrayLayer-00999~^~core~^~The spec valid usage text states 'arrayLayer must be less than the arrayLayers specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresource-arrayLayer-00999)~^~ VALIDATION_ERROR_0a400c01~^~Y~^~InvalidImageViewAspect~^~vkGetImageSubresourceLayout~^~VUID-VkImageSubresource-aspectMask-parameter~^~core~^~The spec valid usage text states 'aspectMask must be a valid combination of VkImageAspectFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresource-aspectMask-parameter)~^~implicit, Multi-purposing this enum for various invalid aspect usage. There is some "must" language in spec at VkImageAspectFlagBits definition that we need specific enums for. Also need more tests for these cases. -VALIDATION_ERROR_0a400c03~^~N~^~Unknown~^~vkGetImageSubresourceLayout~^~VUID-VkImageSubresource-aspectMask-requiredbitmask~^~core~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresource-aspectMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_0a400c03~^~Y~^~Unknown~^~vkGetImageSubresourceLayout~^~VUID-VkImageSubresource-aspectMask-requiredbitmask~^~core~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresource-aspectMask-requiredbitmask)~^~implicit VALIDATION_ERROR_0a60014e~^~Y~^~CopyImageAspectMismatch~^~vkCmdCopyImage~^~VUID-VkImageSubresourceLayers-aspectMask-00167~^~core~^~The spec valid usage text states 'If aspectMask contains VK_IMAGE_ASPECT_COLOR_BIT, it must not contain either of VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceLayers-aspectMask-00167)~^~ VALIDATION_ERROR_0a600150~^~Y~^~CopyImageAspectMismatch~^~vkCmdCopyImage~^~VUID-VkImageSubresourceLayers-aspectMask-00168~^~core~^~The spec valid usage text states 'aspectMask must not contain VK_IMAGE_ASPECT_METADATA_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceLayers-aspectMask-00168)~^~ VALIDATION_ERROR_0a600152~^~Y~^~Unknown~^~vkCmdCopyImage~^~VUID-VkImageSubresourceLayers-mipLevel-00169~^~core~^~The spec valid usage text states 'mipLevel must be less than the mipLevels specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceLayers-mipLevel-00169)~^~ VALIDATION_ERROR_0a600154~^~Y~^~CopyImageTypeExtentMismatch~^~vkCmdCopyImage~^~VUID-VkImageSubresourceLayers-baseArrayLayer-00170~^~core~^~The spec valid usage text states '(baseArrayLayer + layerCount) must be less than or equal to the arrayLayers specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceLayers-baseArrayLayer-00170)~^~ VALIDATION_ERROR_0a600c01~^~Y~^~Unknown~^~vkCmdCopyImage~^~VUID-VkImageSubresourceLayers-aspectMask-parameter~^~core~^~The spec valid usage text states 'aspectMask must be a valid combination of VkImageAspectFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceLayers-aspectMask-parameter)~^~implicit -VALIDATION_ERROR_0a600c03~^~N~^~Unknown~^~vkCmdCopyImage~^~VUID-VkImageSubresourceLayers-aspectMask-requiredbitmask~^~core~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceLayers-aspectMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_0a600c03~^~Y~^~Unknown~^~vkCmdCopyImage~^~VUID-VkImageSubresourceLayers-aspectMask-requiredbitmask~^~core~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceLayers-aspectMask-requiredbitmask)~^~implicit VALIDATION_ERROR_0a8007fc~^~Y~^~ImageViewSubresourceRangeTests,InvalidBarriers,ClearColorImageWithBadRange,ClearDepthStencilWithBadRange,ClearColorImageWithValidRange,ClearDepthStencilWithValidRange~^~vkCreateImageView~^~VUID-VkImageSubresourceRange-levelCount-01022~^~core~^~The spec valid usage text states 'If levelCount is not VK_REMAINING_MIP_LEVELS, levelCount must be non-zero and (baseMipLevel + levelCount) must be less than or equal to the mipLevels specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceRange-levelCount-01022)~^~ VALIDATION_ERROR_0a8007fe~^~Y~^~ImageViewSubresourceRangeTests,InvalidBarriers,ClearColorImageWithBadRange,ClearDepthStencilWithBadRange,ClearColorImageWithValidRange,ClearDepthStencilWithValidRange~^~vkCreateImageView~^~VUID-VkImageSubresourceRange-layerCount-01023~^~!(VK_KHR_maintenance1)~^~The spec valid usage text states 'If layerCount is not VK_REMAINING_ARRAY_LAYERS, layerCount must be non-zero and (baseArrayLayer + layerCount) must be less than or equal to the arrayLayers specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceRange-layerCount-01023)~^~ VALIDATION_ERROR_0a800800~^~Y~^~None~^~vkCreateImageView~^~VUID-VkImageSubresourceRange-imageType-01024~^~(VK_KHR_maintenance1)~^~The spec valid usage text states 'If the imageType specified in VkImageCreateInfo when the image was created was VK_IMAGE_TYPE_3D and the image view is created with the viewType of VkImageViewCreateInfo set to VK_IMAGE_VIEW_TYPE_2D_ARRAY then layerCount must be VK_REMAINING_ARRAY_LAYERS, or layerCount must be non-zero and (baseArrayLayer + layerCount) must be less than or equal to the extent.depth specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSubresourceRange-imageType-01024)~^~ VALIDATION_ERROR_0a800802~^~Y~^~None~^~vkCreateImageView~^~VUID-VkImageSubresourceRange-imageType-01025~^~(VK_KHR_maintenance1)~^~The spec valid usage text states 'If the imageType specified in VkImageCreateInfo when the image was created was not VK_IMAGE_TYPE_3D or the image view is not created with the viewType of VkImageViewCreateInfo set to VK_IMAGE_VIEW_TYPE_2D_ARRAY then layerCount must be VK_REMAINING_ARRAY_LAYERS, or layerCount must be non-zero and (baseArrayLayer + layerCount) must be less than or equal to the arrayLayers specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSubresourceRange-imageType-01025)~^~ VALIDATION_ERROR_0a800c01~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageSubresourceRange-aspectMask-parameter~^~core~^~The spec valid usage text states 'aspectMask must be a valid combination of VkImageAspectFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceRange-aspectMask-parameter)~^~implicit -VALIDATION_ERROR_0a800c03~^~N~^~Unknown~^~vkCreateImageView~^~VUID-VkImageSubresourceRange-aspectMask-requiredbitmask~^~core~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceRange-aspectMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_0a800c03~^~Y~^~Unknown~^~vkCreateImageView~^~VUID-VkImageSubresourceRange-aspectMask-requiredbitmask~^~core~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSubresourceRange-aspectMask-requiredbitmask)~^~implicit VALIDATION_ERROR_0aa007c6~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageSwapchainCreateInfoKHX-swapchain-00995~^~core~^~The spec valid usage text states 'If swapchain is not VK_NULL_HANDLE, the fields of VkImageCreateInfo must match the implied image creation parameters of the swapchain' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSwapchainCreateInfoKHX-swapchain-00995)~^~ VALIDATION_ERROR_0aa2b00b~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageSwapchainCreateInfoKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSwapchainCreateInfoKHX-sType-sType)~^~implicit VALIDATION_ERROR_0aa2f001~^~N~^~Unknown~^~vkCreateImage~^~VUID-VkImageSwapchainCreateInfoKHX-swapchain-parameter~^~core~^~The spec valid usage text states 'If swapchain is not VK_NULL_HANDLE, swapchain must be a valid VkSwapchainKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkImageSwapchainCreateInfoKHX-swapchain-parameter)~^~implicit @@ -772,7 +772,7 @@ VALIDATION_ERROR_0b42b801~^~N~^~Unknown~^~vkImportSemaphoreFdKHX~^~VUID-VkImport 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~^~N~^~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_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 @@ -782,7 +782,7 @@ VALIDATION_ERROR_0b800a8a~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VU VALIDATION_ERROR_0b800a8c~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-01350~^~core~^~The spec valid usage text states 'All state binding tokens in pTokens must occur prior work provoking tokens (VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX, VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX, VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX).' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-01350)~^~ VALIDATION_ERROR_0b800a8e~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-01351~^~core~^~The spec valid usage text states 'The content of pTokens must include one single work provoking token that is compatible with the pipelineBindPoint.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-01351)~^~ VALIDATION_ERROR_0b809001~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkIndirectCommandsLayoutUsageFlagBitsNVX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-flags-parameter)~^~implicit -VALIDATION_ERROR_0b809003~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-flags-requiredbitmask~^~core~^~The spec valid usage text states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-flags-requiredbitmask)~^~implicit +VALIDATION_ERROR_0b809003~^~Y~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-flags-requiredbitmask~^~core~^~The spec valid usage text states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-flags-requiredbitmask)~^~implicit VALIDATION_ERROR_0b81c40d~^~Y~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-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-VkIndirectCommandsLayoutCreateInfoNVX-pNext-pNext)~^~implicit VALIDATION_ERROR_0b826001~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-parameter~^~core~^~The spec valid usage text states 'pTokens must be a pointer to an array of tokenCount valid VkIndirectCommandsLayoutTokenNVX structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-pTokens-parameter)~^~implicit VALIDATION_ERROR_0b827e01~^~N~^~Unknown~^~vkCreateIndirectCommandsLayoutNVX~^~VUID-VkIndirectCommandsLayoutCreateInfoNVX-pipelineBindPoint-parameter~^~core~^~The spec valid usage text states 'pipelineBindPoint must be a valid VkPipelineBindPoint value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkIndirectCommandsLayoutCreateInfoNVX-pipelineBindPoint-parameter)~^~implicit @@ -867,7 +867,7 @@ VALIDATION_ERROR_0ce28201~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTa VALIDATION_ERROR_0ce30401~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableDescriptorSetEntryNVX-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-VkObjectTableDescriptorSetEntryNVX-type-parameter)~^~implicit VALIDATION_ERROR_0d000aae~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableEntryNVX-computeBindingPointSupport-01367~^~core~^~The spec valid usage text states 'If the VkDeviceGeneratedCommandsFeaturesNVX::computeBindingPointSupport feature is not enabled, flags must not contain VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkObjectTableEntryNVX-computeBindingPointSupport-01367)~^~ VALIDATION_ERROR_0d009001~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableEntryNVX-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkObjectEntryUsageFlagBitsNVX values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkObjectTableEntryNVX-flags-parameter)~^~implicit -VALIDATION_ERROR_0d009003~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableEntryNVX-flags-requiredbitmask~^~core~^~The spec valid usage text states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkObjectTableEntryNVX-flags-requiredbitmask)~^~implicit +VALIDATION_ERROR_0d009003~^~Y~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableEntryNVX-flags-requiredbitmask~^~core~^~The spec valid usage text states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkObjectTableEntryNVX-flags-requiredbitmask)~^~implicit VALIDATION_ERROR_0d030401~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableEntryNVX-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-VkObjectTableEntryNVX-type-parameter)~^~implicit VALIDATION_ERROR_0d200ab6~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableIndexBufferEntryNVX-type-01371~^~core~^~The spec valid usage text states 'type must be VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkObjectTableIndexBufferEntryNVX-type-01371)~^~ VALIDATION_ERROR_0d201a01~^~N~^~Unknown~^~vkRegisterObjectsNVX~^~VUID-VkObjectTableIndexBufferEntryNVX-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-VkObjectTableIndexBufferEntryNVX-buffer-parameter)~^~implicit @@ -899,7 +899,7 @@ VALIDATION_ERROR_0dc09c01~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalBufferPrope 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~^~N~^~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_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~^~N~^~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 @@ -915,7 +915,7 @@ VALIDATION_ERROR_0e62b00b~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperti VALIDATION_ERROR_0e62fa01~^~N~^~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~^~N~^~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 VALIDATION_ERROR_0e630601~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-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-VkPhysicalDeviceImageFormatInfo2KHR-usage-parameter)~^~implicit -VALIDATION_ERROR_0e630603~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-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-VkPhysicalDeviceImageFormatInfo2KHR-usage-requiredbitmask)~^~implicit +VALIDATION_ERROR_0e630603~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceImageFormatInfo2KHR-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-VkPhysicalDeviceImageFormatInfo2KHR-usage-requiredbitmask)~^~implicit VALIDATION_ERROR_0e800488~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceMultiviewFeaturesKHX-multiviewGeometryShader-00580~^~core~^~The spec valid usage text states 'If multiviewGeometryShader is enabled then multiview must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeaturesKHX-multiviewGeometryShader-00580)~^~ VALIDATION_ERROR_0e80048a~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceMultiviewFeaturesKHX-multiviewTessellationShader-00581~^~core~^~The spec valid usage text states 'If multiviewTessellationShader is enabled then multiview must also be enabled.' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeaturesKHX-multiviewTessellationShader-00581)~^~ VALIDATION_ERROR_0e82b00b~^~N~^~Unknown~^~vkGetPhysicalDeviceFeatures2KHR~^~VUID-VkPhysicalDeviceMultiviewFeaturesKHX-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewFeaturesKHX-sType-sType)~^~implicit @@ -929,7 +929,7 @@ VALIDATION_ERROR_0ec2b401~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatPr VALIDATION_ERROR_0ec2fa01~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceSparseImageFormatInfo2KHR-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-VkPhysicalDeviceSparseImageFormatInfo2KHR-tiling-parameter)~^~implicit VALIDATION_ERROR_0ec30401~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceSparseImageFormatInfo2KHR-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-VkPhysicalDeviceSparseImageFormatInfo2KHR-type-parameter)~^~implicit VALIDATION_ERROR_0ec30601~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceSparseImageFormatInfo2KHR-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-VkPhysicalDeviceSparseImageFormatInfo2KHR-usage-parameter)~^~implicit -VALIDATION_ERROR_0ec30603~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceSparseImageFormatInfo2KHR-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-VkPhysicalDeviceSparseImageFormatInfo2KHR-usage-requiredbitmask)~^~implicit +VALIDATION_ERROR_0ec30603~^~Y~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties2KHR~^~VUID-VkPhysicalDeviceSparseImageFormatInfo2KHR-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-VkPhysicalDeviceSparseImageFormatInfo2KHR-usage-requiredbitmask)~^~implicit VALIDATION_ERROR_0ee1c40d~^~Y~^~Unknown~^~vkGetPhysicalDeviceSurfaceCapabilities2KHR~^~VUID-VkPhysicalDeviceSurfaceInfo2KHR-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-VkPhysicalDeviceSurfaceInfo2KHR-pNext-pNext)~^~implicit VALIDATION_ERROR_0ee2b00b~^~Y~^~Unknown~^~vkGetPhysicalDeviceSurfaceCapabilities2KHR~^~VUID-VkPhysicalDeviceSurfaceInfo2KHR-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPhysicalDeviceSurfaceInfo2KHR-sType-sType)~^~implicit VALIDATION_ERROR_0ee2ec01~^~Y~^~Unknown~^~vkGetPhysicalDeviceSurfaceCapabilities2KHR~^~VUID-VkPhysicalDeviceSurfaceInfo2KHR-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-VkPhysicalDeviceSurfaceInfo2KHR-surface-parameter)~^~implicit @@ -1244,10 +1244,10 @@ VALIDATION_ERROR_13e006d0~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDep VALIDATION_ERROR_13e03e01~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-dependencyFlags-parameter~^~core~^~The spec valid usage text states 'dependencyFlags must be a valid combination of VkDependencyFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDependency-dependencyFlags-parameter)~^~implicit VALIDATION_ERROR_13e06801~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-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-VkSubpassDependency-dstAccessMask-parameter)~^~implicit VALIDATION_ERROR_13e07801~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-dstStageMask-parameter~^~core~^~The spec valid usage text states 'dstStageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDependency-dstStageMask-parameter)~^~implicit -VALIDATION_ERROR_13e07803~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-dstStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'dstStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDependency-dstStageMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_13e07803~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-dstStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'dstStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDependency-dstStageMask-requiredbitmask)~^~implicit VALIDATION_ERROR_13e2c401~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-srcAccessMask-parameter~^~core~^~The spec valid usage text states 'srcAccessMask must be a valid combination of VkAccessFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDependency-srcAccessMask-parameter)~^~implicit VALIDATION_ERROR_13e2d401~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-srcStageMask-parameter~^~core~^~The spec valid usage text states 'srcStageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDependency-srcStageMask-parameter)~^~implicit -VALIDATION_ERROR_13e2d403~^~N~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-srcStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'srcStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDependency-srcStageMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_13e2d403~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDependency-srcStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'srcStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDependency-srcStageMask-requiredbitmask)~^~implicit VALIDATION_ERROR_14000698~^~Y~^~Unknown~^~vkCreateRenderPass~^~VUID-VkSubpassDescription-pipelineBindPoint-00844~^~core~^~The spec valid usage text states 'pipelineBindPoint must be VK_PIPELINE_BIND_POINT_GRAPHICS' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDescription-pipelineBindPoint-00844)~^~ VALIDATION_ERROR_1400069a~^~Y~^~CreateRenderPassAttachments~^~vkCreateRenderPass~^~VUID-VkSubpassDescription-colorAttachmentCount-00845~^~core~^~The spec valid usage text states 'colorAttachmentCount must be less than or equal to VkPhysicalDeviceLimits::maxColorAttachments' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDescription-colorAttachmentCount-00845)~^~ VALIDATION_ERROR_1400069c~^~Y~^~CreateRenderPassAttachments~^~vkCreateRenderPass~^~VUID-VkSubpassDescription-loadOp-00846~^~core~^~The spec valid usage text states 'If the first use of an attachment in this render pass is as an input attachment, and the attachment is not also used as a color or depth/stencil attachment in the same subpass, then loadOp must not be VK_ATTACHMENT_LOAD_OP_CLEAR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDescription-loadOp-00846)~^~ @@ -1294,7 +1294,7 @@ VALIDATION_ERROR_1460a201~^~N~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchai VALIDATION_ERROR_1460a401~^~N~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-imageFormat-parameter~^~core~^~The spec valid usage text states 'imageFormat must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-imageFormat-parameter)~^~implicit VALIDATION_ERROR_1460a801~^~N~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-imageSharingMode-parameter~^~core~^~The spec valid usage text states 'imageSharingMode must be a valid VkSharingMode value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-imageSharingMode-parameter)~^~implicit VALIDATION_ERROR_1460ae01~^~N~^~Unknown~^~vkCreateSwapchainKHR~^~VUID-VkSwapchainCreateInfoKHR-imageUsage-parameter~^~core~^~The spec valid usage text states 'imageUsage must be a valid combination of VkImageUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-imageUsage-parameter)~^~implicit -VALIDATION_ERROR_1460ae03~^~N~^~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_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 @@ -2053,12 +2053,12 @@ VALIDATION_ERROR_1b802413~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipel VALIDATION_ERROR_1b802415~^~Y~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support transfer, graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1b803e01~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-dependencyFlags-parameter~^~core~^~The spec valid usage text states 'dependencyFlags must be a valid combination of VkDependencyFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-dependencyFlags-parameter)~^~implicit VALIDATION_ERROR_1b807801~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-dstStageMask-parameter~^~core~^~The spec valid usage text states 'dstStageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-dstStageMask-parameter)~^~implicit -VALIDATION_ERROR_1b807803~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-dstStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'dstStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-dstStageMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1b807803~^~Y~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-dstStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'dstStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-dstStageMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1b810401~^~Y~^~None~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-pBufferMemoryBarriers-parameter~^~core~^~The spec valid usage text states 'If bufferMemoryBarrierCount is not 0, pBufferMemoryBarriers must be a pointer to an array of bufferMemoryBarrierCount valid VkBufferMemoryBarrier structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-pBufferMemoryBarriers-parameter)~^~implicit VALIDATION_ERROR_1b818a01~^~Y~^~None~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-pImageMemoryBarriers-parameter~^~core~^~The spec valid usage text states 'If imageMemoryBarrierCount is not 0, pImageMemoryBarriers must be a pointer to an array of imageMemoryBarrierCount valid VkImageMemoryBarrier structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-pImageMemoryBarriers-parameter)~^~implicit VALIDATION_ERROR_1b81ac01~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-pMemoryBarriers-parameter~^~core~^~The spec valid usage text states 'If memoryBarrierCount is not 0, pMemoryBarriers must be a pointer to an array of memoryBarrierCount valid VkMemoryBarrier structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-pMemoryBarriers-parameter)~^~implicit VALIDATION_ERROR_1b82d401~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-srcStageMask-parameter~^~core~^~The spec valid usage text states 'srcStageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-srcStageMask-parameter)~^~implicit -VALIDATION_ERROR_1b82d403~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-srcStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'srcStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-srcStageMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1b82d403~^~Y~^~Unknown~^~vkCmdPipelineBarrier~^~VUID-vkCmdPipelineBarrier-srcStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'srcStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdPipelineBarrier-srcStageMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1ba00017~^~N~^~Unknown~^~vkCmdProcessCommandsNVX~^~VUID-vkCmdProcessCommandsNVX-renderpass~^~core~^~The spec valid usage text states 'This command must only be called inside of a render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdProcessCommandsNVX-renderpass)~^~implicit VALIDATION_ERROR_1ba02401~^~N~^~Unknown~^~vkCmdProcessCommandsNVX~^~VUID-vkCmdProcessCommandsNVX-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdProcessCommandsNVX-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1ba02413~^~N~^~Unknown~^~vkCmdProcessCommandsNVX~^~VUID-vkCmdProcessCommandsNVX-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdProcessCommandsNVX-commandBuffer-recording)~^~implicit @@ -2117,7 +2117,7 @@ VALIDATION_ERROR_1c402413~^~N~^~Unknown~^~vkCmdResetEvent~^~VUID-vkCmdResetEvent VALIDATION_ERROR_1c402415~^~Y~^~Unknown~^~vkCmdResetEvent~^~VUID-vkCmdResetEvent-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResetEvent-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1c407e01~^~Y~^~None~^~vkCmdResetEvent~^~VUID-vkCmdResetEvent-event-parameter~^~core~^~The spec valid usage text states 'event must be a valid VkEvent handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResetEvent-event-parameter)~^~implicit VALIDATION_ERROR_1c42de01~^~N~^~Unknown~^~vkCmdResetEvent~^~VUID-vkCmdResetEvent-stageMask-parameter~^~core~^~The spec valid usage text states 'stageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResetEvent-stageMask-parameter)~^~implicit -VALIDATION_ERROR_1c42de03~^~N~^~Unknown~^~vkCmdResetEvent~^~VUID-vkCmdResetEvent-stageMask-requiredbitmask~^~core~^~The spec valid usage text states 'stageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResetEvent-stageMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1c42de03~^~Y~^~Unknown~^~vkCmdResetEvent~^~VUID-vkCmdResetEvent-stageMask-requiredbitmask~^~core~^~The spec valid usage text states 'stageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResetEvent-stageMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1c600009~^~Y~^~Unknown~^~vkCmdResetQueryPool~^~VUID-vkCmdResetQueryPool-commonparent~^~core~^~The spec valid usage text states 'Both of commandBuffer, and queryPool must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResetQueryPool-commonparent)~^~implicit VALIDATION_ERROR_1c600017~^~Y~^~Unknown~^~vkCmdResetQueryPool~^~VUID-vkCmdResetQueryPool-renderpass~^~core~^~The spec valid usage text states 'This command must only be called outside of a render pass instance' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResetQueryPool-renderpass)~^~implicit VALIDATION_ERROR_1c600638~^~N~^~Unknown~^~vkCmdResetQueryPool~^~VUID-vkCmdResetQueryPool-firstQuery-00796~^~core~^~The spec valid usage text states 'firstQuery must be less than the number of queries in queryPool' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdResetQueryPool-firstQuery-00796)~^~ @@ -2196,7 +2196,7 @@ VALIDATION_ERROR_1d402413~^~N~^~Unknown~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-com VALIDATION_ERROR_1d402415~^~Y~^~Unknown~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1d407e01~^~Y~^~None~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-event-parameter~^~core~^~The spec valid usage text states 'event must be a valid VkEvent handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-event-parameter)~^~implicit VALIDATION_ERROR_1d42de01~^~N~^~Unknown~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-stageMask-parameter~^~core~^~The spec valid usage text states 'stageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-stageMask-parameter)~^~implicit -VALIDATION_ERROR_1d42de03~^~N~^~Unknown~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-stageMask-requiredbitmask~^~core~^~The spec valid usage text states 'stageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-stageMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1d42de03~^~Y~^~Unknown~^~vkCmdSetEvent~^~VUID-vkCmdSetEvent-stageMask-requiredbitmask~^~core~^~The spec valid usage text states 'stageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetEvent-stageMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1d600626~^~Y~^~Unknown~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-None-00787~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_LINE_WIDTH dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-None-00787)~^~ VALIDATION_ERROR_1d600628~^~N~^~Unknown~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-lineWidth-00788~^~core~^~The spec valid usage text states 'If the wide lines feature is not enabled, lineWidth must be 1.0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-lineWidth-00788)~^~ VALIDATION_ERROR_1d602401~^~Y~^~None~^~vkCmdSetLineWidth~^~VUID-vkCmdSetLineWidth-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetLineWidth-commandBuffer-parameter)~^~implicit @@ -2220,19 +2220,19 @@ VALIDATION_ERROR_1da02401~^~Y~^~None~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSe VALIDATION_ERROR_1da02413~^~N~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1da02415~^~Y~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1da08401~^~N~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-faceMask-parameter~^~core~^~The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-faceMask-parameter)~^~implicit -VALIDATION_ERROR_1da08403~^~N~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-faceMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1da08403~^~Y~^~Unknown~^~vkCmdSetStencilCompareMask~^~VUID-vkCmdSetStencilCompareMask-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilCompareMask-faceMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1dc004b8~^~N~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-None-00604~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_REFERENCE dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-None-00604)~^~ VALIDATION_ERROR_1dc02401~^~Y~^~None~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1dc02413~^~N~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1dc02415~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1dc08401~^~N~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-faceMask-parameter~^~core~^~The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-faceMask-parameter)~^~implicit -VALIDATION_ERROR_1dc08403~^~N~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-faceMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1dc08403~^~Y~^~Unknown~^~vkCmdSetStencilReference~^~VUID-vkCmdSetStencilReference-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilReference-faceMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1de004b6~^~N~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-None-00603~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_STENCIL_WRITE_MASK dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-None-00603)~^~ VALIDATION_ERROR_1de02401~^~Y~^~None~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-commandBuffer-parameter~^~core~^~The spec valid usage text states 'commandBuffer must be a valid VkCommandBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-parameter)~^~implicit VALIDATION_ERROR_1de02413~^~N~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1de02415~^~Y~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1de08401~^~N~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-faceMask-parameter~^~core~^~The spec valid usage text states 'faceMask must be a valid combination of VkStencilFaceFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-faceMask-parameter)~^~implicit -VALIDATION_ERROR_1de08403~^~N~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-faceMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1de08403~^~Y~^~Unknown~^~vkCmdSetStencilWriteMask~^~VUID-vkCmdSetStencilWriteMask-faceMask-requiredbitmask~^~core~^~The spec valid usage text states 'faceMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetStencilWriteMask-faceMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1e00098a~^~N~^~Unknown~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-None-01221~^~core~^~The spec valid usage text states 'The currently bound graphics pipeline must have been created with the VK_DYNAMIC_STATE_VIEWPORT dynamic state enabled' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-None-01221)~^~ VALIDATION_ERROR_1e00098c~^~N~^~Unknown~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-firstViewport-01222~^~core~^~The spec valid usage text states 'firstViewport must be less than VkPhysicalDeviceLimits::maxViewports' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-firstViewport-01222)~^~ VALIDATION_ERROR_1e00098e~^~N~^~Unknown~^~vkCmdSetViewport~^~VUID-vkCmdSetViewport-firstViewport-01223~^~core~^~The spec valid usage text states 'The sum of firstViewport and viewportCount must be between 1 and VkPhysicalDeviceLimits::maxViewports, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdSetViewport-firstViewport-01223)~^~ @@ -2281,14 +2281,14 @@ VALIDATION_ERROR_1e602401~^~Y~^~None~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-co VALIDATION_ERROR_1e602413~^~N~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-commandBuffer-recording~^~core~^~The spec valid usage text states 'commandBuffer must be in the recording state' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-commandBuffer-recording)~^~implicit VALIDATION_ERROR_1e602415~^~Y~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-commandBuffer-cmdpool~^~core~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-commandBuffer-cmdpool)~^~implicit VALIDATION_ERROR_1e607801~^~N~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-dstStageMask-parameter~^~core~^~The spec valid usage text states 'dstStageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-dstStageMask-parameter)~^~implicit -VALIDATION_ERROR_1e607803~^~N~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-dstStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'dstStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-dstStageMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1e607803~^~Y~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-dstStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'dstStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-dstStageMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1e60801b~^~N~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-eventCount-arraylength~^~core~^~The spec valid usage text states 'eventCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-eventCount-arraylength)~^~implicit VALIDATION_ERROR_1e610401~^~Y~^~None~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-pBufferMemoryBarriers-parameter~^~core~^~The spec valid usage text states 'If bufferMemoryBarrierCount is not 0, pBufferMemoryBarriers must be a pointer to an array of bufferMemoryBarrierCount valid VkBufferMemoryBarrier structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-pBufferMemoryBarriers-parameter)~^~implicit VALIDATION_ERROR_1e616001~^~Y~^~None~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-pEvents-parameter~^~core~^~The spec valid usage text states 'pEvents must be a pointer to an array of eventCount valid VkEvent handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-pEvents-parameter)~^~implicit VALIDATION_ERROR_1e618a01~^~Y~^~None~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-pImageMemoryBarriers-parameter~^~core~^~The spec valid usage text states 'If imageMemoryBarrierCount is not 0, pImageMemoryBarriers must be a pointer to an array of imageMemoryBarrierCount valid VkImageMemoryBarrier structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-pImageMemoryBarriers-parameter)~^~implicit VALIDATION_ERROR_1e61ac01~^~N~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-pMemoryBarriers-parameter~^~core~^~The spec valid usage text states 'If memoryBarrierCount is not 0, pMemoryBarriers must be a pointer to an array of memoryBarrierCount valid VkMemoryBarrier structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-pMemoryBarriers-parameter)~^~implicit VALIDATION_ERROR_1e62d401~^~Y~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-srcStageMask-parameter~^~core~^~The spec valid usage text states 'srcStageMask must be a valid combination of VkPipelineStageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-srcStageMask-parameter)~^~implicit -VALIDATION_ERROR_1e62d403~^~N~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-srcStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'srcStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-srcStageMask-requiredbitmask)~^~implicit +VALIDATION_ERROR_1e62d403~^~Y~^~Unknown~^~vkCmdWaitEvents~^~VUID-vkCmdWaitEvents-srcStageMask-requiredbitmask~^~core~^~The spec valid usage text states 'srcStageMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWaitEvents-srcStageMask-requiredbitmask)~^~implicit VALIDATION_ERROR_1e800009~^~Y~^~Unknown~^~vkCmdWriteTimestamp~^~VUID-vkCmdWriteTimestamp-commonparent~^~core~^~The spec valid usage text states 'Both of commandBuffer, and queryPool must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWriteTimestamp-commonparent)~^~implicit VALIDATION_ERROR_1e800678~^~N~^~Unknown~^~vkCmdWriteTimestamp~^~VUID-vkCmdWriteTimestamp-queryPool-00828~^~core~^~The spec valid usage text states 'The query identified by queryPool and query must be unavailable' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWriteTimestamp-queryPool-00828)~^~ VALIDATION_ERROR_1e80067a~^~N~^~Unknown~^~vkCmdWriteTimestamp~^~VUID-vkCmdWriteTimestamp-timestampValidBits-00829~^~core~^~The spec valid usage text states 'The command pool's queue family must support a non-zero timestampValidBits' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkCmdWriteTimestamp-timestampValidBits-00829)~^~ @@ -2788,7 +2788,7 @@ VALIDATION_ERROR_2ae17c01~^~N~^~Unknown~^~vkGetMemoryWin32HandleKHX~^~VUID-vkGet 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 -VALIDATION_ERROR_2b009c03~^~N~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetMemoryWin32HandleNV-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-vkGetMemoryWin32HandleNV-handleType-requiredbitmask)~^~implicit +VALIDATION_ERROR_2b009c03~^~Y~^~Unknown~^~vkGetMemoryWin32HandleNV~^~VUID-vkGetMemoryWin32HandleNV-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-vkGetMemoryWin32HandleNV-handleType-requiredbitmask)~^~implicit 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~^~N~^~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 @@ -2818,7 +2818,7 @@ VALIDATION_ERROR_2bc27a01~^~Y~^~None~^~vkGetPhysicalDeviceExternalImageFormatPro VALIDATION_ERROR_2bc2fa01~^~N~^~Unknown~^~vkGetPhysicalDeviceExternalImageFormatPropertiesNV~^~VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-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-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-tiling-parameter)~^~implicit VALIDATION_ERROR_2bc30401~^~N~^~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~^~N~^~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_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 @@ -2842,7 +2842,7 @@ VALIDATION_ERROR_2ca27a01~^~Y~^~None~^~vkGetPhysicalDeviceImageFormatProperties~ VALIDATION_ERROR_2ca2fa01~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties~^~VUID-vkGetPhysicalDeviceImageFormatProperties-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-vkGetPhysicalDeviceImageFormatProperties-tiling-parameter)~^~implicit VALIDATION_ERROR_2ca30401~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties~^~VUID-vkGetPhysicalDeviceImageFormatProperties-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-vkGetPhysicalDeviceImageFormatProperties-type-parameter)~^~implicit VALIDATION_ERROR_2ca30601~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties~^~VUID-vkGetPhysicalDeviceImageFormatProperties-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-vkGetPhysicalDeviceImageFormatProperties-usage-parameter)~^~implicit -VALIDATION_ERROR_2ca30603~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties~^~VUID-vkGetPhysicalDeviceImageFormatProperties-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-vkGetPhysicalDeviceImageFormatProperties-usage-requiredbitmask)~^~implicit +VALIDATION_ERROR_2ca30603~^~Y~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties~^~VUID-vkGetPhysicalDeviceImageFormatProperties-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-vkGetPhysicalDeviceImageFormatProperties-usage-requiredbitmask)~^~implicit VALIDATION_ERROR_2cc18201~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-vkGetPhysicalDeviceImageFormatProperties2KHR-pImageFormatInfo-parameter~^~core~^~The spec valid usage text states 'pImageFormatInfo must be a pointer to a valid VkPhysicalDeviceImageFormatInfo2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2KHR-pImageFormatInfo-parameter)~^~implicit VALIDATION_ERROR_2cc18401~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-vkGetPhysicalDeviceImageFormatProperties2KHR-pImageFormatProperties-parameter~^~core~^~The spec valid usage text states 'pImageFormatProperties must be a pointer to a VkImageFormatProperties2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceImageFormatProperties2KHR-pImageFormatProperties-parameter)~^~implicit VALIDATION_ERROR_2cc27a01~^~N~^~Unknown~^~vkGetPhysicalDeviceImageFormatProperties2KHR~^~VUID-vkGetPhysicalDeviceImageFormatProperties2KHR-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-vkGetPhysicalDeviceImageFormatProperties2KHR-physicalDevice-parameter)~^~implicit @@ -2876,7 +2876,7 @@ VALIDATION_ERROR_2de2b401~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatPr VALIDATION_ERROR_2de2fa01~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties~^~VUID-vkGetPhysicalDeviceSparseImageFormatProperties-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-vkGetPhysicalDeviceSparseImageFormatProperties-tiling-parameter)~^~implicit VALIDATION_ERROR_2de30401~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties~^~VUID-vkGetPhysicalDeviceSparseImageFormatProperties-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-vkGetPhysicalDeviceSparseImageFormatProperties-type-parameter)~^~implicit VALIDATION_ERROR_2de30601~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties~^~VUID-vkGetPhysicalDeviceSparseImageFormatProperties-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-vkGetPhysicalDeviceSparseImageFormatProperties-usage-parameter)~^~implicit -VALIDATION_ERROR_2de30603~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties~^~VUID-vkGetPhysicalDeviceSparseImageFormatProperties-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-vkGetPhysicalDeviceSparseImageFormatProperties-usage-requiredbitmask)~^~implicit +VALIDATION_ERROR_2de30603~^~Y~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties~^~VUID-vkGetPhysicalDeviceSparseImageFormatProperties-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-vkGetPhysicalDeviceSparseImageFormatProperties-usage-requiredbitmask)~^~implicit VALIDATION_ERROR_2e017401~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties2KHR~^~VUID-vkGetPhysicalDeviceSparseImageFormatProperties2KHR-pFormatInfo-parameter~^~core~^~The spec valid usage text states 'pFormatInfo must be a pointer to a valid VkPhysicalDeviceSparseImageFormatInfo2KHR structure' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceSparseImageFormatProperties2KHR-pFormatInfo-parameter)~^~implicit VALIDATION_ERROR_2e01f401~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties2KHR~^~VUID-vkGetPhysicalDeviceSparseImageFormatProperties2KHR-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 VkSparseImageFormatProperties2KHR structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkGetPhysicalDeviceSparseImageFormatProperties2KHR-pProperties-parameter)~^~implicit VALIDATION_ERROR_2e01f601~^~N~^~Unknown~^~vkGetPhysicalDeviceSparseImageFormatProperties2KHR~^~VUID-vkGetPhysicalDeviceSparseImageFormatProperties2KHR-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-vkGetPhysicalDeviceSparseImageFormatProperties2KHR-pPropertyCount-parameter)~^~implicit diff --git a/scripts/parameter_validation_generator.py b/scripts/parameter_validation_generator.py index 57f2edc..e10ab86 100644 --- a/scripts/parameter_validation_generator.py +++ b/scripts/parameter_validation_generator.py @@ -1022,19 +1022,23 @@ class ParamCheckerOutputGenerator(OutputGenerator): if not flagBitsName in self.flagBits: usedLines.append('skipCall |= validate_reserved_flags(layer_data->report_data, "{}", {ppp}"{}"{pps}, {pf}{});\n'.format(funcName, valueDisplayName, value.name, pf=valuePrefix, **postProcSpec)) else: - flagsRequired = 'false' if value.isoptional else 'true' + if value.isoptional: + flagsRequired = 'false' + vuid = 'VALIDATION_ERROR_UNDEFINED' + else: + flagsRequired = 'true' + vuid_name_tag = structTypeName if structTypeName is not None else funcName + vuid = self.GetVuid("VUID-%s-%s-requiredbitmask" % (vuid_name_tag, value.name)) allFlagsName = 'All' + flagBitsName - usedLines.append('skipCall |= validate_flags(layer_data->report_data, "{}", {ppp}"{}"{pps}, "{}", {}, {pf}{}, {}, false);\n'.format(funcName, valueDisplayName, flagBitsName, allFlagsName, value.name, flagsRequired, pf=valuePrefix, **postProcSpec)) + usedLines.append('skipCall |= validate_flags(layer_data->report_data, "{}", {ppp}"{}"{pps}, "{}", {}, {pf}{}, {}, false, {});\n'.format(funcName, valueDisplayName, flagBitsName, allFlagsName, value.name, flagsRequired, vuid, pf=valuePrefix, **postProcSpec)) elif value.type in self.flagBits: flagsRequired = 'false' if value.isoptional else 'true' allFlagsName = 'All' + value.type - usedLines.append('skipCall |= validate_flags(layer_data->report_data, "{}", {ppp}"{}"{pps}, "{}", {}, {pf}{}, {}, true);\n'.format(funcName, valueDisplayName, value.type, allFlagsName, value.name, flagsRequired, pf=valuePrefix, **postProcSpec)) + usedLines.append('skipCall |= validate_flags(layer_data->report_data, "{}", {ppp}"{}"{pps}, "{}", {}, {pf}{}, {}, true, VALIDATION_ERROR_UNDEFINED);\n'.format(funcName, valueDisplayName, value.type, allFlagsName, value.name, flagsRequired, pf=valuePrefix, **postProcSpec)) elif value.isbool: usedLines.append('skipCall |= validate_bool32(layer_data->report_data, "{}", {ppp}"{}"{pps}, {}{});\n'.format(funcName, valueDisplayName, valuePrefix, value.name, **postProcSpec)) elif value.israngedenum: enumRange = self.enumRanges[value.type] - if value.type == "VkObjectEntryTypeNVX": - garbage = 2 usedLines.append('skipCall |= validate_ranged_enum(layer_data->report_data, "{}", {ppp}"{}"{pps}, "{}", {}, {}, {}{});\n'.format(funcName, valueDisplayName, value.type, enumRange[0], enumRange[1], valuePrefix, value.name, **postProcSpec)) # # If this is a struct, see if it contains members that need to be checked -- 2.7.4