diff --git a/include/vulkan/vulkan.hpp b/include/vulkan/vulkan.hpp index 0a05f57..03f0d9a 100644 --- a/include/vulkan/vulkan.hpp +++ b/include/vulkan/vulkan.hpp @@ -55,7 +55,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h # endif #endif -static_assert( VK_HEADER_VERSION == 314, "Wrong VK_HEADER_VERSION!" ); +static_assert( VK_HEADER_VERSION == 315, "Wrong VK_HEADER_VERSION!" ); // includes through some other header // this results in major(x) being resolved to gnu_dev_major(x) @@ -9046,6 +9046,10 @@ namespace VULKAN_HPP_NAMESPACE VULKAN_HPP_CONSTEXPR_INLINE auto EXTFragmentDensityMapOffsetExtensionName = VK_EXT_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME; VULKAN_HPP_CONSTEXPR_INLINE auto EXTFragmentDensityMapOffsetSpecVersion = VK_EXT_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION; + //=== VK_EXT_zero_initialize_device_memory === + VULKAN_HPP_CONSTEXPR_INLINE auto EXTZeroInitializeDeviceMemoryExtensionName = VK_EXT_ZERO_INITIALIZE_DEVICE_MEMORY_EXTENSION_NAME; + VULKAN_HPP_CONSTEXPR_INLINE auto EXTZeroInitializeDeviceMemorySpecVersion = VK_EXT_ZERO_INITIALIZE_DEVICE_MEMORY_SPEC_VERSION; + } // namespace VULKAN_HPP_NAMESPACE // clang-format off @@ -18261,6 +18265,25 @@ namespace VULKAN_HPP_NAMESPACE }; }; + //=== VK_EXT_zero_initialize_device_memory === + template <> + struct StructExtends + { + enum + { + value = true + }; + }; + + template <> + struct StructExtends + { + enum + { + value = true + }; + }; + #endif // VULKAN_HPP_DISABLE_ENHANCED_MODE namespace detail diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 24ca161..4ed3283 100644 --- a/include/vulkan/vulkan_core.h +++ b/include/vulkan/vulkan_core.h @@ -69,7 +69,7 @@ extern "C" { #define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 314 +#define VK_HEADER_VERSION 315 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION) @@ -1260,6 +1260,7 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_EXT = 1000425001, VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_EXT = 1000425002, VK_STRUCTURE_TYPE_RENDERING_END_INFO_EXT = 1000619003, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_DEVICE_MEMORY_FEATURES_EXT = 1000620000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, // VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT is a deprecated alias @@ -1540,6 +1541,7 @@ typedef enum VkImageLayout { VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR = 1000299002, VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT = 1000339000, VK_IMAGE_LAYOUT_VIDEO_ENCODE_QUANTIZATION_MAP_KHR = 1000553000, + VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT = 1000620000, VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL, VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR, @@ -2572,7 +2574,7 @@ typedef enum VkImageUsageFlagBits { VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI = 0x00040000, VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM = 0x00100000, VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM = 0x00200000, - VK_IMAGE_USAGE_TILE_MEMORY_QCOM = 0x08000000, + VK_IMAGE_USAGE_TILE_MEMORY_BIT_QCOM = 0x08000000, VK_IMAGE_USAGE_VIDEO_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR = 0x02000000, VK_IMAGE_USAGE_VIDEO_ENCODE_EMPHASIS_MAP_BIT_KHR = 0x04000000, VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, @@ -2776,7 +2778,7 @@ typedef enum VkBufferUsageFlagBits { VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT = 0x04000000, VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT = 0x00800000, VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT = 0x01000000, - VK_BUFFER_USAGE_TILE_MEMORY_QCOM = 0x08000000, + VK_BUFFER_USAGE_TILE_MEMORY_BIT_QCOM = 0x08000000, VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR, VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT, VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT, @@ -5230,6 +5232,7 @@ typedef enum VkMemoryAllocateFlagBits { VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT = 0x00000001, VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT = 0x00000002, VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT = 0x00000004, + VK_MEMORY_ALLOCATE_ZERO_INITIALIZE_BIT_EXT = 0x00000008, VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT, VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT, VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT, @@ -7976,7 +7979,7 @@ static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT = 0x04000000ULL; static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT = 0x00800000ULL; static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_MICROMAP_STORAGE_BIT_EXT = 0x01000000ULL; -static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_TILE_MEMORY_QCOM = 0x08000000ULL; +static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_TILE_MEMORY_BIT_QCOM = 0x08000000ULL; static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_PREPROCESS_BUFFER_BIT_EXT = 0x80000000ULL; @@ -21643,6 +21646,18 @@ VKAPI_ATTR void VKAPI_CALL vkCmdEndRendering2EXT( #endif +// VK_EXT_zero_initialize_device_memory is a preprocessor guard. Do not pass it to API calls. +#define VK_EXT_zero_initialize_device_memory 1 +#define VK_EXT_ZERO_INITIALIZE_DEVICE_MEMORY_SPEC_VERSION 1 +#define VK_EXT_ZERO_INITIALIZE_DEVICE_MEMORY_EXTENSION_NAME "VK_EXT_zero_initialize_device_memory" +typedef struct VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT { + VkStructureType sType; + void* pNext; + VkBool32 zeroInitializeDeviceMemory; +} VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT; + + + // VK_KHR_acceleration_structure is a preprocessor guard. Do not pass it to API calls. #define VK_KHR_acceleration_structure 1 #define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13 diff --git a/include/vulkan/vulkan_enums.hpp b/include/vulkan/vulkan_enums.hpp index b0d93c1..4b0ebfa 100644 --- a/include/vulkan/vulkan_enums.hpp +++ b/include/vulkan/vulkan_enums.hpp @@ -1611,7 +1611,8 @@ namespace VULKAN_HPP_NAMESPACE ePhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM, eRenderPassFragmentDensityMapOffsetEndInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_EXT, eSubpassFragmentDensityMapOffsetEndInfoQCOM = VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM, - eRenderingEndInfoEXT = VK_STRUCTURE_TYPE_RENDERING_END_INFO_EXT + eRenderingEndInfoEXT = VK_STRUCTURE_TYPE_RENDERING_END_INFO_EXT, + ePhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_DEVICE_MEMORY_FEATURES_EXT }; // wrapper class for enum VkPipelineCacheHeaderVersion, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkPipelineCacheHeaderVersion.html @@ -2177,7 +2178,7 @@ namespace VULKAN_HPP_NAMESPACE eInvocationMaskHUAWEI = VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI, eSampleWeightQCOM = VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM, eSampleBlockMatchQCOM = VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM, - eTileMemoryQCOM = VK_IMAGE_USAGE_TILE_MEMORY_QCOM, + eTileMemoryQCOM = VK_IMAGE_USAGE_TILE_MEMORY_BIT_QCOM, eVideoEncodeQuantizationDeltaMapKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR, eVideoEncodeEmphasisMapKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_EMPHASIS_MAP_BIT_KHR }; @@ -2732,7 +2733,7 @@ namespace VULKAN_HPP_NAMESPACE ePushDescriptorsDescriptorBufferEXT = VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT, eMicromapBuildInputReadOnlyEXT = VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT, eMicromapStorageEXT = VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT, - eTileMemoryQCOM = VK_BUFFER_USAGE_TILE_MEMORY_QCOM + eTileMemoryQCOM = VK_BUFFER_USAGE_TILE_MEMORY_BIT_QCOM }; // wrapper using for bitmask VkBufferUsageFlags, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkBufferUsageFlags.html @@ -2822,7 +2823,8 @@ namespace VULKAN_HPP_NAMESPACE eVideoEncodeSrcKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR, eVideoEncodeDpbKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR, eAttachmentFeedbackLoopOptimalEXT = VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT, - eVideoEncodeQuantizationMapKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_QUANTIZATION_MAP_KHR + eVideoEncodeQuantizationMapKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_QUANTIZATION_MAP_KHR, + eZeroInitializedEXT = VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT }; // wrapper class for enum VkComponentSwizzle, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkComponentSwizzle.html @@ -4128,7 +4130,8 @@ namespace VULKAN_HPP_NAMESPACE { eDeviceMask = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT, eDeviceAddress = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT, - eDeviceAddressCaptureReplay = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT + eDeviceAddressCaptureReplay = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT, + eZeroInitializeEXT = VK_MEMORY_ALLOCATE_ZERO_INITIALIZE_BIT_EXT }; using MemoryAllocateFlagBitsKHR = MemoryAllocateFlagBits; @@ -4142,8 +4145,9 @@ namespace VULKAN_HPP_NAMESPACE { using WrappedType = VkMemoryAllocateFlagBits; static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; - static VULKAN_HPP_CONST_OR_CONSTEXPR MemoryAllocateFlags allFlags = - MemoryAllocateFlagBits::eDeviceMask | MemoryAllocateFlagBits::eDeviceAddress | MemoryAllocateFlagBits::eDeviceAddressCaptureReplay; + static VULKAN_HPP_CONST_OR_CONSTEXPR MemoryAllocateFlags allFlags = MemoryAllocateFlagBits::eDeviceMask | MemoryAllocateFlagBits::eDeviceAddress | + MemoryAllocateFlagBits::eDeviceAddressCaptureReplay | + MemoryAllocateFlagBits::eZeroInitializeEXT; }; enum class CommandPoolTrimFlagBits : VkCommandPoolTrimFlags @@ -5152,7 +5156,7 @@ namespace VULKAN_HPP_NAMESPACE ePushDescriptorsDescriptorBufferEXT = VK_BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT, eMicromapBuildInputReadOnlyEXT = VK_BUFFER_USAGE_2_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT, eMicromapStorageEXT = VK_BUFFER_USAGE_2_MICROMAP_STORAGE_BIT_EXT, - eTileMemoryQCOM = VK_BUFFER_USAGE_2_TILE_MEMORY_QCOM, + eTileMemoryQCOM = VK_BUFFER_USAGE_2_TILE_MEMORY_BIT_QCOM, ePreprocessBufferEXT = VK_BUFFER_USAGE_2_PREPROCESS_BUFFER_BIT_EXT }; diff --git a/include/vulkan/vulkan_extension_inspection.hpp b/include/vulkan/vulkan_extension_inspection.hpp index 30b6162..a2bd49c 100644 --- a/include/vulkan/vulkan_extension_inspection.hpp +++ b/include/vulkan/vulkan_extension_inspection.hpp @@ -481,7 +481,8 @@ namespace VULKAN_HPP_NAMESPACE #if defined( VK_ENABLE_BETA_EXTENSIONS ) "VK_NV_present_metering", #endif /*VK_ENABLE_BETA_EXTENSIONS*/ - "VK_EXT_fragment_density_map_offset" + "VK_EXT_fragment_density_map_offset", + "VK_EXT_zero_initialize_device_memory" }; return deviceExtensions; } @@ -2608,7 +2609,13 @@ namespace VULKAN_HPP_NAMESPACE { "VK_VERSION_1_3", { { "VK_EXT_fragment_density_map", - } } } } } + } } } } }, + { "VK_EXT_zero_initialize_device_memory", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } } }; auto depIt = dependencies.find( extension ); return ( depIt != dependencies.end() ) ? depIt->second : noDependencies; @@ -3507,7 +3514,7 @@ namespace VULKAN_HPP_NAMESPACE #if defined( VK_ENABLE_BETA_EXTENSIONS ) || ( extension == "VK_NV_present_metering" ) #endif /*VK_ENABLE_BETA_EXTENSIONS*/ - || ( extension == "VK_EXT_fragment_density_map_offset" ); + || ( extension == "VK_EXT_fragment_density_map_offset" ) || ( extension == "VK_EXT_zero_initialize_device_memory" ); } VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension ) diff --git a/include/vulkan/vulkan_format_traits.hpp b/include/vulkan/vulkan_format_traits.hpp index a91362a..968f60e 100644 --- a/include/vulkan/vulkan_format_traits.hpp +++ b/include/vulkan/vulkan_format_traits.hpp @@ -6840,7 +6840,6 @@ namespace VULKAN_HPP_NAMESPACE case VULKAN_HPP_NAMESPACE::Format::eD16UnormS8Uint: case VULKAN_HPP_NAMESPACE::Format::eD24UnormS8Uint: case VULKAN_HPP_NAMESPACE::Format::eD32SfloatS8Uint: return true; - default: return false; } } @@ -6854,7 +6853,6 @@ namespace VULKAN_HPP_NAMESPACE case VULKAN_HPP_NAMESPACE::Format::eD16UnormS8Uint: case VULKAN_HPP_NAMESPACE::Format::eD24UnormS8Uint: case VULKAN_HPP_NAMESPACE::Format::eD32SfloatS8Uint: return true; - default: return false; } } diff --git a/include/vulkan/vulkan_handles.hpp b/include/vulkan/vulkan_handles.hpp index 672b10a..61e800f 100644 --- a/include/vulkan/vulkan_handles.hpp +++ b/include/vulkan/vulkan_handles.hpp @@ -2076,6 +2076,9 @@ namespace VULKAN_HPP_NAMESPACE struct RenderPassFragmentDensityMapOffsetEndInfoEXT; using SubpassFragmentDensityMapOffsetEndInfoQCOM = RenderPassFragmentDensityMapOffsetEndInfoEXT; + //=== VK_EXT_zero_initialize_device_memory === + struct PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT; + //=================================== //=== HANDLE forward declarations === //=================================== diff --git a/include/vulkan/vulkan_hash.hpp b/include/vulkan/vulkan_hash.hpp index a010e84..d9711b8 100644 --- a/include/vulkan/vulkan_hash.hpp +++ b/include/vulkan/vulkan_hash.hpp @@ -14089,6 +14089,21 @@ namespace std } }; + template <> + struct hash + { + std::size_t + operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const & physicalDeviceZeroInitializeDeviceMemoryFeaturesEXT ) const + VULKAN_HPP_NOEXCEPT + { + std::size_t seed = 0; + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceZeroInitializeDeviceMemoryFeaturesEXT.sType ); + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceZeroInitializeDeviceMemoryFeaturesEXT.pNext ); + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceZeroInitializeDeviceMemoryFeaturesEXT.zeroInitializeDeviceMemory ); + return seed; + } + }; + template <> struct hash { diff --git a/include/vulkan/vulkan_static_assertions.hpp b/include/vulkan/vulkan_static_assertions.hpp index 15132fb..005911c 100644 --- a/include/vulkan/vulkan_static_assertions.hpp +++ b/include/vulkan/vulkan_static_assertions.hpp @@ -8670,4 +8670,14 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout::value, "RenderPassFragmentDensityMapOffsetEndInfoEXT is not nothrow_move_constructible!" ); +//=== VK_EXT_zero_initialize_device_memory === + +VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT ) == + sizeof( VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT ), + "struct and wrapper have different size!" ); +VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout::value, + "struct wrapper is not a standard layout!" ); +VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible::value, + "PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT is not nothrow_move_constructible!" ); + #endif diff --git a/include/vulkan/vulkan_structs.hpp b/include/vulkan/vulkan_structs.hpp index ccce672..38847ff 100644 --- a/include/vulkan/vulkan_structs.hpp +++ b/include/vulkan/vulkan_structs.hpp @@ -114238,6 +114238,118 @@ namespace VULKAN_HPP_NAMESPACE using Type = PhysicalDeviceYcbcrImageArraysFeaturesEXT; }; + // wrapper struct for struct VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT, see + // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT.html + struct PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT + { + using NativeType = VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT; + + static const bool allowDuplicate = false; + static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT; + +#if !defined( VULKAN_HPP_NO_CONSTRUCTORS ) && !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS ) + VULKAN_HPP_CONSTEXPR PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT( VULKAN_HPP_NAMESPACE::Bool32 zeroInitializeDeviceMemory_ = {}, + void * pNext_ = nullptr ) VULKAN_HPP_NOEXCEPT + : pNext{ pNext_ } + , zeroInitializeDeviceMemory{ zeroInitializeDeviceMemory_ } + { + } + + VULKAN_HPP_CONSTEXPR + PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT( PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default; + + PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT( VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT + : PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT( *reinterpret_cast( &rhs ) ) + { + } + + PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT & + operator=( PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default; +#endif /*VULKAN_HPP_NO_CONSTRUCTORS*/ + + PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT & operator=( VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const & rhs ) VULKAN_HPP_NOEXCEPT + { + *this = *reinterpret_cast( &rhs ); + return *this; + } + +#if !defined( VULKAN_HPP_NO_SETTERS ) && !defined( VULKAN_HPP_NO_STRUCT_SETTERS ) + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT + { + pNext = pNext_; + return *this; + } + + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT & + setZeroInitializeDeviceMemory( VULKAN_HPP_NAMESPACE::Bool32 zeroInitializeDeviceMemory_ ) VULKAN_HPP_NOEXCEPT + { + zeroInitializeDeviceMemory = zeroInitializeDeviceMemory_; + return *this; + } +#endif /*VULKAN_HPP_NO_SETTERS*/ + + operator VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const &() const VULKAN_HPP_NOEXCEPT + { + return *reinterpret_cast( this ); + } + + operator VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT &() VULKAN_HPP_NOEXCEPT + { + return *reinterpret_cast( this ); + } + + operator VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const *() const VULKAN_HPP_NOEXCEPT + { + return reinterpret_cast( this ); + } + + operator VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT *() VULKAN_HPP_NOEXCEPT + { + return reinterpret_cast( this ); + } + +#if defined( VULKAN_HPP_USE_REFLECT ) +# if 14 <= VULKAN_HPP_CPP_VERSION + auto +# else + std::tuple +# endif + reflect() const VULKAN_HPP_NOEXCEPT + { + return std::tie( sType, pNext, zeroInitializeDeviceMemory ); + } +#endif + +#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR ) + auto operator<=>( PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const & ) const = default; +#else + bool operator==( PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT + { +# if defined( VULKAN_HPP_USE_REFLECT ) + return this->reflect() == rhs.reflect(); +# else + return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( zeroInitializeDeviceMemory == rhs.zeroInitializeDeviceMemory ); +# endif + } + + bool operator!=( PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT const & rhs ) const VULKAN_HPP_NOEXCEPT + { + return !operator==( rhs ); + } +#endif + + public: + VULKAN_HPP_NAMESPACE::StructureType sType = StructureType::ePhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT; + void * pNext = {}; + VULKAN_HPP_NAMESPACE::Bool32 zeroInitializeDeviceMemory = {}; + }; + + template <> + struct CppType + { + using Type = PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT; + }; + // wrapper struct for struct VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures, see // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures.html struct PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures diff --git a/include/vulkan/vulkan_to_string.hpp b/include/vulkan/vulkan_to_string.hpp index 5c3ad54..ecc7045 100644 --- a/include/vulkan/vulkan_to_string.hpp +++ b/include/vulkan/vulkan_to_string.hpp @@ -1341,6 +1341,8 @@ namespace VULKAN_HPP_NAMESPACE result += " DeviceAddress |"; if ( value & MemoryAllocateFlagBits::eDeviceAddressCaptureReplay ) result += " DeviceAddressCaptureReplay |"; + if ( value & MemoryAllocateFlagBits::eZeroInitializeEXT ) + result += " ZeroInitializeEXT |"; if ( result.size() > 1 ) result.back() = '}'; @@ -5138,6 +5140,7 @@ namespace VULKAN_HPP_NAMESPACE case StructureType::ePhysicalDeviceFragmentDensityMapOffsetPropertiesEXT: return "PhysicalDeviceFragmentDensityMapOffsetPropertiesEXT"; case StructureType::eRenderPassFragmentDensityMapOffsetEndInfoEXT: return "RenderPassFragmentDensityMapOffsetEndInfoEXT"; case StructureType::eRenderingEndInfoEXT: return "RenderingEndInfoEXT"; + case StructureType::ePhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT: return "PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT"; default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast( value ) ) + " )"; } } @@ -6004,6 +6007,7 @@ namespace VULKAN_HPP_NAMESPACE case ImageLayout::eVideoEncodeDpbKHR: return "VideoEncodeDpbKHR"; case ImageLayout::eAttachmentFeedbackLoopOptimalEXT: return "AttachmentFeedbackLoopOptimalEXT"; case ImageLayout::eVideoEncodeQuantizationMapKHR: return "VideoEncodeQuantizationMapKHR"; + case ImageLayout::eZeroInitializedEXT: return "ZeroInitializedEXT"; default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast( value ) ) + " )"; } } @@ -6889,6 +6893,7 @@ namespace VULKAN_HPP_NAMESPACE case MemoryAllocateFlagBits::eDeviceMask: return "DeviceMask"; case MemoryAllocateFlagBits::eDeviceAddress: return "DeviceAddress"; case MemoryAllocateFlagBits::eDeviceAddressCaptureReplay: return "DeviceAddressCaptureReplay"; + case MemoryAllocateFlagBits::eZeroInitializeEXT: return "ZeroInitializeEXT"; default: return "invalid ( " + VULKAN_HPP_NAMESPACE::toHexString( static_cast( value ) ) + " )"; } } diff --git a/registry/validusage.json b/registry/validusage.json index ff0694a..0ccc8a7 100644 --- a/registry/validusage.json +++ b/registry/validusage.json @@ -1,9 +1,9 @@ { "version info": { "schema version": 2, - "api version": "1.4.314", - "comment": "from git branch: github-main commit: 86c8fd72055a859f08fff20182ef758089dd180a", - "date": "2025-05-01 23:24:25Z" + "api version": "1.4.315", + "comment": "from git branch: github-main commit: 112aee75d162412a4623e7d22a3de52e0233cbf5", + "date": "2025-05-09 11:30:16Z" }, "validation": { "vkGetInstanceProcAddr": { @@ -905,7 +905,7 @@ }, { "vuid": "VUID-VkDeviceCreateInfo-pNext-pNext", - "text": "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 VkDeviceDeviceMemoryReportCreateInfoEXT, VkDeviceDiagnosticsConfigCreateInfoNV, VkDeviceGroupDeviceCreateInfo, VkDeviceMemoryOverallocationCreateInfoAMD, VkDevicePipelineBinaryInternalCacheControlKHR, VkDevicePrivateDataCreateInfo, VkDeviceQueueShaderCoreControlCreateInfoARM, VkExternalComputeQueueDeviceCreateInfoNV, VkPhysicalDevice16BitStorageFeatures, VkPhysicalDevice4444FormatsFeaturesEXT, VkPhysicalDevice8BitStorageFeatures, VkPhysicalDeviceASTCDecodeFeaturesEXT, VkPhysicalDeviceAccelerationStructureFeaturesKHR, VkPhysicalDeviceAddressBindingReportFeaturesEXT, VkPhysicalDeviceAmigoProfilingFeaturesSEC, VkPhysicalDeviceAntiLagFeaturesAMD, VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT, VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT, VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, VkPhysicalDeviceBorderColorSwizzleFeaturesEXT, VkPhysicalDeviceBufferDeviceAddressFeatures, VkPhysicalDeviceBufferDeviceAddressFeaturesEXT, VkPhysicalDeviceClusterAccelerationStructureFeaturesNV, VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI, VkPhysicalDeviceCoherentMemoryFeaturesAMD, VkPhysicalDeviceColorWriteEnableFeaturesEXT, VkPhysicalDeviceCommandBufferInheritanceFeaturesNV, VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR, VkPhysicalDeviceConditionalRenderingFeaturesEXT, VkPhysicalDeviceCooperativeMatrix2FeaturesNV, VkPhysicalDeviceCooperativeMatrixFeaturesKHR, VkPhysicalDeviceCooperativeMatrixFeaturesNV, VkPhysicalDeviceCooperativeVectorFeaturesNV, VkPhysicalDeviceCopyMemoryIndirectFeaturesNV, VkPhysicalDeviceCornerSampledImageFeaturesNV, VkPhysicalDeviceCoverageReductionModeFeaturesNV, VkPhysicalDeviceCubicClampFeaturesQCOM, VkPhysicalDeviceCubicWeightsFeaturesQCOM, VkPhysicalDeviceCudaKernelLaunchFeaturesNV, VkPhysicalDeviceCustomBorderColorFeaturesEXT, VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, VkPhysicalDeviceDepthBiasControlFeaturesEXT, VkPhysicalDeviceDepthClampControlFeaturesEXT, VkPhysicalDeviceDepthClampZeroOneFeaturesKHR, VkPhysicalDeviceDepthClipControlFeaturesEXT, VkPhysicalDeviceDepthClipEnableFeaturesEXT, VkPhysicalDeviceDescriptorBufferFeaturesEXT, VkPhysicalDeviceDescriptorIndexingFeatures, VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV, VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE, VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV, VkPhysicalDeviceDeviceMemoryReportFeaturesEXT, VkPhysicalDeviceDiagnosticsConfigFeaturesNV, VkPhysicalDeviceDisplacementMicromapFeaturesNV, VkPhysicalDeviceDynamicRenderingFeatures, VkPhysicalDeviceDynamicRenderingLocalReadFeatures, VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT, VkPhysicalDeviceExclusiveScissorFeaturesNV, VkPhysicalDeviceExtendedDynamicState2FeaturesEXT, VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, VkPhysicalDeviceExtendedDynamicStateFeaturesEXT, VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV, VkPhysicalDeviceExternalFormatResolveFeaturesANDROID, VkPhysicalDeviceExternalMemoryRDMAFeaturesNV, VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX, VkPhysicalDeviceFaultFeaturesEXT, VkPhysicalDeviceFeatures2, VkPhysicalDeviceFragmentDensityMap2FeaturesEXT, VkPhysicalDeviceFragmentDensityMapFeaturesEXT, VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT, VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR, VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT, VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV, VkPhysicalDeviceFragmentShadingRateFeaturesKHR, VkPhysicalDeviceFrameBoundaryFeaturesEXT, VkPhysicalDeviceGlobalPriorityQueryFeatures, VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT, VkPhysicalDeviceHdrVividFeaturesHUAWEI, VkPhysicalDeviceHostImageCopyFeatures, VkPhysicalDeviceHostQueryResetFeatures, VkPhysicalDeviceImage2DViewOf3DFeaturesEXT, VkPhysicalDeviceImageAlignmentControlFeaturesMESA, VkPhysicalDeviceImageCompressionControlFeaturesEXT, VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT, VkPhysicalDeviceImageProcessing2FeaturesQCOM, VkPhysicalDeviceImageProcessingFeaturesQCOM, VkPhysicalDeviceImageRobustnessFeatures, VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT, VkPhysicalDeviceImageViewMinLodFeaturesEXT, VkPhysicalDeviceImagelessFramebufferFeatures, VkPhysicalDeviceIndexTypeUint8Features, VkPhysicalDeviceInheritedViewportScissorFeaturesNV, VkPhysicalDeviceInlineUniformBlockFeatures, VkPhysicalDeviceInvocationMaskFeaturesHUAWEI, VkPhysicalDeviceLegacyDitheringFeaturesEXT, VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT, VkPhysicalDeviceLineRasterizationFeatures, VkPhysicalDeviceLinearColorAttachmentFeaturesNV, VkPhysicalDeviceMaintenance4Features, VkPhysicalDeviceMaintenance5Features, VkPhysicalDeviceMaintenance6Features, VkPhysicalDeviceMaintenance7FeaturesKHR, VkPhysicalDeviceMaintenance8FeaturesKHR, VkPhysicalDeviceMapMemoryPlacedFeaturesEXT, VkPhysicalDeviceMemoryDecompressionFeaturesNV, VkPhysicalDeviceMemoryPriorityFeaturesEXT, VkPhysicalDeviceMeshShaderFeaturesEXT, VkPhysicalDeviceMeshShaderFeaturesNV, VkPhysicalDeviceMultiDrawFeaturesEXT, VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM, VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM, VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT, VkPhysicalDeviceNestedCommandBufferFeaturesEXT, VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT, VkPhysicalDeviceOpacityMicromapFeaturesEXT, VkPhysicalDeviceOpticalFlowFeaturesNV, VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT, VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV, VkPhysicalDevicePerStageDescriptorSetFeaturesNV, VkPhysicalDevicePerformanceQueryFeaturesKHR, VkPhysicalDevicePipelineBinaryFeaturesKHR, VkPhysicalDevicePipelineCreationCacheControlFeatures, VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR, VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT, VkPhysicalDevicePipelineOpacityMicromapFeaturesARM, VkPhysicalDevicePipelinePropertiesFeaturesEXT, VkPhysicalDevicePipelineProtectedAccessFeatures, VkPhysicalDevicePipelineRobustnessFeatures, VkPhysicalDevicePortabilitySubsetFeaturesKHR, VkPhysicalDevicePresentBarrierFeaturesNV, VkPhysicalDevicePresentIdFeaturesKHR, VkPhysicalDevicePresentMeteringFeaturesNV, VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT, VkPhysicalDevicePresentWaitFeaturesKHR, VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT, VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT, VkPhysicalDevicePrivateDataFeatures, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceProvokingVertexFeaturesEXT, VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT, VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT, VkPhysicalDeviceRawAccessChainsFeaturesNV, VkPhysicalDeviceRayQueryFeaturesKHR, VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV, VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV, VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR, VkPhysicalDeviceRayTracingMotionBlurFeaturesNV, VkPhysicalDeviceRayTracingPipelineFeaturesKHR, VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR, VkPhysicalDeviceRayTracingValidationFeaturesNV, VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG, VkPhysicalDeviceRenderPassStripedFeaturesARM, VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV, VkPhysicalDeviceRobustness2FeaturesKHR, VkPhysicalDeviceSamplerYcbcrConversionFeatures, VkPhysicalDeviceScalarBlockLayoutFeatures, VkPhysicalDeviceSchedulingControlsFeaturesARM, VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures, VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV, VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT, VkPhysicalDeviceShaderAtomicFloatFeaturesEXT, VkPhysicalDeviceShaderAtomicInt64Features, VkPhysicalDeviceShaderBfloat16FeaturesKHR, VkPhysicalDeviceShaderClockFeaturesKHR, VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM, VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures, VkPhysicalDeviceShaderDrawParametersFeatures, VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD, VkPhysicalDeviceShaderEnqueueFeaturesAMDX, VkPhysicalDeviceShaderExpectAssumeFeatures, VkPhysicalDeviceShaderFloat16Int8Features, VkPhysicalDeviceShaderFloatControls2Features, VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT, VkPhysicalDeviceShaderImageFootprintFeaturesNV, VkPhysicalDeviceShaderIntegerDotProductFeatures, VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR, VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT, VkPhysicalDeviceShaderObjectFeaturesEXT, VkPhysicalDeviceShaderQuadControlFeaturesKHR, VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR, VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT, VkPhysicalDeviceShaderSMBuiltinsFeaturesNV, VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, VkPhysicalDeviceShaderSubgroupRotateFeatures, VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, VkPhysicalDeviceShaderTerminateInvocationFeatures, VkPhysicalDeviceShaderTileImageFeaturesEXT, VkPhysicalDeviceShadingRateImageFeaturesNV, VkPhysicalDeviceSubgroupSizeControlFeatures, VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT, VkPhysicalDeviceSubpassShadingFeaturesHUAWEI, VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT, VkPhysicalDeviceSynchronization2Features, VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT, VkPhysicalDeviceTextureCompressionASTCHDRFeatures, VkPhysicalDeviceTileMemoryHeapFeaturesQCOM, VkPhysicalDeviceTilePropertiesFeaturesQCOM, VkPhysicalDeviceTileShadingFeaturesQCOM, VkPhysicalDeviceTimelineSemaphoreFeatures, VkPhysicalDeviceTransformFeedbackFeaturesEXT, VkPhysicalDeviceUniformBufferStandardLayoutFeatures, VkPhysicalDeviceVariablePointersFeatures, VkPhysicalDeviceVertexAttributeDivisorFeatures, VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT, VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT, VkPhysicalDeviceVideoEncodeAV1FeaturesKHR, VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR, VkPhysicalDeviceVideoMaintenance1FeaturesKHR, VkPhysicalDeviceVideoMaintenance2FeaturesKHR, VkPhysicalDeviceVulkan11Features, VkPhysicalDeviceVulkan12Features, VkPhysicalDeviceVulkan13Features, VkPhysicalDeviceVulkan14Features, VkPhysicalDeviceVulkanMemoryModelFeatures, VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, VkPhysicalDeviceYcbcrDegammaFeaturesQCOM, VkPhysicalDeviceYcbcrImageArraysFeaturesEXT, or VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures", + "text": "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 VkDeviceDeviceMemoryReportCreateInfoEXT, VkDeviceDiagnosticsConfigCreateInfoNV, VkDeviceGroupDeviceCreateInfo, VkDeviceMemoryOverallocationCreateInfoAMD, VkDevicePipelineBinaryInternalCacheControlKHR, VkDevicePrivateDataCreateInfo, VkDeviceQueueShaderCoreControlCreateInfoARM, VkExternalComputeQueueDeviceCreateInfoNV, VkPhysicalDevice16BitStorageFeatures, VkPhysicalDevice4444FormatsFeaturesEXT, VkPhysicalDevice8BitStorageFeatures, VkPhysicalDeviceASTCDecodeFeaturesEXT, VkPhysicalDeviceAccelerationStructureFeaturesKHR, VkPhysicalDeviceAddressBindingReportFeaturesEXT, VkPhysicalDeviceAmigoProfilingFeaturesSEC, VkPhysicalDeviceAntiLagFeaturesAMD, VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT, VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT, VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, VkPhysicalDeviceBorderColorSwizzleFeaturesEXT, VkPhysicalDeviceBufferDeviceAddressFeatures, VkPhysicalDeviceBufferDeviceAddressFeaturesEXT, VkPhysicalDeviceClusterAccelerationStructureFeaturesNV, VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI, VkPhysicalDeviceCoherentMemoryFeaturesAMD, VkPhysicalDeviceColorWriteEnableFeaturesEXT, VkPhysicalDeviceCommandBufferInheritanceFeaturesNV, VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR, VkPhysicalDeviceConditionalRenderingFeaturesEXT, VkPhysicalDeviceCooperativeMatrix2FeaturesNV, VkPhysicalDeviceCooperativeMatrixFeaturesKHR, VkPhysicalDeviceCooperativeMatrixFeaturesNV, VkPhysicalDeviceCooperativeVectorFeaturesNV, VkPhysicalDeviceCopyMemoryIndirectFeaturesNV, VkPhysicalDeviceCornerSampledImageFeaturesNV, VkPhysicalDeviceCoverageReductionModeFeaturesNV, VkPhysicalDeviceCubicClampFeaturesQCOM, VkPhysicalDeviceCubicWeightsFeaturesQCOM, VkPhysicalDeviceCudaKernelLaunchFeaturesNV, VkPhysicalDeviceCustomBorderColorFeaturesEXT, VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, VkPhysicalDeviceDepthBiasControlFeaturesEXT, VkPhysicalDeviceDepthClampControlFeaturesEXT, VkPhysicalDeviceDepthClampZeroOneFeaturesKHR, VkPhysicalDeviceDepthClipControlFeaturesEXT, VkPhysicalDeviceDepthClipEnableFeaturesEXT, VkPhysicalDeviceDescriptorBufferFeaturesEXT, VkPhysicalDeviceDescriptorIndexingFeatures, VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV, VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE, VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV, VkPhysicalDeviceDeviceMemoryReportFeaturesEXT, VkPhysicalDeviceDiagnosticsConfigFeaturesNV, VkPhysicalDeviceDisplacementMicromapFeaturesNV, VkPhysicalDeviceDynamicRenderingFeatures, VkPhysicalDeviceDynamicRenderingLocalReadFeatures, VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT, VkPhysicalDeviceExclusiveScissorFeaturesNV, VkPhysicalDeviceExtendedDynamicState2FeaturesEXT, VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, VkPhysicalDeviceExtendedDynamicStateFeaturesEXT, VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV, VkPhysicalDeviceExternalFormatResolveFeaturesANDROID, VkPhysicalDeviceExternalMemoryRDMAFeaturesNV, VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX, VkPhysicalDeviceFaultFeaturesEXT, VkPhysicalDeviceFeatures2, VkPhysicalDeviceFragmentDensityMap2FeaturesEXT, VkPhysicalDeviceFragmentDensityMapFeaturesEXT, VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT, VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR, VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT, VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV, VkPhysicalDeviceFragmentShadingRateFeaturesKHR, VkPhysicalDeviceFrameBoundaryFeaturesEXT, VkPhysicalDeviceGlobalPriorityQueryFeatures, VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT, VkPhysicalDeviceHdrVividFeaturesHUAWEI, VkPhysicalDeviceHostImageCopyFeatures, VkPhysicalDeviceHostQueryResetFeatures, VkPhysicalDeviceImage2DViewOf3DFeaturesEXT, VkPhysicalDeviceImageAlignmentControlFeaturesMESA, VkPhysicalDeviceImageCompressionControlFeaturesEXT, VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT, VkPhysicalDeviceImageProcessing2FeaturesQCOM, VkPhysicalDeviceImageProcessingFeaturesQCOM, VkPhysicalDeviceImageRobustnessFeatures, VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT, VkPhysicalDeviceImageViewMinLodFeaturesEXT, VkPhysicalDeviceImagelessFramebufferFeatures, VkPhysicalDeviceIndexTypeUint8Features, VkPhysicalDeviceInheritedViewportScissorFeaturesNV, VkPhysicalDeviceInlineUniformBlockFeatures, VkPhysicalDeviceInvocationMaskFeaturesHUAWEI, VkPhysicalDeviceLegacyDitheringFeaturesEXT, VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT, VkPhysicalDeviceLineRasterizationFeatures, VkPhysicalDeviceLinearColorAttachmentFeaturesNV, VkPhysicalDeviceMaintenance4Features, VkPhysicalDeviceMaintenance5Features, VkPhysicalDeviceMaintenance6Features, VkPhysicalDeviceMaintenance7FeaturesKHR, VkPhysicalDeviceMaintenance8FeaturesKHR, VkPhysicalDeviceMapMemoryPlacedFeaturesEXT, VkPhysicalDeviceMemoryDecompressionFeaturesNV, VkPhysicalDeviceMemoryPriorityFeaturesEXT, VkPhysicalDeviceMeshShaderFeaturesEXT, VkPhysicalDeviceMeshShaderFeaturesNV, VkPhysicalDeviceMultiDrawFeaturesEXT, VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM, VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM, VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT, VkPhysicalDeviceNestedCommandBufferFeaturesEXT, VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT, VkPhysicalDeviceOpacityMicromapFeaturesEXT, VkPhysicalDeviceOpticalFlowFeaturesNV, VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT, VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV, VkPhysicalDevicePerStageDescriptorSetFeaturesNV, VkPhysicalDevicePerformanceQueryFeaturesKHR, VkPhysicalDevicePipelineBinaryFeaturesKHR, VkPhysicalDevicePipelineCreationCacheControlFeatures, VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR, VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT, VkPhysicalDevicePipelineOpacityMicromapFeaturesARM, VkPhysicalDevicePipelinePropertiesFeaturesEXT, VkPhysicalDevicePipelineProtectedAccessFeatures, VkPhysicalDevicePipelineRobustnessFeatures, VkPhysicalDevicePortabilitySubsetFeaturesKHR, VkPhysicalDevicePresentBarrierFeaturesNV, VkPhysicalDevicePresentIdFeaturesKHR, VkPhysicalDevicePresentMeteringFeaturesNV, VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT, VkPhysicalDevicePresentWaitFeaturesKHR, VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT, VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT, VkPhysicalDevicePrivateDataFeatures, VkPhysicalDeviceProtectedMemoryFeatures, VkPhysicalDeviceProvokingVertexFeaturesEXT, VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT, VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT, VkPhysicalDeviceRawAccessChainsFeaturesNV, VkPhysicalDeviceRayQueryFeaturesKHR, VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV, VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV, VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR, VkPhysicalDeviceRayTracingMotionBlurFeaturesNV, VkPhysicalDeviceRayTracingPipelineFeaturesKHR, VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR, VkPhysicalDeviceRayTracingValidationFeaturesNV, VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG, VkPhysicalDeviceRenderPassStripedFeaturesARM, VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV, VkPhysicalDeviceRobustness2FeaturesKHR, VkPhysicalDeviceSamplerYcbcrConversionFeatures, VkPhysicalDeviceScalarBlockLayoutFeatures, VkPhysicalDeviceSchedulingControlsFeaturesARM, VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures, VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV, VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT, VkPhysicalDeviceShaderAtomicFloatFeaturesEXT, VkPhysicalDeviceShaderAtomicInt64Features, VkPhysicalDeviceShaderBfloat16FeaturesKHR, VkPhysicalDeviceShaderClockFeaturesKHR, VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM, VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures, VkPhysicalDeviceShaderDrawParametersFeatures, VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD, VkPhysicalDeviceShaderEnqueueFeaturesAMDX, VkPhysicalDeviceShaderExpectAssumeFeatures, VkPhysicalDeviceShaderFloat16Int8Features, VkPhysicalDeviceShaderFloatControls2Features, VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT, VkPhysicalDeviceShaderImageFootprintFeaturesNV, VkPhysicalDeviceShaderIntegerDotProductFeatures, VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR, VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT, VkPhysicalDeviceShaderObjectFeaturesEXT, VkPhysicalDeviceShaderQuadControlFeaturesKHR, VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR, VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT, VkPhysicalDeviceShaderSMBuiltinsFeaturesNV, VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, VkPhysicalDeviceShaderSubgroupRotateFeatures, VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, VkPhysicalDeviceShaderTerminateInvocationFeatures, VkPhysicalDeviceShaderTileImageFeaturesEXT, VkPhysicalDeviceShadingRateImageFeaturesNV, VkPhysicalDeviceSubgroupSizeControlFeatures, VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT, VkPhysicalDeviceSubpassShadingFeaturesHUAWEI, VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT, VkPhysicalDeviceSynchronization2Features, VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT, VkPhysicalDeviceTextureCompressionASTCHDRFeatures, VkPhysicalDeviceTileMemoryHeapFeaturesQCOM, VkPhysicalDeviceTilePropertiesFeaturesQCOM, VkPhysicalDeviceTileShadingFeaturesQCOM, VkPhysicalDeviceTimelineSemaphoreFeatures, VkPhysicalDeviceTransformFeedbackFeaturesEXT, VkPhysicalDeviceUniformBufferStandardLayoutFeatures, VkPhysicalDeviceVariablePointersFeatures, VkPhysicalDeviceVertexAttributeDivisorFeatures, VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT, VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT, VkPhysicalDeviceVideoEncodeAV1FeaturesKHR, VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR, VkPhysicalDeviceVideoMaintenance1FeaturesKHR, VkPhysicalDeviceVideoMaintenance2FeaturesKHR, VkPhysicalDeviceVulkan11Features, VkPhysicalDeviceVulkan12Features, VkPhysicalDeviceVulkan13Features, VkPhysicalDeviceVulkan14Features, VkPhysicalDeviceVulkanMemoryModelFeatures, VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, VkPhysicalDeviceYcbcrDegammaFeaturesQCOM, VkPhysicalDeviceYcbcrImageArraysFeaturesEXT, VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT, or VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures", "page": "chapters/devsandqueues.html" }, { @@ -7979,9 +7979,19 @@ "text": "If srcQueueFamilyIndex and dstQueueFamilyIndex define a queue family ownership transfer or oldLayout and newLayout define an image layout transition, oldLayout must be VK_IMAGE_LAYOUT_UNDEFINED or the current layout of the image subresources affected by the barrier", "page": "chapters/synchronization.html" }, + { + "vuid": "VUID-VkImageMemoryBarrier2-oldLayout-10767", + "text": "If the zeroInitializeDeviceMemory feature is not enabled, oldLayout must not be VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT", + "page": "chapters/synchronization.html" + }, + { + "vuid": "VUID-VkImageMemoryBarrier2-oldLayout-10768", + "text": "If oldLayout is VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT, then all subresources must be included in the barrier", + "page": "chapters/synchronization.html" + }, { "vuid": "VUID-VkImageMemoryBarrier2-newLayout-01198", - "text": "If srcQueueFamilyIndex and dstQueueFamilyIndex define a queue family ownership transfer or oldLayout and newLayout define an image layout transition, newLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED", + "text": "If srcQueueFamilyIndex and dstQueueFamilyIndex define a queue family ownership transfer or oldLayout and newLayout define an image layout transition, newLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT or VK_IMAGE_LAYOUT_PREINITIALIZED", "page": "chapters/synchronization.html" }, { @@ -8211,7 +8221,7 @@ }, { "vuid": "VUID-VkImageMemoryBarrier2-srcStageMask-03855", - "text": "If srcStageMask includes VK_PIPELINE_STAGE_2_HOST_BIT, and srcQueueFamilyIndex and dstQueueFamilyIndex define a queue family ownership transfer or oldLayout and newLayout define an image layout transition, oldLayout must be one of VK_IMAGE_LAYOUT_PREINITIALIZED, VK_IMAGE_LAYOUT_UNDEFINED, or VK_IMAGE_LAYOUT_GENERAL", + "text": "If srcStageMask includes VK_PIPELINE_STAGE_2_HOST_BIT, and srcQueueFamilyIndex and dstQueueFamilyIndex define a queue family ownership transfer or oldLayout and newLayout define an image layout transition, oldLayout must be one of VK_IMAGE_LAYOUT_PREINITIALIZED, VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT, VK_IMAGE_LAYOUT_UNDEFINED, or VK_IMAGE_LAYOUT_GENERAL", "page": "chapters/synchronization.html" }, { @@ -8308,9 +8318,19 @@ "text": "If srcQueueFamilyIndex and dstQueueFamilyIndex define a queue family ownership transfer or oldLayout and newLayout define an image layout transition, oldLayout must be VK_IMAGE_LAYOUT_UNDEFINED or the current layout of the image subresources affected by the barrier", "page": "chapters/synchronization.html" }, + { + "vuid": "VUID-VkImageMemoryBarrier-oldLayout-10767", + "text": "If the zeroInitializeDeviceMemory feature is not enabled, oldLayout must not be VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT", + "page": "chapters/synchronization.html" + }, + { + "vuid": "VUID-VkImageMemoryBarrier-oldLayout-10768", + "text": "If oldLayout is VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT, then all subresources must be included in the barrier", + "page": "chapters/synchronization.html" + }, { "vuid": "VUID-VkImageMemoryBarrier-newLayout-01198", - "text": "If srcQueueFamilyIndex and dstQueueFamilyIndex define a queue family ownership transfer or oldLayout and newLayout define an image layout transition, newLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED", + "text": "If srcQueueFamilyIndex and dstQueueFamilyIndex define a queue family ownership transfer or oldLayout and newLayout define an image layout transition, newLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT or VK_IMAGE_LAYOUT_PREINITIALIZED", "page": "chapters/synchronization.html" }, { @@ -8693,7 +8713,7 @@ }, { "vuid": "VUID-VkHostImageLayoutTransitionInfo-oldLayout-09230", - "text": "If oldLayout is not VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED, it must be one of the layouts in VkPhysicalDeviceHostImageCopyProperties::pCopySrcLayouts", + "text": "If oldLayout is not VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT, or VK_IMAGE_LAYOUT_PREINITIALIZED, it must be one of the layouts in VkPhysicalDeviceHostImageCopyProperties::pCopySrcLayouts", "page": "chapters/synchronization.html" }, { @@ -9410,12 +9430,12 @@ }, { "vuid": "VUID-VkRenderingAttachmentInfo-imageView-06135", - "text": "If imageView is not VK_NULL_HANDLE, imageLayout must not be VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, or VK_IMAGE_LAYOUT_PREINITIALIZED", + "text": "If imageView is not VK_NULL_HANDLE, imageLayout must not be VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, or VK_IMAGE_LAYOUT_PREINITIALIZED", "page": "chapters/renderpass.html" }, { "vuid": "VUID-VkRenderingAttachmentInfo-imageView-06136", - "text": "If imageView is not VK_NULL_HANDLE and resolveMode is not VK_RESOLVE_MODE_NONE, resolveImageLayout must not be VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, or VK_IMAGE_LAYOUT_PREINITIALIZED", + "text": "If imageView is not VK_NULL_HANDLE and resolveMode is not VK_RESOLVE_MODE_NONE, resolveImageLayout must not be VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, or VK_IMAGE_LAYOUT_PREINITIALIZED", "page": "chapters/renderpass.html" }, { @@ -10052,12 +10072,12 @@ }, { "vuid": "VUID-VkRenderPassCreateInfo-pDependencies-00837", - "text": "For any element of pDependencies, if the srcSubpass is not VK_SUBPASS_EXTERNAL, all stage flags included in the srcStageMask member of that dependency must be a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the source subpass", + "text": "For any element of pDependencies, if the srcSubpass is not VK_SUBPASS_EXTERNAL, all stage flags included in the srcStageMask member of that dependency must be VK_PIPELINE_STAGE_ALL_COMMANDS_BIT or a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the source subpass", "page": "chapters/renderpass.html" }, { "vuid": "VUID-VkRenderPassCreateInfo-pDependencies-00838", - "text": "For any element of pDependencies, if the dstSubpass is not VK_SUBPASS_EXTERNAL, all stage flags included in the dstStageMask member of that dependency must be a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the destination subpass", + "text": "For any element of pDependencies, if the dstSubpass is not VK_SUBPASS_EXTERNAL, all stage flags included in the dstStageMask member of that dependency must be VK_PIPELINE_STAGE_ALL_COMMANDS_BIT or a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the destination subpass", "page": "chapters/renderpass.html" }, { @@ -10213,7 +10233,7 @@ }, { "vuid": "VUID-VkAttachmentDescription-finalLayout-00843", - "text": "finalLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED", + "text": "finalLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT or VK_IMAGE_LAYOUT_PREINITIALIZED", "page": "chapters/renderpass.html" }, { @@ -10679,7 +10699,7 @@ "core": [ { "vuid": "VUID-VkAttachmentReference-layout-03077", - "text": "If attachment is not VK_ATTACHMENT_UNUSED, layout must not be VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_PREINITIALIZED, or VK_IMAGE_LAYOUT_PRESENT_SRC_KHR", + "text": "If attachment is not VK_ATTACHMENT_UNUSED, layout must not be VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT, VK_IMAGE_LAYOUT_PREINITIALIZED, or VK_IMAGE_LAYOUT_PRESENT_SRC_KHR", "page": "chapters/renderpass.html" }, { @@ -11015,12 +11035,12 @@ }, { "vuid": "VUID-VkRenderPassCreateInfo2-pDependencies-03054", - "text": "For any element of pDependencies, if the srcSubpass is not VK_SUBPASS_EXTERNAL, all stage flags included in the srcStageMask member of that dependency must be a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the source subpass", + "text": "For any element of pDependencies, if the srcSubpass is not VK_SUBPASS_EXTERNAL, all stage flags included in the srcStageMask member of that dependency must be VK_PIPELINE_STAGE_ALL_COMMANDS_BIT or a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the source subpass", "page": "chapters/renderpass.html" }, { "vuid": "VUID-VkRenderPassCreateInfo2-pDependencies-03055", - "text": "For any element of pDependencies, if the dstSubpass is not VK_SUBPASS_EXTERNAL, all stage flags included in the dstStageMask member of that dependency must be a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the destination subpass", + "text": "For any element of pDependencies, if the dstSubpass is not VK_SUBPASS_EXTERNAL, all stage flags included in the dstStageMask member of that dependency must be VK_PIPELINE_STAGE_ALL_COMMANDS_BIT or a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the destination subpass", "page": "chapters/renderpass.html" }, { @@ -11194,7 +11214,7 @@ }, { "vuid": "VUID-VkAttachmentDescription2-finalLayout-00843", - "text": "finalLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED", + "text": "finalLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT or VK_IMAGE_LAYOUT_PREINITIALIZED", "page": "chapters/renderpass.html" }, { @@ -11418,7 +11438,7 @@ }, { "vuid": "VUID-VkAttachmentDescriptionStencilLayout-stencilFinalLayout-03310", - "text": "stencilFinalLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED", + "text": "stencilFinalLayout must not be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT or VK_IMAGE_LAYOUT_PREINITIALIZED", "page": "chapters/renderpass.html" }, { @@ -11933,7 +11953,7 @@ "core": [ { "vuid": "VUID-VkAttachmentReference2-layout-03077", - "text": "If attachment is not VK_ATTACHMENT_UNUSED, layout must not be VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_PREINITIALIZED, or VK_IMAGE_LAYOUT_PRESENT_SRC_KHR", + "text": "If attachment is not VK_ATTACHMENT_UNUSED, layout must not be VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT, VK_IMAGE_LAYOUT_PREINITIALIZED, or VK_IMAGE_LAYOUT_PRESENT_SRC_KHR", "page": "chapters/renderpass.html" }, { @@ -22495,6 +22515,16 @@ "text": "If VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT is set, deviceMask must not be zero", "page": "chapters/memory.html" }, + { + "vuid": "VUID-VkMemoryAllocateFlagsInfo-flags-10760", + "text": "If the allocation is performing a memory import operation, then flags must not contain VK_MEMORY_ALLOCATE_ZERO_INITIALIZE_BIT_EXT", + "page": "chapters/memory.html" + }, + { + "vuid": "VUID-VkMemoryAllocateFlagsInfo-flags-10761", + "text": "If the allocation uses protected memory, then flags must not contain VK_MEMORY_ALLOCATE_ZERO_INITIALIZE_BIT_EXT", + "page": "chapters/memory.html" + }, { "vuid": "VUID-VkMemoryAllocateFlagsInfo-sType-sType", "text": "sType must be VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO", @@ -23228,18 +23258,18 @@ "page": "chapters/resources.html" }, { - "vuid": "VUID-VkBufferCreateInfo-tileMemoryHeap-10731", - "text": "If the tileMemoryHeap feature is not enabled, usage must not include VK_BUFFER_USAGE_TILE_MEMORY_QCOM", + "vuid": "VUID-VkBufferCreateInfo-tileMemoryHeap-10762", + "text": "If the tileMemoryHeap feature is not enabled, usage must not include VK_BUFFER_USAGE_TILE_MEMORY_BIT_QCOM", "page": "chapters/resources.html" }, { - "vuid": "VUID-VkBufferCreateInfo-usage-10732", - "text": "If usage includes VK_BUFFER_USAGE_TILE_MEMORY_QCOM, then flags must not contain any of the following bits
\n
    \n
  • \n

    VK_BUFFER_CREATE_SPARSE_BINDING_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_SPARSE_ALIASED_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_PROTECTED_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_VIDEO_PROFILE_INDEPENDENT_BIT_KHR

    \n
  • \n
\n
", + "vuid": "VUID-VkBufferCreateInfo-usage-10763", + "text": "If usage includes VK_BUFFER_USAGE_TILE_MEMORY_BIT_QCOM, then flags must not contain any of the following bits
\n
    \n
  • \n

    VK_BUFFER_CREATE_SPARSE_BINDING_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_SPARSE_ALIASED_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_PROTECTED_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT

    \n
  • \n
  • \n

    VK_BUFFER_CREATE_VIDEO_PROFILE_INDEPENDENT_BIT_KHR

    \n
  • \n
\n
", "page": "chapters/resources.html" }, { - "vuid": "VUID-VkBufferCreateInfo-usage-10733", - "text": "If usage includes VK_BUFFER_USAGE_TILE_MEMORY_QCOM, then only the following usages may be set:
\n
    \n
  • \n

    VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT

    \n
  • \n
  • \n

    VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT

    \n
  • \n
  • \n

    VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT

    \n
  • \n
  • \n

    VK_BUFFER_USAGE_STORAGE_BUFFER_BIT

    \n
  • \n
  • \n

    VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT

    \n
  • \n
  • \n

    and if\nVkPhysicalDeviceTileMemoryHeapPropertiesQCOM::tileBufferTransfers\nis VK_TRUE then additionally\nVK_BUFFER_USAGE_TRANSFER_SRC_BIT or\nVK_BUFFER_USAGE_TRANSFER_DST_BIT

    \n
  • \n
\n
", + "vuid": "VUID-VkBufferCreateInfo-usage-10764", + "text": "If usage includes VK_BUFFER_USAGE_TILE_MEMORY_BIT_QCOM, then only the following usages may be set:
\n
    \n
  • \n

    VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT

    \n
  • \n
  • \n

    VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT

    \n
  • \n
  • \n

    VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT

    \n
  • \n
  • \n

    VK_BUFFER_USAGE_STORAGE_BUFFER_BIT

    \n
  • \n
  • \n

    VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT

    \n
  • \n
  • \n

    and if\nVkPhysicalDeviceTileMemoryHeapPropertiesQCOM::tileBufferTransfers\nis VK_TRUE then additionally\nVK_BUFFER_USAGE_TRANSFER_SRC_BIT or\nVK_BUFFER_USAGE_TRANSFER_DST_BIT

    \n
  • \n
\n
", "page": "chapters/resources.html" }, { @@ -23695,6 +23725,11 @@ "text": "If flags contains VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT, arrayLayers must be greater than or equal to 6", "page": "chapters/resources.html" }, + { + "vuid": "VUID-VkImageCreateInfo-initialLayout-10765", + "text": "If the zeroInitializeDeviceMemory feature is not enabled, initialLayout must not be VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT", + "page": "chapters/resources.html" + }, { "vuid": "VUID-VkImageCreateInfo-flags-02557", "text": "If flags contains VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT, imageType must be VK_IMAGE_TYPE_2D", @@ -23922,7 +23957,7 @@ }, { "vuid": "VUID-VkImageCreateInfo-initialLayout-00993", - "text": "initialLayout must be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_PREINITIALIZED", + "text": "initialLayout must be VK_IMAGE_LAYOUT_UNDEFINED or VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT or VK_IMAGE_LAYOUT_PREINITIALIZED", "page": "chapters/resources.html" }, { @@ -24316,8 +24351,8 @@ "page": "chapters/resources.html" }, { - "vuid": "VUID-VkImageCreateInfo-tileMemoryHeap-10734", - "text": "If the tileMemoryHeap feature is not enabled, usage must not include VK_IMAGE_USAGE_TILE_MEMORY_QCOM", + "vuid": "VUID-VkImageCreateInfo-tileMemoryHeap-10766", + "text": "If the tileMemoryHeap feature is not enabled, usage must not include VK_IMAGE_USAGE_TILE_MEMORY_BIT_QCOM", "page": "chapters/resources.html" }, { @@ -45709,11 +45744,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDraw-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDraw-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -47353,11 +47383,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawIndexed-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawIndexed-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -49007,11 +49032,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawMultiEXT-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawMultiEXT-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -50671,11 +50691,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawMultiIndexedEXT-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawMultiIndexedEXT-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -52350,11 +52365,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawIndirect-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawIndirect-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -54043,11 +54053,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawIndirectCount-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawIndirectCount-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -55737,11 +55742,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawIndexedIndirect-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawIndexedIndirect-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -57440,11 +57440,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawIndexedIndirectCount-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawIndexedIndirectCount-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -59139,11 +59134,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawIndirectByteCountEXT-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -60940,11 +60930,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawMeshTasksNV-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawMeshTasksNV-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -62489,11 +62474,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawMeshTasksIndirectNV-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -64097,11 +64077,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountNV-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -65716,11 +65691,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawMeshTasksEXT-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawMeshTasksEXT-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -67300,11 +67270,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectEXT-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawMeshTasksIndirectEXT-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -68943,11 +68908,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountEXT-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawMeshTasksIndirectCountEXT-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -70562,11 +70522,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawClusterHUAWEI-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawClusterHUAWEI-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -72126,11 +72081,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/drawing.html" }, - { - "vuid": "VUID-vkCmdDrawClusterIndirectHUAWEI-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/drawing.html" - }, { "vuid": "VUID-vkCmdDrawClusterIndirectHUAWEI-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -82337,11 +82287,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/device_generated_commands/generatedcommands.html" }, - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/device_generated_commands/generatedcommands.html" - }, { "vuid": "VUID-vkCmdExecuteGeneratedCommandsNV-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -84214,11 +84159,6 @@ "text": "If dynamic state was inherited from VkCommandBufferInheritanceViewportScissorInfoNV, it must be set in the current command buffer prior to this drawing command", "page": "chapters/device_generated_commands/generatedcommands.html" }, - { - "vuid": "VUID-vkCmdExecuteGeneratedCommandsEXT-nextStage-10744", - "text": "If any shader objects are bound to graphics stages, the shader object bound to the last graphics stage in the logical pipeline must have been created with nextStage equal to zero", - "page": "chapters/device_generated_commands/generatedcommands.html" - }, { "vuid": "VUID-vkCmdExecuteGeneratedCommandsEXT-nextStage-10745", "text": "For each shader object bound to a graphics stage, except for shader object bound to the last graphics stage in the logical pipeline, it must have been created with a nextStage including the corresponding bit to the shader object bound to the following graphics stage in the logical pipeline", @@ -84454,6 +84394,11 @@ "text": "commandBuffer must not have been created with VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT", "page": "chapters/device_generated_commands/generatedcommands.html" }, + { + "vuid": "VUID-vkCmdExecuteGeneratedCommandsEXT-indirectCommandsLayout-10769", + "text": "If the indirectCommandsLayout member of pGeneratedCommandsInfo contains a draw token, this command must not be called outside a render pass instance", + "page": "chapters/device_generated_commands/generatedcommands.html" + }, { "vuid": "VUID-vkCmdExecuteGeneratedCommandsEXT-commandBuffer-parameter", "text": "commandBuffer must be a valid VkCommandBuffer handle", @@ -104602,6 +104547,15 @@ } ] }, + "VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT": { + "core": [ + { + "vuid": "VUID-VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT-sType-sType", + "text": "sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_DEVICE_MEMORY_FEATURES_EXT", + "page": "chapters/features.html" + } + ] + }, "VkPhysicalDeviceSubpassShadingFeaturesHUAWEI": { "core": [ { @@ -108748,7 +108702,7 @@ }, { "vuid": "VUID-StandaloneSpirv-StorageTexelBufferArrayDynamicIndexing-10133", - "text": "If the StorageTexelBufferArrayDynamicIndexing capability is not declared, and an instruction accesses memory through a storage texel buffer, the storage texel buffer through which that memory is accessed must be determined by constant integral expressions PhysicalStorageBuffer.", + "text": "If the StorageTexelBufferArrayDynamicIndexing capability is not declared, and an instruction accesses memory through a storage texel buffer, the storage texel buffer through which that memory is accessed must be determined by constant integral expressions", "page": "appendices/spirvenv.html" }, { @@ -109220,6 +109174,16 @@ "text": "OpTypeCooperativeMatrixKHR and OpCooperativeMatrix* instructions must not be used in shader stages not included in VkPhysicalDeviceCooperativeMatrixPropertiesKHR::cooperativeMatrixSupportedStages", "page": "appendices/spirvenv.html" }, + { + "vuid": "VUID-RuntimeSpirv-OpTypeCooperativeMatrixKHR-10770", + "text": "Any pipeline containing a shader with OpTypeCooperativeMatrixKHR or OpCooperativeMatrix*KHR instructions must be created with the VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT flag or the shader module must be version 1.6 or greater", + "page": "appendices/spirvenv.html" + }, + { + "vuid": "VUID-RuntimeSpirv-OpTypeCooperativeMatrixKHR-10771", + "text": "Any shader object containing OpTypeCooperativeMatrixKHR or OpCooperativeMatrix*KHR instructions must be created with the VK_SHADER_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT flag or the shader module must be version 1.6 or greater", + "page": "appendices/spirvenv.html" + }, { "vuid": "VUID-RuntimeSpirv-OpCooperativeMatrixLoadNV-06324", "text": "For OpCooperativeMatrixLoadNV and OpCooperativeMatrixStoreNV instructions, the Pointer and Stride operands must be aligned to at least the lesser of 16 bytes or the natural alignment of a row or column (depending on ColumnMajor) of the matrix (where the natural alignment is the number of columns/rows multiplied by the component size)", diff --git a/registry/vk.xml b/registry/vk.xml index c3bf698..3a427cc 100755 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -179,7 +179,7 @@ branch of the member gitlab server. #define VKSC_API_VERSION_1_0 VK_MAKE_API_VERSION(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 314 +#define VK_HEADER_VERSION 315 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION) // Version of this file @@ -6800,6 +6800,11 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 depthClipControl + + VkStructureType sType + void* pNext + VkBool32 zeroInitializeDeviceMemory + VkStructureType sType void* pNext @@ -26696,9 +26701,9 @@ typedef void* MTLSharedEvent_id; - - - + + + @@ -27493,11 +27498,15 @@ typedef void* MTLSharedEvent_id; - + - - - + + + + + + + @@ -27549,6 +27558,23 @@ typedef void* MTLSharedEvent_id; + + + + + + + + + + + + + + + + +