diff --git a/include/vulkan/vulkan.cppm b/include/vulkan/vulkan.cppm index f0e9505..8d0834b 100644 --- a/include/vulkan/vulkan.cppm +++ b/include/vulkan/vulkan.cppm @@ -18,11 +18,7 @@ module; "To silence this warning, define the VULKAN_HPP_CXX_MODULE_EXPERIMENTAL_WARNING macro.\n\n" \ "For feedback, go to: https://github.com/KhronosGroup/Vulkan-Hpp/issues" -# if defined( __clang__ ) || defined( __GNUC__ ) || defined( __GNUG__ ) -_Pragma( VULKAN_HPP_STRINGIFY( GCC warning VULKAN_HPP_CXX_MODULE_EXPERIMENTAL_WARNING ) ) -# elif defined( _MSC_VER ) -_Pragma( VULKAN_HPP_STRINGIFY( message( __FILE__ "(" VULKAN_HPP_STRINGIFY( __LINE__ ) "): warning: " VULKAN_HPP_CXX_MODULE_EXPERIMENTAL_WARNING ) ) ) -# endif +VULKAN_HPP_COMPILE_WARNING( VULKAN_HPP_CXX_MODULE_EXPERIMENTAL_WARNING ) #endif #include @@ -32,8 +28,8 @@ _Pragma( VULKAN_HPP_STRINGIFY( message( __FILE__ "(" VULKAN_HPP_STRINGIFY( __LIN #include #include - export module vulkan_hpp; -export import VULKAN_HPP_STD_MODULE; +export module vulkan_hpp; +export import std.compat; export namespace VULKAN_HPP_NAMESPACE { @@ -1052,6 +1048,9 @@ export namespace VULKAN_HPP_NAMESPACE using VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagBitsARM; using VULKAN_HPP_NAMESPACE::PerformanceCounterDescriptionFlagsARM; + //=== VK_QCOM_data_graph_model === + using VULKAN_HPP_NAMESPACE::DataGraphModelCacheTypeQCOM; + //=== VK_KHR_maintenance10 === using VULKAN_HPP_NAMESPACE::RenderingAttachmentFlagBitsKHR; using VULKAN_HPP_NAMESPACE::RenderingAttachmentFlagsKHR; @@ -2979,6 +2978,11 @@ export namespace VULKAN_HPP_NAMESPACE using VULKAN_HPP_NAMESPACE::EXTShader64BitIndexingExtensionName; using VULKAN_HPP_NAMESPACE::EXTShader64BitIndexingSpecVersion; + //=== VK_QCOM_data_graph_model === + using VULKAN_HPP_NAMESPACE::DataGraphModelToolchainVersionLengthQCOM; + using VULKAN_HPP_NAMESPACE::QCOMDataGraphModelExtensionName; + using VULKAN_HPP_NAMESPACE::QCOMDataGraphModelSpecVersion; + //=== VK_KHR_maintenance10 === using VULKAN_HPP_NAMESPACE::KHRMaintenance10ExtensionName; using VULKAN_HPP_NAMESPACE::KHRMaintenance10SpecVersion; @@ -5278,6 +5282,11 @@ export namespace VULKAN_HPP_NAMESPACE //=== VK_EXT_shader_64bit_indexing === using VULKAN_HPP_NAMESPACE::PhysicalDeviceShader64BitIndexingFeaturesEXT; + //=== VK_QCOM_data_graph_model === + using VULKAN_HPP_NAMESPACE::DataGraphPipelineBuiltinModelCreateInfoQCOM; + using VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphModelFeaturesQCOM; + using VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersionDataGraphQCOM; + //=== VK_KHR_maintenance10 === using VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance10FeaturesKHR; using VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance10PropertiesKHR; @@ -9339,6 +9348,14 @@ export namespace std template <> struct hash; + //=== VK_QCOM_data_graph_model === + template <> + struct hash; + template <> + struct hash; + template <> + struct hash; + //=== VK_KHR_maintenance10 === template <> struct hash; diff --git a/include/vulkan/vulkan.hpp b/include/vulkan/vulkan.hpp index 679bb68..6700c69 100644 --- a/include/vulkan/vulkan.hpp +++ b/include/vulkan/vulkan.hpp @@ -38,7 +38,7 @@ # include # include # include -import VULKAN_HPP_STD_MODULE; +import std.compat; #endif #include @@ -58,7 +58,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h # endif #endif -static_assert( VK_HEADER_VERSION == 331, "Wrong VK_HEADER_VERSION!" ); +static_assert( VK_HEADER_VERSION == 332, "Wrong VK_HEADER_VERSION!" ); // includes through some other header // this results in major(x) being resolved to gnu_dev_major(x) @@ -7614,6 +7614,9 @@ namespace VULKAN_HPP_NAMESPACE //=== VK_NV_partitioned_acceleration_structure === VULKAN_HPP_CONSTEXPR_INLINE uint32_t PartitionedAccelerationStructurePartitionIndexGlobalNV = VK_PARTITIONED_ACCELERATION_STRUCTURE_PARTITION_INDEX_GLOBAL_NV; + //=== VK_QCOM_data_graph_model === + VULKAN_HPP_CONSTEXPR_INLINE uint32_t DataGraphModelToolchainVersionLengthQCOM = VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM; + //======================== //=== CONSTEXPR VALUEs === //======================== @@ -9530,6 +9533,10 @@ namespace VULKAN_HPP_NAMESPACE VULKAN_HPP_CONSTEXPR_INLINE auto EXTShader64BitIndexingExtensionName = VK_EXT_SHADER_64BIT_INDEXING_EXTENSION_NAME; VULKAN_HPP_CONSTEXPR_INLINE auto EXTShader64BitIndexingSpecVersion = VK_EXT_SHADER_64BIT_INDEXING_SPEC_VERSION; + //=== VK_QCOM_data_graph_model === + VULKAN_HPP_CONSTEXPR_INLINE auto QCOMDataGraphModelExtensionName = VK_QCOM_DATA_GRAPH_MODEL_EXTENSION_NAME; + VULKAN_HPP_CONSTEXPR_INLINE auto QCOMDataGraphModelSpecVersion = VK_QCOM_DATA_GRAPH_MODEL_SPEC_VERSION; + //=== VK_KHR_maintenance10 === VULKAN_HPP_CONSTEXPR_INLINE auto KHRMaintenance10ExtensionName = VK_KHR_MAINTENANCE_10_EXTENSION_NAME; VULKAN_HPP_CONSTEXPR_INLINE auto KHRMaintenance10SpecVersion = VK_KHR_MAINTENANCE_10_SPEC_VERSION; @@ -19702,6 +19709,34 @@ namespace VULKAN_HPP_NAMESPACE }; }; + //=== VK_QCOM_data_graph_model === + template <> + struct StructExtends + { + enum + { + value = true + }; + }; + + template <> + struct StructExtends + { + enum + { + value = true + }; + }; + + template <> + struct StructExtends + { + enum + { + value = true + }; + }; + //=== VK_KHR_maintenance10 === template <> struct StructExtends diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 78c9957..40f5e19 100644 --- a/include/vulkan/vulkan_core.h +++ b/include/vulkan/vulkan_core.h @@ -66,7 +66,7 @@ extern "C" { //#define VK_API_VERSION VK_MAKE_API_VERSION(0, 1, 0, 0) // Patch version should always be set to 0 // Version of this file -#define VK_HEADER_VERSION 331 +#define VK_HEADER_VERSION 332 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION) @@ -1358,6 +1358,8 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_DEVICE_MEMORY_FEATURES_EXT = 1000620000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_MODE_FIFO_LATEST_READY_FEATURES_KHR = 1000361000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_64_BIT_INDEXING_FEATURES_EXT = 1000627000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_MODEL_FEATURES_QCOM = 1000629000, + VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_BUILTIN_MODEL_CREATE_INFO_QCOM = 1000629001, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_10_FEATURES_KHR = 1000630000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_10_PROPERTIES_KHR = 1000630001, VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_FLAGS_INFO_KHR = 1000630002, @@ -2182,6 +2184,7 @@ typedef enum VkIndexType { typedef enum VkPipelineCacheHeaderVersion { VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1, + VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM = 1000629000, VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF } VkPipelineCacheHeaderVersion; @@ -21260,7 +21263,7 @@ typedef void (VKAPI_PTR *PFN_vkDestroyTensorViewARM)(VkDevice device, VkTensorVi typedef void (VKAPI_PTR *PFN_vkGetTensorMemoryRequirementsARM)(VkDevice device, const VkTensorMemoryRequirementsInfoARM* pInfo, VkMemoryRequirements2* pMemoryRequirements); typedef VkResult (VKAPI_PTR *PFN_vkBindTensorMemoryARM)(VkDevice device, uint32_t bindInfoCount, const VkBindTensorMemoryInfoARM* pBindInfos); typedef void (VKAPI_PTR *PFN_vkGetDeviceTensorMemoryRequirementsARM)(VkDevice device, const VkDeviceTensorMemoryRequirementsARM* pInfo, VkMemoryRequirements2* pMemoryRequirements); -typedef void (VKAPI_PTR *PFN_vkCmdCopyTensorARM)(VkCommandBuffer commandBuffer, const VkCopyTensorInfoARM* pCopyTensorInfo); +typedef void (VKAPI_PTR *PFN_vkCmdCopyTensorARM)(VkCommandBuffer commandBuffer, const VkCopyTensorInfoARM* pCopyTensorInfo); typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalTensorPropertiesARM)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalTensorInfoARM* pExternalTensorInfo, VkExternalTensorPropertiesARM* pExternalTensorProperties); typedef VkResult (VKAPI_PTR *PFN_vkGetTensorOpaqueCaptureDescriptorDataARM)(VkDevice device, const VkTensorCaptureDescriptorDataInfoARM* pInfo, void* pData); typedef VkResult (VKAPI_PTR *PFN_vkGetTensorViewOpaqueCaptureDescriptorDataARM)(VkDevice device, const VkTensorViewCaptureDescriptorDataInfoARM* pInfo, void* pData); @@ -21320,7 +21323,7 @@ VKAPI_ATTR void VKAPI_CALL vkGetDeviceTensorMemoryRequirementsARM( #ifndef VK_ONLY_EXPORTED_PROTOTYPES VKAPI_ATTR void VKAPI_CALL vkCmdCopyTensorARM( VkCommandBuffer commandBuffer, - const VkCopyTensorInfoARM* pCopyTensorInfo); + const VkCopyTensorInfoARM* pCopyTensorInfo); #endif #ifndef VK_ONLY_EXPORTED_PROTOTYPES @@ -22228,11 +22231,15 @@ typedef enum VkDataGraphPipelinePropertyARM { typedef enum VkPhysicalDeviceDataGraphProcessingEngineTypeARM { VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM = 0, + VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM = 1000629000, + VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM = 1000629001, VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_MAX_ENUM_ARM = 0x7FFFFFFF } VkPhysicalDeviceDataGraphProcessingEngineTypeARM; typedef enum VkPhysicalDeviceDataGraphOperationTypeARM { VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM = 0, + VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM = 1000629000, + VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM = 1000629001, VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_MAX_ENUM_ARM = 0x7FFFFFFF } VkPhysicalDeviceDataGraphOperationTypeARM; typedef VkFlags64 VkDataGraphPipelineSessionCreateFlagsARM; @@ -23890,6 +23897,38 @@ typedef struct VkPhysicalDeviceShader64BitIndexingFeaturesEXT { +// VK_QCOM_data_graph_model is a preprocessor guard. Do not pass it to API calls. +#define VK_QCOM_data_graph_model 1 +#define VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM 3U +#define VK_QCOM_DATA_GRAPH_MODEL_SPEC_VERSION 1 +#define VK_QCOM_DATA_GRAPH_MODEL_EXTENSION_NAME "VK_QCOM_data_graph_model" + +typedef enum VkDataGraphModelCacheTypeQCOM { + VK_DATA_GRAPH_MODEL_CACHE_TYPE_GENERIC_BINARY_QCOM = 0, + VK_DATA_GRAPH_MODEL_CACHE_TYPE_MAX_ENUM_QCOM = 0x7FFFFFFF +} VkDataGraphModelCacheTypeQCOM; +typedef struct VkPipelineCacheHeaderVersionDataGraphQCOM { + uint32_t headerSize; + VkPipelineCacheHeaderVersion headerVersion; + VkDataGraphModelCacheTypeQCOM cacheType; + uint32_t cacheVersion; + uint32_t toolchainVersion[VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM]; +} VkPipelineCacheHeaderVersionDataGraphQCOM; + +typedef struct VkDataGraphPipelineBuiltinModelCreateInfoQCOM { + VkStructureType sType; + const void* pNext; + const VkPhysicalDeviceDataGraphOperationSupportARM* pOperation; +} VkDataGraphPipelineBuiltinModelCreateInfoQCOM; + +typedef struct VkPhysicalDeviceDataGraphModelFeaturesQCOM { + VkStructureType sType; + const void* pNext; + VkBool32 dataGraphModel; +} VkPhysicalDeviceDataGraphModelFeaturesQCOM; + + + // VK_SEC_pipeline_cache_incremental_mode is a preprocessor guard. Do not pass it to API calls. #define VK_SEC_pipeline_cache_incremental_mode 1 #define VK_SEC_PIPELINE_CACHE_INCREMENTAL_MODE_SPEC_VERSION 1 diff --git a/include/vulkan/vulkan_enums.hpp b/include/vulkan/vulkan_enums.hpp index 7f8c6ea..13da68f 100644 --- a/include/vulkan/vulkan_enums.hpp +++ b/include/vulkan/vulkan_enums.hpp @@ -1733,6 +1733,8 @@ namespace VULKAN_HPP_NAMESPACE ePhysicalDevicePresentModeFifoLatestReadyFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_MODE_FIFO_LATEST_READY_FEATURES_KHR, ePhysicalDevicePresentModeFifoLatestReadyFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_MODE_FIFO_LATEST_READY_FEATURES_EXT, ePhysicalDeviceShader64BitIndexingFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_64_BIT_INDEXING_FEATURES_EXT, + ePhysicalDeviceDataGraphModelFeaturesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_MODEL_FEATURES_QCOM, + eDataGraphPipelineBuiltinModelCreateInfoQCOM = VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_BUILTIN_MODEL_CREATE_INFO_QCOM, ePhysicalDeviceMaintenance10FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_10_FEATURES_KHR, ePhysicalDeviceMaintenance10PropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_10_PROPERTIES_KHR, eRenderingAttachmentFlagsInfoKHR = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_FLAGS_INFO_KHR, @@ -3191,7 +3193,8 @@ namespace VULKAN_HPP_NAMESPACE // wrapper class for enum VkPipelineCacheHeaderVersion, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkPipelineCacheHeaderVersion.html enum class PipelineCacheHeaderVersion { - eOne = VK_PIPELINE_CACHE_HEADER_VERSION_ONE + eOne = VK_PIPELINE_CACHE_HEADER_VERSION_ONE, + eDataGraphQCOM = VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM }; // wrapper class for enum VkEventCreateFlagBits, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkEventCreateFlagBits.html @@ -8805,14 +8808,18 @@ namespace VULKAN_HPP_NAMESPACE // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPhysicalDeviceDataGraphProcessingEngineTypeARM.html enum class PhysicalDeviceDataGraphProcessingEngineTypeARM { - eDefault = VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM + eDefault = VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_DEFAULT_ARM, + eNeuralQCOM = VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM, + eComputeQCOM = VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM }; // wrapper class for enum VkPhysicalDeviceDataGraphOperationTypeARM, see // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPhysicalDeviceDataGraphOperationTypeARM.html enum class PhysicalDeviceDataGraphOperationTypeARM { - eSpirvExtendedInstructionSet = VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM + eSpirvExtendedInstructionSet = VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM, + eNeuralModelQCOM = VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM, + eBuiltinModelQCOM = VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM }; //=== VK_KHR_video_encode_av1 === @@ -9405,6 +9412,14 @@ namespace VULKAN_HPP_NAMESPACE static VULKAN_HPP_CONST_OR_CONSTEXPR PerformanceCounterDescriptionFlagsARM allFlags = {}; }; + //=== VK_QCOM_data_graph_model === + + // wrapper class for enum VkDataGraphModelCacheTypeQCOM, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkDataGraphModelCacheTypeQCOM.html + enum class DataGraphModelCacheTypeQCOM + { + eGenericBinary = VK_DATA_GRAPH_MODEL_CACHE_TYPE_GENERIC_BINARY_QCOM + }; + //=== VK_KHR_maintenance10 === // wrapper class for enum VkRenderingAttachmentFlagBitsKHR, see diff --git a/include/vulkan/vulkan_extension_inspection.hpp b/include/vulkan/vulkan_extension_inspection.hpp index 37087a1..6a18794 100644 --- a/include/vulkan/vulkan_extension_inspection.hpp +++ b/include/vulkan/vulkan_extension_inspection.hpp @@ -508,6 +508,7 @@ namespace VULKAN_HPP_NAMESPACE "VK_EXT_zero_initialize_device_memory", "VK_KHR_present_mode_fifo_latest_ready", "VK_EXT_shader_64bit_indexing", + "VK_QCOM_data_graph_model", "VK_KHR_maintenance10", "VK_SEC_pipeline_cache_incremental_mode", "VK_EXT_shader_uniform_buffer_unsized_array" }; @@ -1782,7 +1783,17 @@ namespace VULKAN_HPP_NAMESPACE { { "VK_KHR_get_physical_device_properties2", } } }, - { "VK_VERSION_1_1", { {} } } } }, + { "VK_VERSION_1_1", { {} } } } } +#if defined( VK_ENABLE_BETA_EXTENSIONS ) + , + { "VK_NV_cuda_kernel_launch", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } } +#endif /*VK_ENABLE_BETA_EXTENSIONS*/ + , { "VK_QCOM_tile_shading", { { "VK_VERSION_1_0", { { @@ -2059,6 +2070,12 @@ namespace VULKAN_HPP_NAMESPACE "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { {} } } } }, + { "VK_EXT_frame_boundary", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_EXT_multisampled_render_to_single_sampled", { { "VK_VERSION_1_0", { { @@ -2179,6 +2196,12 @@ namespace VULKAN_HPP_NAMESPACE } } } } }, { "VK_KHR_maintenance4", { { "VK_VERSION_1_1", { {} } } } }, { "VK_ARM_shader_core_properties", { { "VK_VERSION_1_1", { {} } } } }, + { "VK_KHR_shader_subgroup_rotate", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_ARM_scheduling_controls", { { "VK_VERSION_1_0", { { @@ -2382,7 +2405,13 @@ namespace VULKAN_HPP_NAMESPACE { { "VK_KHR_dynamic_rendering", } } }, - { "VK_VERSION_1_3", { {} } } } } + { "VK_VERSION_1_3", { {} } } } }, + { "VK_AMD_anti_lag", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } } #if defined( VK_ENABLE_BETA_EXTENSIONS ) , { "VK_AMDX_dense_geometry_format", @@ -2476,6 +2505,18 @@ namespace VULKAN_HPP_NAMESPACE { { "VK_KHR_ray_tracing_pipeline", } } } } }, + { "VK_NV_cooperative_vector", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, + { "VK_NV_extended_sparse_address_space", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_EXT_mutable_descriptor_type", { { "VK_VERSION_1_0", { { @@ -2539,6 +2580,12 @@ namespace VULKAN_HPP_NAMESPACE "VK_KHR_deferred_host_operations", "VK_KHR_maintenance5", } } } } }, + { "VK_QCOM_multiview_per_view_render_areas", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_KHR_compute_shader_derivatives", { { "VK_VERSION_1_0", { { @@ -2581,6 +2628,12 @@ namespace VULKAN_HPP_NAMESPACE { { "VK_EXT_filter_cubic", } } } } }, + { "VK_QCOM_ycbcr_degamma", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_QCOM_filter_cubic_clamp", { { "VK_VERSION_1_0", { { @@ -2607,6 +2660,12 @@ namespace VULKAN_HPP_NAMESPACE "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { {} } } } }, + { "VK_KHR_unified_image_layouts", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_KHR_shader_float_controls2", { { "VK_VERSION_1_1", { { @@ -2701,7 +2760,49 @@ namespace VULKAN_HPP_NAMESPACE { { "VK_KHR_video_encode_queue", } } } } }, + { "VK_NV_raw_access_chains", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, + { "VK_KHR_shader_relaxed_extended_instruction", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, + { "VK_NV_command_buffer_inheritance", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_KHR_maintenance7", { { "VK_VERSION_1_1", { {} } } } }, + { "VK_NV_shader_atomic_float16_vector", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, + { "VK_EXT_shader_replicated_composites", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, + { "VK_EXT_shader_float8", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, + { "VK_NV_ray_tracing_validation", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_NV_cluster_acceleration_structure", { { "VK_VERSION_1_0", { { @@ -2730,6 +2831,12 @@ namespace VULKAN_HPP_NAMESPACE "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { {} } } } }, + { "VK_KHR_shader_fma", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_EXT_depth_clamp_control", { { "VK_VERSION_1_0", { { @@ -2806,6 +2913,12 @@ namespace VULKAN_HPP_NAMESPACE "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { {} } } } }, + { "VK_ARM_format_pack", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, { "VK_VALVE_fragment_density_map_layered", { { "VK_VERSION_1_0", { { @@ -2821,7 +2934,17 @@ namespace VULKAN_HPP_NAMESPACE { { "VK_KHR_get_physical_device_properties2", } } }, - { "VK_VERSION_1_1", { {} } } } }, + { "VK_VERSION_1_1", { {} } } } } +#if defined( VK_ENABLE_BETA_EXTENSIONS ) + , + { "VK_NV_present_metering", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } } +#endif /*VK_ENABLE_BETA_EXTENSIONS*/ + , { "VK_EXT_fragment_density_map_offset", { { "VK_VERSION_1_0", { { @@ -2862,7 +2985,24 @@ namespace VULKAN_HPP_NAMESPACE "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { {} } } } }, + { "VK_QCOM_data_graph_model", + { { "VK_VERSION_1_0", + { { + "VK_ARM_data_graph", + } } } } }, { "VK_KHR_maintenance10", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, + { "VK_SEC_pipeline_cache_incremental_mode", + { { "VK_VERSION_1_0", + { { + "VK_KHR_get_physical_device_properties2", + } } }, + { "VK_VERSION_1_1", { {} } } } }, + { "VK_EXT_shader_uniform_buffer_unsized_array", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", @@ -3813,8 +3953,8 @@ namespace VULKAN_HPP_NAMESPACE #endif /*VK_ENABLE_BETA_EXTENSIONS*/ || ( extension == "VK_EXT_fragment_density_map_offset" ) || ( extension == "VK_EXT_zero_initialize_device_memory" ) || ( extension == "VK_KHR_present_mode_fifo_latest_ready" ) || ( extension == "VK_EXT_shader_64bit_indexing" ) || - ( extension == "VK_KHR_maintenance10" ) || ( extension == "VK_SEC_pipeline_cache_incremental_mode" ) || - ( extension == "VK_EXT_shader_uniform_buffer_unsized_array" ); + ( extension == "VK_QCOM_data_graph_model" ) || ( extension == "VK_KHR_maintenance10" ) || + ( extension == "VK_SEC_pipeline_cache_incremental_mode" ) || ( extension == "VK_EXT_shader_uniform_buffer_unsized_array" ); } VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension ) diff --git a/include/vulkan/vulkan_handles.hpp b/include/vulkan/vulkan_handles.hpp index d16aedc..97f147a 100644 --- a/include/vulkan/vulkan_handles.hpp +++ b/include/vulkan/vulkan_handles.hpp @@ -2247,6 +2247,11 @@ namespace VULKAN_HPP_NAMESPACE //=== VK_EXT_shader_64bit_indexing === struct PhysicalDeviceShader64BitIndexingFeaturesEXT; + //=== VK_QCOM_data_graph_model === + struct PipelineCacheHeaderVersionDataGraphQCOM; + struct DataGraphPipelineBuiltinModelCreateInfoQCOM; + struct PhysicalDeviceDataGraphModelFeaturesQCOM; + //=== VK_KHR_maintenance10 === struct PhysicalDeviceMaintenance10FeaturesKHR; struct PhysicalDeviceMaintenance10PropertiesKHR; diff --git a/include/vulkan/vulkan_hash.hpp b/include/vulkan/vulkan_hash.hpp index 220d5c0..f3b3663 100644 --- a/include/vulkan/vulkan_hash.hpp +++ b/include/vulkan/vulkan_hash.hpp @@ -3442,6 +3442,37 @@ namespace std }; # endif /*VK_USE_PLATFORM_WIN32_KHR*/ + template <> + struct hash + { + std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphOperationSupportARM const & physicalDeviceDataGraphOperationSupportARM ) const + VULKAN_HPP_NOEXCEPT + { + std::size_t seed = 0; + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphOperationSupportARM.operationType ); + for ( size_t i = 0; i < VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM; ++i ) + { + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphOperationSupportARM.name[i] ); + } + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphOperationSupportARM.version ); + return seed; + } + }; + + template <> + struct hash + { + std::size_t operator()( VULKAN_HPP_NAMESPACE::DataGraphPipelineBuiltinModelCreateInfoQCOM const & dataGraphPipelineBuiltinModelCreateInfoQCOM ) const + VULKAN_HPP_NOEXCEPT + { + std::size_t seed = 0; + VULKAN_HPP_HASH_COMBINE( seed, dataGraphPipelineBuiltinModelCreateInfoQCOM.sType ); + VULKAN_HPP_HASH_COMBINE( seed, dataGraphPipelineBuiltinModelCreateInfoQCOM.pNext ); + VULKAN_HPP_HASH_COMBINE( seed, dataGraphPipelineBuiltinModelCreateInfoQCOM.pOperation ); + return seed; + } + }; + template <> struct hash { @@ -9672,18 +9703,15 @@ namespace std }; template <> - struct hash + struct hash { - std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphOperationSupportARM const & physicalDeviceDataGraphOperationSupportARM ) const - VULKAN_HPP_NOEXCEPT + std::size_t + operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphModelFeaturesQCOM const & physicalDeviceDataGraphModelFeaturesQCOM ) const VULKAN_HPP_NOEXCEPT { std::size_t seed = 0; - VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphOperationSupportARM.operationType ); - for ( size_t i = 0; i < VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM; ++i ) - { - VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphOperationSupportARM.name[i] ); - } - VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphOperationSupportARM.version ); + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphModelFeaturesQCOM.sType ); + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphModelFeaturesQCOM.pNext ); + VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceDataGraphModelFeaturesQCOM.dataGraphModel ); return seed; } }; @@ -15423,6 +15451,25 @@ namespace std } }; + template <> + struct hash + { + std::size_t + operator()( VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersionDataGraphQCOM const & pipelineCacheHeaderVersionDataGraphQCOM ) const VULKAN_HPP_NOEXCEPT + { + std::size_t seed = 0; + VULKAN_HPP_HASH_COMBINE( seed, pipelineCacheHeaderVersionDataGraphQCOM.headerSize ); + VULKAN_HPP_HASH_COMBINE( seed, pipelineCacheHeaderVersionDataGraphQCOM.headerVersion ); + VULKAN_HPP_HASH_COMBINE( seed, pipelineCacheHeaderVersionDataGraphQCOM.cacheType ); + VULKAN_HPP_HASH_COMBINE( seed, pipelineCacheHeaderVersionDataGraphQCOM.cacheVersion ); + for ( size_t i = 0; i < VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM; ++i ) + { + VULKAN_HPP_HASH_COMBINE( seed, pipelineCacheHeaderVersionDataGraphQCOM.toolchainVersion[i] ); + } + return seed; + } + }; + template <> struct hash { diff --git a/include/vulkan/vulkan_hpp_macros.hpp b/include/vulkan/vulkan_hpp_macros.hpp index 34a1002..068be38 100644 --- a/include/vulkan/vulkan_hpp_macros.hpp +++ b/include/vulkan/vulkan_hpp_macros.hpp @@ -35,6 +35,18 @@ # include #endif +#define VULKAN_HPP_STRINGIFY2( text ) #text +#define VULKAN_HPP_STRINGIFY( text ) VULKAN_HPP_STRINGIFY2( text ) +#define VULKAN_HPP_NAMESPACE_STRING VULKAN_HPP_STRINGIFY( VULKAN_HPP_NAMESPACE ) + +#if defined( __clang__ ) || defined( __GNUC__ ) || defined( __GNUG__ ) +# define VULKAN_HPP_COMPILE_WARNING( text ) _Pragma( VULKAN_HPP_STRINGIFY( GCC warning text ) ) +#elif defined( _MSC_VER ) +# define VULKAN_HPP_COMPILE_WARNING( text ) _Pragma( VULKAN_HPP_STRINGIFY( message( __FILE__ "(" VULKAN_HPP_STRINGIFY( __LINE__ ) "): warning: " text ) ) ) +#else +# define VULKAN_HPP_COMPILE_WARNING( text ) +#endif + #if defined( VULKAN_HPP_DISABLE_ENHANCED_MODE ) # if !defined( VULKAN_HPP_NO_SMART_HANDLE ) # define VULKAN_HPP_NO_SMART_HANDLE @@ -87,8 +99,8 @@ # define VULKAN_HPP_SUPPORT_SPAN #endif -#if !defined( VULKAN_HPP_STD_MODULE ) && defined( __cpp_modules ) && defined( __cpp_lib_modules ) -# define VULKAN_HPP_STD_MODULE std.compat +#if defined( VULKAN_HPP_CXX_MODULE ) && !( defined( __cpp_modules ) && defined( __cpp_lib_modules ) ) +VULKAN_HPP_COMPILE_WARNING( "This is a non-conforming implementation of C++ named modules and the standard library module." ) #endif #ifndef VK_USE_64_BIT_PTR_DEFINES @@ -225,10 +237,6 @@ # define VULKAN_HPP_NAMESPACE vk #endif -#define VULKAN_HPP_STRINGIFY2( text ) #text -#define VULKAN_HPP_STRINGIFY( text ) VULKAN_HPP_STRINGIFY2( text ) -#define VULKAN_HPP_NAMESPACE_STRING VULKAN_HPP_STRINGIFY( VULKAN_HPP_NAMESPACE ) - #if !defined( VULKAN_HPP_DISPATCH_LOADER_DYNAMIC ) # if defined( VK_NO_PROTOTYPES ) # define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1 diff --git a/include/vulkan/vulkan_ohos.h b/include/vulkan/vulkan_ohos.h index 7a6b49a..0731e55 100644 --- a/include/vulkan/vulkan_ohos.h +++ b/include/vulkan/vulkan_ohos.h @@ -22,7 +22,7 @@ extern "C" { // VK_OHOS_external_memory is a preprocessor guard. Do not pass it to API calls. #define VK_OHOS_external_memory 1 struct OH_NativeBuffer; -#define VK_OHOS_EXTERNAL_MEMORY_SPEC_VERSION 2 +#define VK_OHOS_EXTERNAL_MEMORY_SPEC_VERSION 1 #define VK_OHOS_EXTERNAL_MEMORY_EXTENSION_NAME "VK_OHOS_external_memory" typedef struct VkNativeBufferUsageOHOS { VkStructureType sType; diff --git a/include/vulkan/vulkan_static_assertions.hpp b/include/vulkan/vulkan_static_assertions.hpp index 32e5afa..242f761 100644 --- a/include/vulkan/vulkan_static_assertions.hpp +++ b/include/vulkan/vulkan_static_assertions.hpp @@ -9423,6 +9423,30 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout::value, "PhysicalDeviceShader64BitIndexingFeaturesEXT is not nothrow_move_constructible!" ); +//=== VK_QCOM_data_graph_model === + +VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PipelineCacheHeaderVersionDataGraphQCOM ) == sizeof( VkPipelineCacheHeaderVersionDataGraphQCOM ), + "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, + "PipelineCacheHeaderVersionDataGraphQCOM is not nothrow_move_constructible!" ); + +VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphPipelineBuiltinModelCreateInfoQCOM ) == + sizeof( VkDataGraphPipelineBuiltinModelCreateInfoQCOM ), + "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, + "DataGraphPipelineBuiltinModelCreateInfoQCOM is not nothrow_move_constructible!" ); + +VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphModelFeaturesQCOM ) == sizeof( VkPhysicalDeviceDataGraphModelFeaturesQCOM ), + "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, + "PhysicalDeviceDataGraphModelFeaturesQCOM is not nothrow_move_constructible!" ); + //=== VK_KHR_maintenance10 === VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance10FeaturesKHR ) == sizeof( VkPhysicalDeviceMaintenance10FeaturesKHR ), diff --git a/include/vulkan/vulkan_structs.hpp b/include/vulkan/vulkan_structs.hpp index d04162e..12e7e7d 100644 --- a/include/vulkan/vulkan_structs.hpp +++ b/include/vulkan/vulkan_structs.hpp @@ -28354,6 +28354,269 @@ namespace VULKAN_HPP_NAMESPACE }; #endif /*VK_USE_PLATFORM_WIN32_KHR*/ + // wrapper struct for struct VkPhysicalDeviceDataGraphOperationSupportARM, see + // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPhysicalDeviceDataGraphOperationSupportARM.html + struct PhysicalDeviceDataGraphOperationSupportARM + { + using NativeType = VkPhysicalDeviceDataGraphOperationSupportARM; + +#if !defined( VULKAN_HPP_NO_CONSTRUCTORS ) && !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS ) + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM( + PhysicalDeviceDataGraphOperationTypeARM operationType_ = PhysicalDeviceDataGraphOperationTypeARM::eSpirvExtendedInstructionSet, + std::array const & name_ = {}, + uint32_t version_ = {} ) VULKAN_HPP_NOEXCEPT + : operationType{ operationType_ } + , name{ name_ } + , version{ version_ } + { + } + + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) VULKAN_HPP_NOEXCEPT = default; + + PhysicalDeviceDataGraphOperationSupportARM( VkPhysicalDeviceDataGraphOperationSupportARM const & rhs ) VULKAN_HPP_NOEXCEPT + : PhysicalDeviceDataGraphOperationSupportARM( *reinterpret_cast( &rhs ) ) + { + } + +# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE ) + PhysicalDeviceDataGraphOperationSupportARM( PhysicalDeviceDataGraphOperationTypeARM operationType_, std::string const & name_, uint32_t version_ = {} ) + : operationType( operationType_ ), version( version_ ) + { + VULKAN_HPP_ASSERT( name_.size() < VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM ); +# if defined( _WIN32 ) + strncpy_s( name, VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM, name_.data(), name_.size() ); +# else + strncpy( name, name_.data(), std::min( VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM, name_.size() ) ); +# endif + } +# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ + + PhysicalDeviceDataGraphOperationSupportARM & operator=( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) VULKAN_HPP_NOEXCEPT = default; +#endif /*VULKAN_HPP_NO_CONSTRUCTORS*/ + + PhysicalDeviceDataGraphOperationSupportARM & operator=( VkPhysicalDeviceDataGraphOperationSupportARM 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 PhysicalDeviceDataGraphOperationSupportARM & + setOperationType( PhysicalDeviceDataGraphOperationTypeARM operationType_ ) VULKAN_HPP_NOEXCEPT + { + operationType = operationType_; + return *this; + } + + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM & + setName( std::array name_ ) VULKAN_HPP_NOEXCEPT + { + name = name_; + return *this; + } + +# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE ) + PhysicalDeviceDataGraphOperationSupportARM & setName( std::string const & name_ ) VULKAN_HPP_NOEXCEPT + { + VULKAN_HPP_ASSERT( name_.size() < VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM ); +# if defined( _WIN32 ) + strncpy_s( name, VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM, name_.data(), name_.size() ); +# else + strncpy( name, name_.data(), std::min( VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM, name_.size() ) ); +# endif + return *this; + } +# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ + + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM & setVersion( uint32_t version_ ) VULKAN_HPP_NOEXCEPT + { + version = version_; + return *this; + } +#endif /*VULKAN_HPP_NO_SETTERS*/ + + operator VkPhysicalDeviceDataGraphOperationSupportARM const &() const VULKAN_HPP_NOEXCEPT + { + return *reinterpret_cast( this ); + } + + operator VkPhysicalDeviceDataGraphOperationSupportARM &() VULKAN_HPP_NOEXCEPT + { + return *reinterpret_cast( this ); + } + + operator VkPhysicalDeviceDataGraphOperationSupportARM const *() const VULKAN_HPP_NOEXCEPT + { + return reinterpret_cast( this ); + } + + operator VkPhysicalDeviceDataGraphOperationSupportARM *() VULKAN_HPP_NOEXCEPT + { + return reinterpret_cast( this ); + } + +#if defined( VULKAN_HPP_USE_REFLECT ) + std::tuple const &, + uint32_t const &> + reflect() const VULKAN_HPP_NOEXCEPT + { + return std::tie( operationType, name, version ); + } +#endif + +#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR ) + std::strong_ordering operator<=>( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) const VULKAN_HPP_NOEXCEPT + { + if ( auto cmp = operationType <=> rhs.operationType; cmp != 0 ) + return cmp; + if ( auto cmp = strcmp( name, rhs.name ); cmp != 0 ) + return ( cmp < 0 ) ? std::strong_ordering::less : std::strong_ordering::greater; + if ( auto cmp = version <=> rhs.version; cmp != 0 ) + return cmp; + + return std::strong_ordering::equivalent; + } +#endif + + bool operator==( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) const VULKAN_HPP_NOEXCEPT + { + return ( operationType == rhs.operationType ) && ( strcmp( name, rhs.name ) == 0 ) && ( version == rhs.version ); + } + + bool operator!=( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) const VULKAN_HPP_NOEXCEPT + { + return !operator==( rhs ); + } + + public: + PhysicalDeviceDataGraphOperationTypeARM operationType = PhysicalDeviceDataGraphOperationTypeARM::eSpirvExtendedInstructionSet; + ArrayWrapper1D name = {}; + uint32_t version = {}; + }; + +#if 20 <= VULKAN_HPP_CPP_VERSION + template <> + struct CppType + { + using Type = PhysicalDeviceDataGraphOperationSupportARM; + }; +#endif + + // wrapper struct for struct VkDataGraphPipelineBuiltinModelCreateInfoQCOM, see + // https://registry.khronos.org/vulkan/specs/latest/man/html/VkDataGraphPipelineBuiltinModelCreateInfoQCOM.html + struct DataGraphPipelineBuiltinModelCreateInfoQCOM + { + using NativeType = VkDataGraphPipelineBuiltinModelCreateInfoQCOM; + + static const bool allowDuplicate = false; + static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::eDataGraphPipelineBuiltinModelCreateInfoQCOM; + +#if !defined( VULKAN_HPP_NO_CONSTRUCTORS ) && !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS ) + VULKAN_HPP_CONSTEXPR_14 DataGraphPipelineBuiltinModelCreateInfoQCOM( const PhysicalDeviceDataGraphOperationSupportARM * pOperation_ = {}, + const void * pNext_ = nullptr ) VULKAN_HPP_NOEXCEPT + : pNext{ pNext_ } + , pOperation{ pOperation_ } + { + } + + VULKAN_HPP_CONSTEXPR_14 + DataGraphPipelineBuiltinModelCreateInfoQCOM( DataGraphPipelineBuiltinModelCreateInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default; + + DataGraphPipelineBuiltinModelCreateInfoQCOM( VkDataGraphPipelineBuiltinModelCreateInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT + : DataGraphPipelineBuiltinModelCreateInfoQCOM( *reinterpret_cast( &rhs ) ) + { + } + + DataGraphPipelineBuiltinModelCreateInfoQCOM & operator=( DataGraphPipelineBuiltinModelCreateInfoQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default; +#endif /*VULKAN_HPP_NO_CONSTRUCTORS*/ + + DataGraphPipelineBuiltinModelCreateInfoQCOM & operator=( VkDataGraphPipelineBuiltinModelCreateInfoQCOM 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 DataGraphPipelineBuiltinModelCreateInfoQCOM & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT + { + pNext = pNext_; + return *this; + } + + VULKAN_HPP_CONSTEXPR_14 DataGraphPipelineBuiltinModelCreateInfoQCOM & + setPOperation( const PhysicalDeviceDataGraphOperationSupportARM * pOperation_ ) VULKAN_HPP_NOEXCEPT + { + pOperation = pOperation_; + return *this; + } +#endif /*VULKAN_HPP_NO_SETTERS*/ + + operator VkDataGraphPipelineBuiltinModelCreateInfoQCOM const &() const VULKAN_HPP_NOEXCEPT + { + return *reinterpret_cast( this ); + } + + operator VkDataGraphPipelineBuiltinModelCreateInfoQCOM &() VULKAN_HPP_NOEXCEPT + { + return *reinterpret_cast( this ); + } + + operator VkDataGraphPipelineBuiltinModelCreateInfoQCOM const *() const VULKAN_HPP_NOEXCEPT + { + return reinterpret_cast( this ); + } + + operator VkDataGraphPipelineBuiltinModelCreateInfoQCOM *() VULKAN_HPP_NOEXCEPT + { + return reinterpret_cast( this ); + } + +#if defined( VULKAN_HPP_USE_REFLECT ) + std::tuple reflect() const VULKAN_HPP_NOEXCEPT + { + return std::tie( sType, pNext, pOperation ); + } +#endif + +#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR ) + auto operator<=>( DataGraphPipelineBuiltinModelCreateInfoQCOM const & ) const = default; +#else + bool operator==( DataGraphPipelineBuiltinModelCreateInfoQCOM 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 ) && ( pOperation == rhs.pOperation ); +# endif + } + + bool operator!=( DataGraphPipelineBuiltinModelCreateInfoQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT + { + return !operator==( rhs ); + } +#endif + + public: + StructureType sType = StructureType::eDataGraphPipelineBuiltinModelCreateInfoQCOM; + const void * pNext = {}; + const PhysicalDeviceDataGraphOperationSupportARM * pOperation = {}; + }; + +#if 20 <= VULKAN_HPP_CPP_VERSION + template <> + struct CppType + { + using Type = DataGraphPipelineBuiltinModelCreateInfoQCOM; + }; +#endif + + template <> + struct CppType + { + using Type = DataGraphPipelineBuiltinModelCreateInfoQCOM; + }; + // wrapper struct for struct VkDataGraphPipelineCompilerControlCreateInfoARM, see // https://registry.khronos.org/vulkan/specs/latest/man/html/VkDataGraphPipelineCompilerControlCreateInfoARM.html struct DataGraphPipelineCompilerControlCreateInfoARM @@ -39031,61 +39294,19 @@ namespace VULKAN_HPP_NAMESPACE { } -# ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE VULKAN_HPP_CONSTEXPR_14 DeviceFaultInfoEXT( DeviceFaultInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default; DeviceFaultInfoEXT( VkDeviceFaultInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT : DeviceFaultInfoEXT( *reinterpret_cast( &rhs ) ) {} DeviceFaultInfoEXT & operator=( DeviceFaultInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT = default; -# else - DeviceFaultInfoEXT( DeviceFaultInfoEXT const & ) = delete; - DeviceFaultInfoEXT & operator=( DeviceFaultInfoEXT const & ) = delete; +#endif /*VULKAN_HPP_NO_CONSTRUCTORS*/ - DeviceFaultInfoEXT( DeviceFaultInfoEXT && rhs ) VULKAN_HPP_NOEXCEPT - : pNext{ rhs.pNext } - , pAddressInfos{ rhs.pAddressInfos } - , pVendorInfos{ rhs.pVendorInfos } - , pVendorBinaryData{ rhs.pVendorBinaryData } + DeviceFaultInfoEXT & operator=( VkDeviceFaultInfoEXT const & rhs ) VULKAN_HPP_NOEXCEPT { - memcpy( description, rhs.description, VK_MAX_DESCRIPTION_SIZE ); - - rhs.pNext = nullptr; - memset( rhs.description, 0, VK_MAX_DESCRIPTION_SIZE ); - rhs.pAddressInfos = nullptr; - rhs.pVendorInfos = nullptr; - rhs.pVendorBinaryData = nullptr; - } - - DeviceFaultInfoEXT & operator=( DeviceFaultInfoEXT && rhs ) VULKAN_HPP_NOEXCEPT - { - free( pAddressInfos ); - free( pVendorInfos ); - free( pVendorBinaryData ); - - pNext = rhs.pNext; - memcpy( description, rhs.description, VK_MAX_DESCRIPTION_SIZE ); - pAddressInfos = rhs.pAddressInfos; - pVendorInfos = rhs.pVendorInfos; - pVendorBinaryData = rhs.pVendorBinaryData; - - rhs.pNext = nullptr; - memset( rhs.description, 0, VK_MAX_DESCRIPTION_SIZE ); - rhs.pAddressInfos = nullptr; - rhs.pVendorInfos = nullptr; - rhs.pVendorBinaryData = nullptr; - + *this = *reinterpret_cast( &rhs ); return *this; } - ~DeviceFaultInfoEXT() VULKAN_HPP_NOEXCEPT - { - free( pAddressInfos ); - free( pVendorInfos ); - free( pVendorBinaryData ); - } -# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ -#endif /*VULKAN_HPP_NO_CONSTRUCTORS*/ - operator VkDeviceFaultInfoEXT const &() const VULKAN_HPP_NOEXCEPT { return *reinterpret_cast( this ); @@ -82469,155 +82690,117 @@ namespace VULKAN_HPP_NAMESPACE using Type = PhysicalDeviceDataGraphFeaturesARM; }; - // wrapper struct for struct VkPhysicalDeviceDataGraphOperationSupportARM, see - // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPhysicalDeviceDataGraphOperationSupportARM.html - struct PhysicalDeviceDataGraphOperationSupportARM + // wrapper struct for struct VkPhysicalDeviceDataGraphModelFeaturesQCOM, see + // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPhysicalDeviceDataGraphModelFeaturesQCOM.html + struct PhysicalDeviceDataGraphModelFeaturesQCOM { - using NativeType = VkPhysicalDeviceDataGraphOperationSupportARM; + using NativeType = VkPhysicalDeviceDataGraphModelFeaturesQCOM; + + static const bool allowDuplicate = false; + static VULKAN_HPP_CONST_OR_CONSTEXPR StructureType structureType = StructureType::ePhysicalDeviceDataGraphModelFeaturesQCOM; #if !defined( VULKAN_HPP_NO_CONSTRUCTORS ) && !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS ) - VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM( - PhysicalDeviceDataGraphOperationTypeARM operationType_ = PhysicalDeviceDataGraphOperationTypeARM::eSpirvExtendedInstructionSet, - std::array const & name_ = {}, - uint32_t version_ = {} ) VULKAN_HPP_NOEXCEPT - : operationType{ operationType_ } - , name{ name_ } - , version{ version_ } + VULKAN_HPP_CONSTEXPR PhysicalDeviceDataGraphModelFeaturesQCOM( Bool32 dataGraphModel_ = {}, const void * pNext_ = nullptr ) VULKAN_HPP_NOEXCEPT + : pNext{ pNext_ } + , dataGraphModel{ dataGraphModel_ } { } - VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) VULKAN_HPP_NOEXCEPT = default; + VULKAN_HPP_CONSTEXPR PhysicalDeviceDataGraphModelFeaturesQCOM( PhysicalDeviceDataGraphModelFeaturesQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default; - PhysicalDeviceDataGraphOperationSupportARM( VkPhysicalDeviceDataGraphOperationSupportARM const & rhs ) VULKAN_HPP_NOEXCEPT - : PhysicalDeviceDataGraphOperationSupportARM( *reinterpret_cast( &rhs ) ) + PhysicalDeviceDataGraphModelFeaturesQCOM( VkPhysicalDeviceDataGraphModelFeaturesQCOM const & rhs ) VULKAN_HPP_NOEXCEPT + : PhysicalDeviceDataGraphModelFeaturesQCOM( *reinterpret_cast( &rhs ) ) { } -# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE ) - PhysicalDeviceDataGraphOperationSupportARM( PhysicalDeviceDataGraphOperationTypeARM operationType_, std::string const & name_, uint32_t version_ = {} ) - : operationType( operationType_ ), version( version_ ) - { - VULKAN_HPP_ASSERT( name_.size() < VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM ); -# if defined( _WIN32 ) - strncpy_s( name, VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM, name_.data(), name_.size() ); -# else - strncpy( name, name_.data(), std::min( VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM, name_.size() ) ); -# endif - } -# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ - - PhysicalDeviceDataGraphOperationSupportARM & operator=( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) VULKAN_HPP_NOEXCEPT = default; + PhysicalDeviceDataGraphModelFeaturesQCOM & operator=( PhysicalDeviceDataGraphModelFeaturesQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default; #endif /*VULKAN_HPP_NO_CONSTRUCTORS*/ - PhysicalDeviceDataGraphOperationSupportARM & operator=( VkPhysicalDeviceDataGraphOperationSupportARM const & rhs ) VULKAN_HPP_NOEXCEPT + PhysicalDeviceDataGraphModelFeaturesQCOM & operator=( VkPhysicalDeviceDataGraphModelFeaturesQCOM const & rhs ) VULKAN_HPP_NOEXCEPT { - *this = *reinterpret_cast( &rhs ); + *this = *reinterpret_cast( &rhs ); return *this; } #if !defined( VULKAN_HPP_NO_SETTERS ) && !defined( VULKAN_HPP_NO_STRUCT_SETTERS ) - VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM & - setOperationType( PhysicalDeviceDataGraphOperationTypeARM operationType_ ) VULKAN_HPP_NOEXCEPT + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphModelFeaturesQCOM & setPNext( const void * pNext_ ) VULKAN_HPP_NOEXCEPT { - operationType = operationType_; + pNext = pNext_; return *this; } - VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM & - setName( std::array name_ ) VULKAN_HPP_NOEXCEPT + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphModelFeaturesQCOM & setDataGraphModel( Bool32 dataGraphModel_ ) VULKAN_HPP_NOEXCEPT { - name = name_; - return *this; - } - -# if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE ) - PhysicalDeviceDataGraphOperationSupportARM & setName( std::string const & name_ ) VULKAN_HPP_NOEXCEPT - { - VULKAN_HPP_ASSERT( name_.size() < VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM ); -# if defined( _WIN32 ) - strncpy_s( name, VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM, name_.data(), name_.size() ); -# else - strncpy( name, name_.data(), std::min( VK_MAX_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_SET_NAME_SIZE_ARM, name_.size() ) ); -# endif - return *this; - } -# endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ - - VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceDataGraphOperationSupportARM & setVersion( uint32_t version_ ) VULKAN_HPP_NOEXCEPT - { - version = version_; + dataGraphModel = dataGraphModel_; return *this; } #endif /*VULKAN_HPP_NO_SETTERS*/ - operator VkPhysicalDeviceDataGraphOperationSupportARM const &() const VULKAN_HPP_NOEXCEPT + operator VkPhysicalDeviceDataGraphModelFeaturesQCOM const &() const VULKAN_HPP_NOEXCEPT { - return *reinterpret_cast( this ); + return *reinterpret_cast( this ); } - operator VkPhysicalDeviceDataGraphOperationSupportARM &() VULKAN_HPP_NOEXCEPT + operator VkPhysicalDeviceDataGraphModelFeaturesQCOM &() VULKAN_HPP_NOEXCEPT { - return *reinterpret_cast( this ); + return *reinterpret_cast( this ); } - operator VkPhysicalDeviceDataGraphOperationSupportARM const *() const VULKAN_HPP_NOEXCEPT + operator VkPhysicalDeviceDataGraphModelFeaturesQCOM const *() const VULKAN_HPP_NOEXCEPT { - return reinterpret_cast( this ); + return reinterpret_cast( this ); } - operator VkPhysicalDeviceDataGraphOperationSupportARM *() VULKAN_HPP_NOEXCEPT + operator VkPhysicalDeviceDataGraphModelFeaturesQCOM *() VULKAN_HPP_NOEXCEPT { - return reinterpret_cast( this ); + return reinterpret_cast( this ); } #if defined( VULKAN_HPP_USE_REFLECT ) - std::tuple const &, - uint32_t const &> - reflect() const VULKAN_HPP_NOEXCEPT + std::tuple reflect() const VULKAN_HPP_NOEXCEPT { - return std::tie( operationType, name, version ); + return std::tie( sType, pNext, dataGraphModel ); } #endif #if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR ) - std::strong_ordering operator<=>( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) const VULKAN_HPP_NOEXCEPT + auto operator<=>( PhysicalDeviceDataGraphModelFeaturesQCOM const & ) const = default; +#else + bool operator==( PhysicalDeviceDataGraphModelFeaturesQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT { - if ( auto cmp = operationType <=> rhs.operationType; cmp != 0 ) - return cmp; - if ( auto cmp = strcmp( name, rhs.name ); cmp != 0 ) - return ( cmp < 0 ) ? std::strong_ordering::less : std::strong_ordering::greater; - if ( auto cmp = version <=> rhs.version; cmp != 0 ) - return cmp; - - return std::strong_ordering::equivalent; - } -#endif - - bool operator==( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) const VULKAN_HPP_NOEXCEPT - { - return ( operationType == rhs.operationType ) && ( strcmp( name, rhs.name ) == 0 ) && ( version == rhs.version ); +# if defined( VULKAN_HPP_USE_REFLECT ) + return this->reflect() == rhs.reflect(); +# else + return ( sType == rhs.sType ) && ( pNext == rhs.pNext ) && ( dataGraphModel == rhs.dataGraphModel ); +# endif } - bool operator!=( PhysicalDeviceDataGraphOperationSupportARM const & rhs ) const VULKAN_HPP_NOEXCEPT + bool operator!=( PhysicalDeviceDataGraphModelFeaturesQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT { return !operator==( rhs ); } +#endif public: - PhysicalDeviceDataGraphOperationTypeARM operationType = PhysicalDeviceDataGraphOperationTypeARM::eSpirvExtendedInstructionSet; - ArrayWrapper1D name = {}; - uint32_t version = {}; + StructureType sType = StructureType::ePhysicalDeviceDataGraphModelFeaturesQCOM; + const void * pNext = {}; + Bool32 dataGraphModel = {}; }; #if 20 <= VULKAN_HPP_CPP_VERSION template <> - struct CppType + struct CppType { - using Type = PhysicalDeviceDataGraphOperationSupportARM; + using Type = PhysicalDeviceDataGraphModelFeaturesQCOM; }; #endif + template <> + struct CppType + { + using Type = PhysicalDeviceDataGraphModelFeaturesQCOM; + }; + // wrapper struct for struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, see // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.html struct PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV @@ -90373,6 +90556,21 @@ namespace VULKAN_HPP_NAMESPACE return *this; } +#if !defined( VULKAN_HPP_NO_SETTERS ) && !defined( VULKAN_HPP_NO_STRUCT_SETTERS ) + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE & setPNext( void * pNext_ ) VULKAN_HPP_NOEXCEPT + { + pNext = pNext_; + return *this; + } + + VULKAN_HPP_CONSTEXPR_14 PhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE & + setFragmentDensityMapLayered( Bool32 fragmentDensityMapLayered_ ) VULKAN_HPP_NOEXCEPT + { + fragmentDensityMapLayered = fragmentDensityMapLayered_; + return *this; + } +#endif /*VULKAN_HPP_NO_SETTERS*/ + operator VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE const &() const VULKAN_HPP_NOEXCEPT { return *reinterpret_cast( this ); @@ -126697,6 +126895,143 @@ namespace VULKAN_HPP_NAMESPACE using Type = PipelineCacheCreateInfo; }; + // wrapper struct for struct VkPipelineCacheHeaderVersionDataGraphQCOM, see + // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPipelineCacheHeaderVersionDataGraphQCOM.html + struct PipelineCacheHeaderVersionDataGraphQCOM + { + using NativeType = VkPipelineCacheHeaderVersionDataGraphQCOM; + +#if !defined( VULKAN_HPP_NO_CONSTRUCTORS ) && !defined( VULKAN_HPP_NO_STRUCT_CONSTRUCTORS ) + VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionDataGraphQCOM( + uint32_t headerSize_ = {}, + PipelineCacheHeaderVersion headerVersion_ = PipelineCacheHeaderVersion::eOne, + DataGraphModelCacheTypeQCOM cacheType_ = DataGraphModelCacheTypeQCOM::eGenericBinary, + uint32_t cacheVersion_ = {}, + std::array const & toolchainVersion_ = {} ) VULKAN_HPP_NOEXCEPT + : headerSize{ headerSize_ } + , headerVersion{ headerVersion_ } + , cacheType{ cacheType_ } + , cacheVersion{ cacheVersion_ } + , toolchainVersion{ toolchainVersion_ } + { + } + + VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionDataGraphQCOM( PipelineCacheHeaderVersionDataGraphQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default; + + PipelineCacheHeaderVersionDataGraphQCOM( VkPipelineCacheHeaderVersionDataGraphQCOM const & rhs ) VULKAN_HPP_NOEXCEPT + : PipelineCacheHeaderVersionDataGraphQCOM( *reinterpret_cast( &rhs ) ) + { + } + + PipelineCacheHeaderVersionDataGraphQCOM & operator=( PipelineCacheHeaderVersionDataGraphQCOM const & rhs ) VULKAN_HPP_NOEXCEPT = default; +#endif /*VULKAN_HPP_NO_CONSTRUCTORS*/ + + PipelineCacheHeaderVersionDataGraphQCOM & operator=( VkPipelineCacheHeaderVersionDataGraphQCOM 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 PipelineCacheHeaderVersionDataGraphQCOM & setHeaderSize( uint32_t headerSize_ ) VULKAN_HPP_NOEXCEPT + { + headerSize = headerSize_; + return *this; + } + + VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionDataGraphQCOM & setHeaderVersion( PipelineCacheHeaderVersion headerVersion_ ) VULKAN_HPP_NOEXCEPT + { + headerVersion = headerVersion_; + return *this; + } + + VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionDataGraphQCOM & setCacheType( DataGraphModelCacheTypeQCOM cacheType_ ) VULKAN_HPP_NOEXCEPT + { + cacheType = cacheType_; + return *this; + } + + VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionDataGraphQCOM & setCacheVersion( uint32_t cacheVersion_ ) VULKAN_HPP_NOEXCEPT + { + cacheVersion = cacheVersion_; + return *this; + } + + VULKAN_HPP_CONSTEXPR_14 PipelineCacheHeaderVersionDataGraphQCOM & + setToolchainVersion( std::array toolchainVersion_ ) VULKAN_HPP_NOEXCEPT + { + toolchainVersion = toolchainVersion_; + return *this; + } +#endif /*VULKAN_HPP_NO_SETTERS*/ + + operator VkPipelineCacheHeaderVersionDataGraphQCOM const &() const VULKAN_HPP_NOEXCEPT + { + return *reinterpret_cast( this ); + } + + operator VkPipelineCacheHeaderVersionDataGraphQCOM &() VULKAN_HPP_NOEXCEPT + { + return *reinterpret_cast( this ); + } + + operator VkPipelineCacheHeaderVersionDataGraphQCOM const *() const VULKAN_HPP_NOEXCEPT + { + return reinterpret_cast( this ); + } + + operator VkPipelineCacheHeaderVersionDataGraphQCOM *() VULKAN_HPP_NOEXCEPT + { + return reinterpret_cast( this ); + } + +#if defined( VULKAN_HPP_USE_REFLECT ) + std::tuple const &> + reflect() const VULKAN_HPP_NOEXCEPT + { + return std::tie( headerSize, headerVersion, cacheType, cacheVersion, toolchainVersion ); + } +#endif + +#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR ) + auto operator<=>( PipelineCacheHeaderVersionDataGraphQCOM const & ) const = default; +#else + bool operator==( PipelineCacheHeaderVersionDataGraphQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT + { +# if defined( VULKAN_HPP_USE_REFLECT ) + return this->reflect() == rhs.reflect(); +# else + return ( headerSize == rhs.headerSize ) && ( headerVersion == rhs.headerVersion ) && ( cacheType == rhs.cacheType ) && + ( cacheVersion == rhs.cacheVersion ) && ( toolchainVersion == rhs.toolchainVersion ); +# endif + } + + bool operator!=( PipelineCacheHeaderVersionDataGraphQCOM const & rhs ) const VULKAN_HPP_NOEXCEPT + { + return !operator==( rhs ); + } +#endif + + public: + uint32_t headerSize = {}; + PipelineCacheHeaderVersion headerVersion = PipelineCacheHeaderVersion::eOne; + DataGraphModelCacheTypeQCOM cacheType = DataGraphModelCacheTypeQCOM::eGenericBinary; + uint32_t cacheVersion = {}; + ArrayWrapper1D toolchainVersion = {}; + }; + +#if 20 <= VULKAN_HPP_CPP_VERSION + template <> + struct CppType + { + using Type = PipelineCacheHeaderVersionDataGraphQCOM; + }; +#endif + // wrapper struct for struct VkPipelineCacheHeaderVersionOne, see // https://registry.khronos.org/vulkan/specs/latest/man/html/VkPipelineCacheHeaderVersionOne.html struct PipelineCacheHeaderVersionOne diff --git a/include/vulkan/vulkan_to_string.hpp b/include/vulkan/vulkan_to_string.hpp index 5e71a68..328ec5d 100644 --- a/include/vulkan/vulkan_to_string.hpp +++ b/include/vulkan/vulkan_to_string.hpp @@ -5564,6 +5564,8 @@ namespace VULKAN_HPP_NAMESPACE case StructureType::ePhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT : return "PhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT"; case StructureType::ePhysicalDevicePresentModeFifoLatestReadyFeaturesKHR : return "PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR"; case StructureType::ePhysicalDeviceShader64BitIndexingFeaturesEXT : return "PhysicalDeviceShader64BitIndexingFeaturesEXT"; + case StructureType::ePhysicalDeviceDataGraphModelFeaturesQCOM : return "PhysicalDeviceDataGraphModelFeaturesQCOM"; + case StructureType::eDataGraphPipelineBuiltinModelCreateInfoQCOM : return "DataGraphPipelineBuiltinModelCreateInfoQCOM"; case StructureType::ePhysicalDeviceMaintenance10FeaturesKHR : return "PhysicalDeviceMaintenance10FeaturesKHR"; case StructureType::ePhysicalDeviceMaintenance10PropertiesKHR : return "PhysicalDeviceMaintenance10PropertiesKHR"; case StructureType::eRenderingAttachmentFlagsInfoKHR : return "RenderingAttachmentFlagsInfoKHR"; @@ -6589,8 +6591,9 @@ namespace VULKAN_HPP_NAMESPACE { switch ( value ) { - case PipelineCacheHeaderVersion::eOne: return "One"; - default : return "invalid ( " + toHexString( static_cast( value ) ) + " )"; + case PipelineCacheHeaderVersion::eOne : return "One"; + case PipelineCacheHeaderVersion::eDataGraphQCOM: return "DataGraphQCOM"; + default : return "invalid ( " + toHexString( static_cast( value ) ) + " )"; } } @@ -10366,8 +10369,10 @@ namespace VULKAN_HPP_NAMESPACE { switch ( value ) { - case PhysicalDeviceDataGraphProcessingEngineTypeARM::eDefault: return "Default"; - default : return "invalid ( " + toHexString( static_cast( value ) ) + " )"; + case PhysicalDeviceDataGraphProcessingEngineTypeARM::eDefault : return "Default"; + case PhysicalDeviceDataGraphProcessingEngineTypeARM::eNeuralQCOM : return "NeuralQCOM"; + case PhysicalDeviceDataGraphProcessingEngineTypeARM::eComputeQCOM: return "ComputeQCOM"; + default : return "invalid ( " + toHexString( static_cast( value ) ) + " )"; } } @@ -10376,6 +10381,8 @@ namespace VULKAN_HPP_NAMESPACE switch ( value ) { case PhysicalDeviceDataGraphOperationTypeARM::eSpirvExtendedInstructionSet: return "SpirvExtendedInstructionSet"; + case PhysicalDeviceDataGraphOperationTypeARM::eNeuralModelQCOM : return "NeuralModelQCOM"; + case PhysicalDeviceDataGraphOperationTypeARM::eBuiltinModelQCOM : return "BuiltinModelQCOM"; default : return "invalid ( " + toHexString( static_cast( value ) ) + " )"; } } @@ -10802,6 +10809,17 @@ namespace VULKAN_HPP_NAMESPACE return "(void)"; } + //=== VK_QCOM_data_graph_model === + + VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string to_string( DataGraphModelCacheTypeQCOM value ) + { + switch ( value ) + { + case DataGraphModelCacheTypeQCOM::eGenericBinary: return "GenericBinary"; + default : return "invalid ( " + toHexString( static_cast( value ) ) + " )"; + } + } + //=== VK_KHR_maintenance10 === VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string to_string( RenderingAttachmentFlagBitsKHR value ) diff --git a/registry/validusage.json b/registry/validusage.json index ab60b71..fb2a89d 100644 --- a/registry/validusage.json +++ b/registry/validusage.json @@ -1,9 +1,9 @@ { "version info": { "schema version": 2, - "api version": "1.4.331", - "comment": "from git branch: github-main commit: 48034cad6dd20ad6f2b01194436f87eecf71a9bb", - "date": "2025-10-30 23:18:28Z" + "api version": "1.4.332", + "comment": "from git branch: github-main commit: 09d464f85360160747c4ad6dc5a9841e15822aa5", + "date": "2025-11-07 01:31:22Z" }, "validation": { "VkDeviceAddress": { @@ -1007,6 +1007,11 @@ "text": "If the maintenance9 feature is not supported, queueCreateInfoCount must be greater than 0", "page": "chapters/devsandqueues.html" }, + { + "vuid": "VUID-VkDeviceCreateInfo-queueFamilyIndex-11831", + "text": "If any element of pQueueCreateInfos specifies a queueFamilyIndex that supports VK_QUEUE_DATA_GRAPH_BIT_ARM and that queueFamilyIndex enumerates an engine through vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM with type VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM or VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM, a VkPhysicalDeviceDataGraphModelFeaturesQCOM structure must be included in pNext with dataGraphModel set to VK_TRUE", + "page": "chapters/devsandqueues.html" + }, { "vuid": "VUID-VkDeviceCreateInfo-sType-sType", "text": "sType must be VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO", @@ -1014,7 +1019,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, VkPhysicalDeviceCopyMemoryIndirectFeaturesKHR, VkPhysicalDeviceCopyMemoryIndirectFeaturesNV, VkPhysicalDeviceCornerSampledImageFeaturesNV, VkPhysicalDeviceCoverageReductionModeFeaturesNV, VkPhysicalDeviceCubicClampFeaturesQCOM, VkPhysicalDeviceCubicWeightsFeaturesQCOM, VkPhysicalDeviceCudaKernelLaunchFeaturesNV, VkPhysicalDeviceCustomBorderColorFeaturesEXT, VkPhysicalDeviceDataGraphFeaturesARM, VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX, VkPhysicalDeviceDepthBiasControlFeaturesEXT, VkPhysicalDeviceDepthClampControlFeaturesEXT, VkPhysicalDeviceDepthClampZeroOneFeaturesKHR, VkPhysicalDeviceDepthClipControlFeaturesEXT, VkPhysicalDeviceDepthClipEnableFeaturesEXT, VkPhysicalDeviceDescriptorBufferFeaturesEXT, VkPhysicalDeviceDescriptorBufferTensorFeaturesARM, VkPhysicalDeviceDescriptorIndexingFeatures, VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV, VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE, VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV, VkPhysicalDeviceDeviceMemoryReportFeaturesEXT, VkPhysicalDeviceDiagnosticsConfigFeaturesNV, VkPhysicalDeviceDisplacementMicromapFeaturesNV, VkPhysicalDeviceDynamicRenderingFeatures, VkPhysicalDeviceDynamicRenderingLocalReadFeatures, VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT, VkPhysicalDeviceExclusiveScissorFeaturesNV, VkPhysicalDeviceExtendedDynamicState2FeaturesEXT, VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, VkPhysicalDeviceExtendedDynamicStateFeaturesEXT, VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV, VkPhysicalDeviceExternalFormatResolveFeaturesANDROID, VkPhysicalDeviceExternalMemoryRDMAFeaturesNV, VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX, VkPhysicalDeviceFaultFeaturesEXT, VkPhysicalDeviceFeatures2, VkPhysicalDeviceFormatPackFeaturesARM, VkPhysicalDeviceFragmentDensityMap2FeaturesEXT, VkPhysicalDeviceFragmentDensityMapFeaturesEXT, VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE, 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, VkPhysicalDeviceMaintenance10FeaturesKHR, VkPhysicalDeviceMaintenance4Features, VkPhysicalDeviceMaintenance5Features, VkPhysicalDeviceMaintenance6Features, VkPhysicalDeviceMaintenance7FeaturesKHR, VkPhysicalDeviceMaintenance8FeaturesKHR, VkPhysicalDeviceMaintenance9FeaturesKHR, VkPhysicalDeviceMapMemoryPlacedFeaturesEXT, VkPhysicalDeviceMemoryDecompressionFeaturesEXT, VkPhysicalDeviceMemoryPriorityFeaturesEXT, VkPhysicalDeviceMeshShaderFeaturesEXT, VkPhysicalDeviceMeshShaderFeaturesNV, VkPhysicalDeviceMultiDrawFeaturesEXT, VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM, VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM, VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT, VkPhysicalDeviceNestedCommandBufferFeaturesEXT, VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT, VkPhysicalDeviceOpacityMicromapFeaturesEXT, VkPhysicalDeviceOpticalFlowFeaturesNV, VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT, VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV, VkPhysicalDevicePerStageDescriptorSetFeaturesNV, VkPhysicalDevicePerformanceCountersByRegionFeaturesARM, VkPhysicalDevicePerformanceQueryFeaturesKHR, VkPhysicalDevicePipelineBinaryFeaturesKHR, VkPhysicalDevicePipelineCacheIncrementalModeFeaturesSEC, VkPhysicalDevicePipelineCreationCacheControlFeatures, VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR, VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT, VkPhysicalDevicePipelineOpacityMicromapFeaturesARM, VkPhysicalDevicePipelinePropertiesFeaturesEXT, VkPhysicalDevicePipelineProtectedAccessFeatures, VkPhysicalDevicePipelineRobustnessFeatures, VkPhysicalDevicePortabilitySubsetFeaturesKHR, VkPhysicalDevicePresentBarrierFeaturesNV, VkPhysicalDevicePresentId2FeaturesKHR, VkPhysicalDevicePresentIdFeaturesKHR, VkPhysicalDevicePresentMeteringFeaturesNV, VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR, VkPhysicalDevicePresentWait2FeaturesKHR, 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, VkPhysicalDeviceShader64BitIndexingFeaturesEXT, VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV, VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT, VkPhysicalDeviceShaderAtomicFloatFeaturesEXT, VkPhysicalDeviceShaderAtomicInt64Features, VkPhysicalDeviceShaderBfloat16FeaturesKHR, VkPhysicalDeviceShaderClockFeaturesKHR, VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM, VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures, VkPhysicalDeviceShaderDrawParametersFeatures, VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD, VkPhysicalDeviceShaderEnqueueFeaturesAMDX, VkPhysicalDeviceShaderExpectAssumeFeatures, VkPhysicalDeviceShaderFloat16Int8Features, VkPhysicalDeviceShaderFloat8FeaturesEXT, VkPhysicalDeviceShaderFloatControls2Features, VkPhysicalDeviceShaderFmaFeaturesKHR, VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT, VkPhysicalDeviceShaderImageFootprintFeaturesNV, VkPhysicalDeviceShaderIntegerDotProductFeatures, VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR, VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT, VkPhysicalDeviceShaderObjectFeaturesEXT, VkPhysicalDeviceShaderQuadControlFeaturesKHR, VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR, VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT, VkPhysicalDeviceShaderSMBuiltinsFeaturesNV, VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, VkPhysicalDeviceShaderSubgroupRotateFeatures, VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, VkPhysicalDeviceShaderTerminateInvocationFeatures, VkPhysicalDeviceShaderTileImageFeaturesEXT, VkPhysicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT, VkPhysicalDeviceShaderUntypedPointersFeaturesKHR, VkPhysicalDeviceShadingRateImageFeaturesNV, VkPhysicalDeviceSubgroupSizeControlFeatures, VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT, VkPhysicalDeviceSubpassShadingFeaturesHUAWEI, VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR, VkPhysicalDeviceSynchronization2Features, VkPhysicalDeviceTensorFeaturesARM, VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT, VkPhysicalDeviceTextureCompressionASTCHDRFeatures, VkPhysicalDeviceTileMemoryHeapFeaturesQCOM, VkPhysicalDeviceTilePropertiesFeaturesQCOM, VkPhysicalDeviceTileShadingFeaturesQCOM, VkPhysicalDeviceTimelineSemaphoreFeatures, VkPhysicalDeviceTransformFeedbackFeaturesEXT, VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR, VkPhysicalDeviceUniformBufferStandardLayoutFeatures, VkPhysicalDeviceVariablePointersFeatures, VkPhysicalDeviceVertexAttributeDivisorFeatures, VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT, VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT, VkPhysicalDeviceVideoDecodeVP9FeaturesKHR, VkPhysicalDeviceVideoEncodeAV1FeaturesKHR, VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR, VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR, VkPhysicalDeviceVideoEncodeRgbConversionFeaturesVALVE, VkPhysicalDeviceVideoMaintenance1FeaturesKHR, VkPhysicalDeviceVideoMaintenance2FeaturesKHR, VkPhysicalDeviceVulkan11Features, VkPhysicalDeviceVulkan12Features, VkPhysicalDeviceVulkan13Features, VkPhysicalDeviceVulkan14Features, VkPhysicalDeviceVulkanMemoryModelFeatures, VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, VkPhysicalDeviceYcbcrDegammaFeaturesQCOM, VkPhysicalDeviceYcbcrImageArraysFeaturesEXT, VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT, 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, VkPhysicalDeviceCopyMemoryIndirectFeaturesKHR, VkPhysicalDeviceCopyMemoryIndirectFeaturesNV, VkPhysicalDeviceCornerSampledImageFeaturesNV, VkPhysicalDeviceCoverageReductionModeFeaturesNV, VkPhysicalDeviceCubicClampFeaturesQCOM, VkPhysicalDeviceCubicWeightsFeaturesQCOM, VkPhysicalDeviceCudaKernelLaunchFeaturesNV, VkPhysicalDeviceCustomBorderColorFeaturesEXT, VkPhysicalDeviceDataGraphFeaturesARM, VkPhysicalDeviceDataGraphModelFeaturesQCOM, VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX, VkPhysicalDeviceDepthBiasControlFeaturesEXT, VkPhysicalDeviceDepthClampControlFeaturesEXT, VkPhysicalDeviceDepthClampZeroOneFeaturesKHR, VkPhysicalDeviceDepthClipControlFeaturesEXT, VkPhysicalDeviceDepthClipEnableFeaturesEXT, VkPhysicalDeviceDescriptorBufferFeaturesEXT, VkPhysicalDeviceDescriptorBufferTensorFeaturesARM, VkPhysicalDeviceDescriptorIndexingFeatures, VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV, VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE, VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT, VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV, VkPhysicalDeviceDeviceMemoryReportFeaturesEXT, VkPhysicalDeviceDiagnosticsConfigFeaturesNV, VkPhysicalDeviceDisplacementMicromapFeaturesNV, VkPhysicalDeviceDynamicRenderingFeatures, VkPhysicalDeviceDynamicRenderingLocalReadFeatures, VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT, VkPhysicalDeviceExclusiveScissorFeaturesNV, VkPhysicalDeviceExtendedDynamicState2FeaturesEXT, VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, VkPhysicalDeviceExtendedDynamicStateFeaturesEXT, VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV, VkPhysicalDeviceExternalFormatResolveFeaturesANDROID, VkPhysicalDeviceExternalMemoryRDMAFeaturesNV, VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX, VkPhysicalDeviceFaultFeaturesEXT, VkPhysicalDeviceFeatures2, VkPhysicalDeviceFormatPackFeaturesARM, VkPhysicalDeviceFragmentDensityMap2FeaturesEXT, VkPhysicalDeviceFragmentDensityMapFeaturesEXT, VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE, 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, VkPhysicalDeviceMaintenance10FeaturesKHR, VkPhysicalDeviceMaintenance4Features, VkPhysicalDeviceMaintenance5Features, VkPhysicalDeviceMaintenance6Features, VkPhysicalDeviceMaintenance7FeaturesKHR, VkPhysicalDeviceMaintenance8FeaturesKHR, VkPhysicalDeviceMaintenance9FeaturesKHR, VkPhysicalDeviceMapMemoryPlacedFeaturesEXT, VkPhysicalDeviceMemoryDecompressionFeaturesEXT, VkPhysicalDeviceMemoryPriorityFeaturesEXT, VkPhysicalDeviceMeshShaderFeaturesEXT, VkPhysicalDeviceMeshShaderFeaturesNV, VkPhysicalDeviceMultiDrawFeaturesEXT, VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT, VkPhysicalDeviceMultiviewFeatures, VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM, VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM, VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT, VkPhysicalDeviceNestedCommandBufferFeaturesEXT, VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT, VkPhysicalDeviceOpacityMicromapFeaturesEXT, VkPhysicalDeviceOpticalFlowFeaturesNV, VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT, VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV, VkPhysicalDevicePerStageDescriptorSetFeaturesNV, VkPhysicalDevicePerformanceCountersByRegionFeaturesARM, VkPhysicalDevicePerformanceQueryFeaturesKHR, VkPhysicalDevicePipelineBinaryFeaturesKHR, VkPhysicalDevicePipelineCacheIncrementalModeFeaturesSEC, VkPhysicalDevicePipelineCreationCacheControlFeatures, VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR, VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT, VkPhysicalDevicePipelineOpacityMicromapFeaturesARM, VkPhysicalDevicePipelinePropertiesFeaturesEXT, VkPhysicalDevicePipelineProtectedAccessFeatures, VkPhysicalDevicePipelineRobustnessFeatures, VkPhysicalDevicePortabilitySubsetFeaturesKHR, VkPhysicalDevicePresentBarrierFeaturesNV, VkPhysicalDevicePresentId2FeaturesKHR, VkPhysicalDevicePresentIdFeaturesKHR, VkPhysicalDevicePresentMeteringFeaturesNV, VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR, VkPhysicalDevicePresentWait2FeaturesKHR, 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, VkPhysicalDeviceShader64BitIndexingFeaturesEXT, VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV, VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT, VkPhysicalDeviceShaderAtomicFloatFeaturesEXT, VkPhysicalDeviceShaderAtomicInt64Features, VkPhysicalDeviceShaderBfloat16FeaturesKHR, VkPhysicalDeviceShaderClockFeaturesKHR, VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM, VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures, VkPhysicalDeviceShaderDrawParametersFeatures, VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD, VkPhysicalDeviceShaderEnqueueFeaturesAMDX, VkPhysicalDeviceShaderExpectAssumeFeatures, VkPhysicalDeviceShaderFloat16Int8Features, VkPhysicalDeviceShaderFloat8FeaturesEXT, VkPhysicalDeviceShaderFloatControls2Features, VkPhysicalDeviceShaderFmaFeaturesKHR, VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT, VkPhysicalDeviceShaderImageFootprintFeaturesNV, VkPhysicalDeviceShaderIntegerDotProductFeatures, VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR, VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT, VkPhysicalDeviceShaderObjectFeaturesEXT, VkPhysicalDeviceShaderQuadControlFeaturesKHR, VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR, VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT, VkPhysicalDeviceShaderSMBuiltinsFeaturesNV, VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, VkPhysicalDeviceShaderSubgroupRotateFeatures, VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, VkPhysicalDeviceShaderTerminateInvocationFeatures, VkPhysicalDeviceShaderTileImageFeaturesEXT, VkPhysicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT, VkPhysicalDeviceShaderUntypedPointersFeaturesKHR, VkPhysicalDeviceShadingRateImageFeaturesNV, VkPhysicalDeviceSubgroupSizeControlFeatures, VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT, VkPhysicalDeviceSubpassShadingFeaturesHUAWEI, VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR, VkPhysicalDeviceSynchronization2Features, VkPhysicalDeviceTensorFeaturesARM, VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT, VkPhysicalDeviceTextureCompressionASTCHDRFeatures, VkPhysicalDeviceTileMemoryHeapFeaturesQCOM, VkPhysicalDeviceTilePropertiesFeaturesQCOM, VkPhysicalDeviceTileShadingFeaturesQCOM, VkPhysicalDeviceTimelineSemaphoreFeatures, VkPhysicalDeviceTransformFeedbackFeaturesEXT, VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR, VkPhysicalDeviceUniformBufferStandardLayoutFeatures, VkPhysicalDeviceVariablePointersFeatures, VkPhysicalDeviceVertexAttributeDivisorFeatures, VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT, VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT, VkPhysicalDeviceVideoDecodeVP9FeaturesKHR, VkPhysicalDeviceVideoEncodeAV1FeaturesKHR, VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR, VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR, VkPhysicalDeviceVideoEncodeRgbConversionFeaturesVALVE, VkPhysicalDeviceVideoMaintenance1FeaturesKHR, VkPhysicalDeviceVideoMaintenance2FeaturesKHR, VkPhysicalDeviceVulkan11Features, VkPhysicalDeviceVulkan12Features, VkPhysicalDeviceVulkan13Features, VkPhysicalDeviceVulkan14Features, VkPhysicalDeviceVulkanMemoryModelFeatures, VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, VkPhysicalDeviceYcbcrDegammaFeaturesQCOM, VkPhysicalDeviceYcbcrImageArraysFeaturesEXT, VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT, or VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures", "page": "chapters/devsandqueues.html" }, { @@ -1421,6 +1426,11 @@ "text": "If the pNext chain includes a VkDataGraphProcessingEngineCreateInfoARM structure, each member of pProcessingEngines must be identical to VkQueueFamilyDataGraphPropertiesARM::engine retrieved from vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM with queueFamilyIndex and the physicalDevice that was used to create device", "page": "chapters/cmdbuffers.html" }, + { + "vuid": "VUID-VkCommandPoolCreateInfo-queueFamilyIndex-11830", + "text": "If queueFamilyIndex designates a queue family that supports VK_QUEUE_DATA_GRAPH_BIT_ARM and enumerates a foreign engine through vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM with type VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM or VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM, the pNext chain must include VkDataGraphProcessingEngineCreateInfoARM with VkPhysicalDeviceDataGraphProcessingEngineARM::isForeign set to VK_TRUE for all elements of pProcessingEngines", + "page": "chapters/cmdbuffers.html" + }, { "vuid": "VUID-VkCommandPoolCreateInfo-sType-sType", "text": "sType must be VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO", @@ -8485,7 +8495,7 @@ }, { "vuid": "VUID-VkImageMemoryBarrier2-image-01932", - "text": "If image is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If image is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/synchronization.html" }, { @@ -8839,7 +8849,7 @@ }, { "vuid": "VUID-VkImageMemoryBarrier-image-01932", - "text": "If image is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If image is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/synchronization.html" }, { @@ -9007,7 +9017,7 @@ }, { "vuid": "VUID-VkHostImageLayoutTransitionInfo-image-01932", - "text": "If image is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If image is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/synchronization.html" }, { @@ -18865,7 +18875,7 @@ "core": [ { "vuid": "VUID-VkPipelineBinaryInfoKHR-binaryCount-09603", - "text": "binaryCount and the order of the elements in pPipelineBinaries must exactly match that returned by vkCreatePipelineBinariesKHR for the matching Vk*PipelineCreateInfo structure and its pNext chain, ignoring the presence of the VkPipelineBinaryInfoKHR structure, the presence of the VK_PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR flag, and absence of any shader module identifiers or shader modules, for the same global pipeline key, from either:
\n\n
", + "text": "binaryCount and the order of the elements in pPipelineBinaries must exactly match that returned by vkCreatePipelineBinariesKHR for the matching Vk*PipelineCreateInfo structure and its pNext chain, ignoring the presence of the VkPipelineBinaryInfoKHR structure, the presence of the VK_PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR flag, and absence of any shader module identifiers, shader modules, or VkShaderModuleCreateInfo structures, for the same global pipeline key, from either:
\n\n
", "page": "chapters/pipelines.html" }, { @@ -20217,6 +20227,16 @@ "text": "Host access to dstCache must be externally synchronized if it was not created with VK_PIPELINE_CACHE_CREATE_INTERNALLY_SYNCHRONIZED_MERGE_BIT_KHR", "page": "chapters/pipelines.html" }, + { + "vuid": "VUID-vkMergePipelineCaches-dstCache-11832", + "text": "dstCache must not have been created with the headerVersion member of VkPipelineCacheCreateInfo::pInitialData equal to VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM", + "page": "chapters/pipelines.html" + }, + { + "vuid": "VUID-vkMergePipelineCaches-headerVersion-11833", + "text": "Each member of pSrcCaches must not have been created with the headerVersion member of VkPipelineCacheCreateInfo::pInitialData equal to VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM", + "page": "chapters/pipelines.html" + }, { "vuid": "VUID-vkMergePipelineCaches-device-parameter", "text": "device must be a valid VkDevice handle", @@ -20251,6 +20271,11 @@ }, "vkGetPipelineCacheData": { "core": [ + { + "vuid": "VUID-vkGetPipelineCacheData-pipelineCache-11834", + "text": "pipelineCache must not have been created with the headerVersion member of VkPipelineCacheCreateInfo::pInitialData equal to VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM", + "page": "chapters/pipelines.html" + }, { "vuid": "VUID-vkGetPipelineCacheData-device-parameter", "text": "device must be a valid VkDevice handle", @@ -20302,6 +20327,40 @@ } ] }, + "VkPipelineCacheHeaderVersionDataGraphQCOM": { + "core": [ + { + "vuid": "VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-None-11835", + "text": "The dataGraphModel feature must be enabled", + "page": "chapters/pipelines.html" + }, + { + "vuid": "VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-headerSize-11836", + "text": "headerSize must be 28", + "page": "chapters/pipelines.html" + }, + { + "vuid": "VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-headerVersion-11837", + "text": "headerVersion must be VK_PIPELINE_CACHE_HEADER_VERSION_DATA_GRAPH_QCOM", + "page": "chapters/pipelines.html" + }, + { + "vuid": "VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-headerSize-11838", + "text": "headerSize must not exceed the size of the pipeline cache", + "page": "chapters/pipelines.html" + }, + { + "vuid": "VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-headerVersion-parameter", + "text": "headerVersion must be a valid VkPipelineCacheHeaderVersion value", + "page": "chapters/pipelines.html" + }, + { + "vuid": "VUID-VkPipelineCacheHeaderVersionDataGraphQCOM-cacheType-parameter", + "text": "cacheType must be a valid VkDataGraphModelCacheTypeQCOM value", + "page": "chapters/pipelines.html" + } + ] + }, "vkDestroyPipelineCache": { "core": [ { @@ -33649,6 +33708,11 @@ "text": "set must be less than VkPipelineLayoutCreateInfo::setLayoutCount provided when layout was created", "page": "chapters/descriptorsets.html" }, + { + "vuid": "VUID-vkCmdPushDescriptorSetWithTemplate-set-11854", + "text": "set must reference a valid VkDescriptorSetLayout handle in layout", + "page": "chapters/descriptorsets.html" + }, { "vuid": "VUID-vkCmdPushDescriptorSetWithTemplate-set-07305", "text": "set must be the unique set number in the pipeline layout that uses a descriptor set layout that was created with VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT", @@ -33757,6 +33821,11 @@ "text": "set must be less than VkPipelineLayoutCreateInfo::setLayoutCount provided when layout was created", "page": "chapters/descriptorsets.html" }, + { + "vuid": "VUID-VkPushDescriptorSetWithTemplateInfo-set-11854", + "text": "set must reference a valid VkDescriptorSetLayout handle in layout", + "page": "chapters/descriptorsets.html" + }, { "vuid": "VUID-VkPushDescriptorSetWithTemplateInfo-set-07305", "text": "set must be the unique set number in the pipeline layout that uses a descriptor set layout that was created with VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT", @@ -38224,6 +38293,11 @@ "text": "queryCount must be greater than 0", "page": "chapters/queries.html" }, + { + "vuid": "VUID-VkQueryPoolCreateInfo-queryType-11839", + "text": "If queryType is VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR, then at least one of the queue families of the device must support result status queries, as indicated by VkQueueFamilyQueryResultStatusPropertiesKHR::queryResultStatusSupport", + "page": "chapters/queries.html" + }, { "vuid": "VUID-VkQueryPoolCreateInfo-pNext-10779", "text": "If the pNext chain includes a VkVideoProfileInfoKHR structure and its videoCodecOperation member is VK_VIDEO_CODEC_OPERATION_DECODE_VP9_BIT_KHR, then the videoDecodeVP9 feature must be enabled", @@ -41286,7 +41360,7 @@ }, { "vuid": "VUID-vkCmdCopyImage-srcImage-07966", - "text": "If srcImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If srcImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -41306,7 +41380,7 @@ }, { "vuid": "VUID-vkCmdCopyImage-dstImage-07966", - "text": "If dstImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If dstImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -41892,7 +41966,7 @@ }, { "vuid": "VUID-VkCopyImageInfo2-srcImage-07966", - "text": "If srcImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If srcImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -41912,7 +41986,7 @@ }, { "vuid": "VUID-VkCopyImageInfo2-dstImage-07966", - "text": "If dstImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If dstImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -42030,7 +42104,7 @@ "core": [ { "vuid": "VUID-vkCmdCopyBufferToImage-dstImage-07966", - "text": "If dstImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If dstImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -42354,7 +42428,7 @@ "core": [ { "vuid": "VUID-vkCmdCopyImageToBuffer-srcImage-07966", - "text": "If srcImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If srcImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -42414,7 +42488,7 @@ }, { "vuid": "VUID-vkCmdCopyImageToBuffer-commandBuffer-10216", - "text": "If the queue family used to create the VkCommandPool which commandBuffer was allocated from does not support VK_QUEUE_GRAPHICS_BIT, and the maintenance10 feature is not enabled, for each element of pRegions, the aspectMask member of imageSubresource must not be VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT", + "text": "If the queue family used to create the VkCommandPool which commandBuffer was allocated from does not support VK_QUEUE_GRAPHICS_BIT, and the maintenance10 feature is not enabled, for each element of pRegions, the aspectMask member of imageSubresource must not be VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT", "page": "chapters/copies.html" }, { @@ -42871,7 +42945,7 @@ }, { "vuid": "VUID-VkCopyBufferToImageInfo2-dstImage-07966", - "text": "If dstImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If dstImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -43105,7 +43179,7 @@ }, { "vuid": "VUID-vkCmdCopyImageToBuffer2-commandBuffer-10216", - "text": "If the queue family used to create the VkCommandPool which commandBuffer was allocated from does not support VK_QUEUE_GRAPHICS_BIT, and the maintenance10 feature is not enabled, for each element of pCopyImageToBufferInfo->pRegions, the aspectMask member of imageSubresource must not be VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT", + "text": "If the queue family used to create the VkCommandPool which commandBuffer was allocated from does not support VK_QUEUE_GRAPHICS_BIT, and the maintenance10 feature is not enabled, for each element of pCopyImageToBufferInfo->pRegions, the aspectMask member of imageSubresource must not be VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT", "page": "chapters/copies.html" }, { @@ -43234,7 +43308,7 @@ }, { "vuid": "VUID-VkCopyImageToBufferInfo2-srcImage-07966", - "text": "If srcImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If srcImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -43555,7 +43629,7 @@ }, { "vuid": "VUID-VkCopyMemoryToImageInfo-dstImage-07966", - "text": "If dstImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If dstImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -43867,7 +43941,7 @@ }, { "vuid": "VUID-VkCopyImageToMemoryInfo-srcImage-07966", - "text": "If srcImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If srcImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -44184,7 +44258,7 @@ }, { "vuid": "VUID-VkCopyImageToImageInfo-srcImage-07966", - "text": "If srcImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If srcImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -44344,7 +44418,7 @@ }, { "vuid": "VUID-VkCopyImageToImageInfo-dstImage-07966", - "text": "If dstImage is non-sparse then the image or the specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", + "text": "If dstImage is non-sparse then the image or each specified disjoint plane must be bound completely and contiguously to a single VkDeviceMemory object", "page": "chapters/copies.html" }, { @@ -91458,32 +91532,32 @@ { "vuid": "VUID-vkCreatePrivateDataSlot-privateData-04564", "text": "The privateData feature must be enabled", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkCreatePrivateDataSlot-device-parameter", "text": "device must be a valid VkDevice handle", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkCreatePrivateDataSlot-pCreateInfo-parameter", "text": "pCreateInfo must be a valid pointer to a valid VkPrivateDataSlotCreateInfo structure", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkCreatePrivateDataSlot-pAllocator-parameter", "text": "If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkCreatePrivateDataSlot-pPrivateDataSlot-parameter", "text": "pPrivateDataSlot must be a valid pointer to a VkPrivateDataSlot handle", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkCreatePrivateDataSlot-device-queuecount", "text": "The device must have been created with at least 1 queue", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" } ] }, @@ -91492,17 +91566,17 @@ { "vuid": "VUID-VkPrivateDataSlotCreateInfo-sType-sType", "text": "sType must be VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-VkPrivateDataSlotCreateInfo-pNext-pNext", "text": "pNext must be NULL", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-VkPrivateDataSlotCreateInfo-flags-zerobitmask", "text": "flags must be 0", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" } ] }, @@ -91511,32 +91585,32 @@ { "vuid": "VUID-vkDestroyPrivateDataSlot-privateDataSlot-04062", "text": "If VkAllocationCallbacks were provided when privateDataSlot was created, a compatible set of callbacks must be provided here", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkDestroyPrivateDataSlot-privateDataSlot-04063", "text": "If no VkAllocationCallbacks were provided when privateDataSlot was created, pAllocator must be NULL", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkDestroyPrivateDataSlot-device-parameter", "text": "device must be a valid VkDevice handle", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkDestroyPrivateDataSlot-privateDataSlot-parameter", "text": "If privateDataSlot is not VK_NULL_HANDLE, privateDataSlot must be a valid VkPrivateDataSlot handle", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkDestroyPrivateDataSlot-pAllocator-parameter", "text": "If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkDestroyPrivateDataSlot-privateDataSlot-parent", "text": "If privateDataSlot is a valid handle, it must have been created, allocated, or retrieved from device", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" } ] }, @@ -91545,32 +91619,32 @@ { "vuid": "VUID-vkSetPrivateData-objectHandle-04016", "text": "objectHandle must be device or a child of device", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkSetPrivateData-objectHandle-04017", "text": "objectHandle must be a valid handle to an object of type objectType", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkSetPrivateData-device-parameter", "text": "device must be a valid VkDevice handle", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkSetPrivateData-objectType-parameter", "text": "objectType must be a valid VkObjectType value", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkSetPrivateData-privateDataSlot-parameter", "text": "privateDataSlot must be a valid VkPrivateDataSlot handle", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkSetPrivateData-privateDataSlot-parent", "text": "privateDataSlot must have been created, allocated, or retrieved from device", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" } ] }, @@ -91579,37 +91653,37 @@ { "vuid": "VUID-vkGetPrivateData-objectType-04018", "text": "objectHandle must be device or a child of device", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkGetPrivateData-objectHandle-09498", "text": "objectHandle must be a valid handle to an object of type objectType", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkGetPrivateData-device-parameter", "text": "device must be a valid VkDevice handle", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkGetPrivateData-objectType-parameter", "text": "objectType must be a valid VkObjectType value", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkGetPrivateData-privateDataSlot-parameter", "text": "privateDataSlot must be a valid VkPrivateDataSlot handle", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkGetPrivateData-pData-parameter", "text": "pData must be a valid pointer to a uint64_t value", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" }, { "vuid": "VUID-vkGetPrivateData-privateDataSlot-parent", "text": "privateDataSlot must have been created, allocated, or retrieved from device", - "page": "chapters/VK_EXT_private_data.html" + "page": "chapters/private_data.html" } ] }, @@ -91940,6 +92014,51 @@ "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_TRIANGLES_KHR, if there is an instance of VkAccelerationStructureTrianglesOpacityMicromapEXT in the geometry.triangles.pNext chain, and its indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexBuffer.deviceAddress must be a valid VkDeviceAddress", "page": "chapters/accelstructures.html" }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11845", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_TRIANGLES_KHR, if there is an instance of VkAccelerationStructureGeometryMotionTrianglesDataNV in the geometry.triangles.pNext chain, then its vertexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11846", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, if VkAccelerationStructureGeometrySpheresDataNV::indexType is VK_INDEX_TYPE_NONE_KHR, then its indexData.deviceAddress must be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11847", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, if VkAccelerationStructureGeometrySpheresDataNV::indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11848", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, VkAccelerationStructureGeometrySpheresDataNV::vertexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11849", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, VkAccelerationStructureGeometrySpheresDataNV::radiusData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11850", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, if VkAccelerationStructureGeometryLinearSweptSpheresDataNV::indexType is VK_INDEX_TYPE_NONE_KHR, then its indexData.deviceAddress must be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11851", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, if VkAccelerationStructureGeometryLinearSweptSpheresDataNV::indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11852", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, VkAccelerationStructureGeometryLinearSweptSpheresDataNV::vertexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-11853", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, VkAccelerationStructureGeometryLinearSweptSpheresDataNV::radiusData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, { "vuid": "VUID-vkCmdBuildAccelerationStructuresKHR-pInfos-10126", "text": "For each pInfos[i], dstAccelerationStructure must have been created with a value of VkAccelerationStructureCreateInfoKHR::size greater than or equal to either:
\n
    \n
  • \n

    the memory size required by the build operation, as returned by\nvkGetAccelerationStructureBuildSizesKHR with\npBuildInfo = pInfos[i] and with each element of the\npMaxPrimitiveCounts array greater than or equal to the equivalent\nppBuildRangeInfos[i][j].primitiveCount values for j in\n[0,pInfos[i].geometryCount) or,

    \n
  • \n
  • \n

    the result of querying the corresponding\nVK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR, if\nupdating a compacted acceleration structure

    \n
  • \n
\n
", @@ -92329,6 +92448,51 @@ "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_TRIANGLES_KHR, if there is an instance of VkAccelerationStructureTrianglesOpacityMicromapEXT in the geometry.triangles.pNext chain, and its indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexBuffer.deviceAddress must be a valid VkDeviceAddress", "page": "chapters/accelstructures.html" }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11845", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_TRIANGLES_KHR, if there is an instance of VkAccelerationStructureGeometryMotionTrianglesDataNV in the geometry.triangles.pNext chain, then its vertexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11846", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, if VkAccelerationStructureGeometrySpheresDataNV::indexType is VK_INDEX_TYPE_NONE_KHR, then its indexData.deviceAddress must be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11847", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, if VkAccelerationStructureGeometrySpheresDataNV::indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11848", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, VkAccelerationStructureGeometrySpheresDataNV::vertexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11849", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, VkAccelerationStructureGeometrySpheresDataNV::radiusData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11850", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, if VkAccelerationStructureGeometryLinearSweptSpheresDataNV::indexType is VK_INDEX_TYPE_NONE_KHR, then its indexData.deviceAddress must be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11851", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, if VkAccelerationStructureGeometryLinearSweptSpheresDataNV::indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11852", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, VkAccelerationStructureGeometryLinearSweptSpheresDataNV::vertexData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pInfos-11853", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, VkAccelerationStructureGeometryLinearSweptSpheresDataNV::radiusData.deviceAddress must be a valid VkDeviceAddress", + "page": "chapters/accelstructures.html" + }, { "vuid": "VUID-vkCmdBuildAccelerationStructuresIndirectKHR-pIndirectDeviceAddresses-03646", "text": "For any element of pIndirectDeviceAddresses[i], all device addresses between pIndirectDeviceAddresses[i] and pIndirectDeviceAddresses[i] + (pInfos[i].geometryCount × pIndirectStrides[i]) - 1 must be in the buffer device address range of the same buffer", @@ -93091,11 +93255,6 @@ "text": "The linearSweptSpheres feature must be enabled", "page": "chapters/accelstructures.html" }, - { - "vuid": "VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-vertexData-10420", - "text": "The memory address in vertexData must not be 0 or `NULL'", - "page": "chapters/accelstructures.html" - }, { "vuid": "VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-vertexStride-10421", "text": "vertexStride must be a multiple of:
\n\n
", @@ -93116,11 +93275,6 @@ "text": "The format features of radiusFormat must contain VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_RADIUS_BUFFER_BIT_NV", "page": "chapters/accelstructures.html" }, - { - "vuid": "VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-radiusData-10425", - "text": "The memory address in radiusData must not be 0 or `NULL'", - "page": "chapters/accelstructures.html" - }, { "vuid": "VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-radiusData-10426", "text": "All values referenced in radiusData must be greater than or equal to 0", @@ -93133,7 +93287,7 @@ }, { "vuid": "VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-indexData-10428", - "text": "If indexData is not NULL, indexType must be one of VK_INDEX_TYPE_UINT16 or VK_INDEX_TYPE_UINT32", + "text": "indexType must be VK_INDEX_TYPE_UINT16, VK_INDEX_TYPE_UINT32, or VK_INDEX_TYPE_NONE_KHR", "page": "chapters/accelstructures.html" }, { @@ -93190,11 +93344,6 @@ "text": "The spheres feature must be enabled", "page": "chapters/accelstructures.html" }, - { - "vuid": "VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexData-10430", - "text": "The memory address in vertexData must not be 0 or `NULL'", - "page": "chapters/accelstructures.html" - }, { "vuid": "VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexStride-10431", "text": "vertexStride must be a multiple of:
\n\n
", @@ -93205,11 +93354,6 @@ "text": "vertexStride and radiusStride must be less than or equal to 232-1", "page": "chapters/accelstructures.html" }, - { - "vuid": "VUID-VkAccelerationStructureGeometrySpheresDataNV-radiusData-10433", - "text": "The memory address in radiusData must not be 0 or `NULL'", - "page": "chapters/accelstructures.html" - }, { "vuid": "VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexFormat-10434", "text": "The format features of vertexFormat must contain VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR", @@ -93227,7 +93371,7 @@ }, { "vuid": "VUID-VkAccelerationStructureGeometrySpheresDataNV-indexData-10437", - "text": "If indexData is not NULL, indexType must be one of VK_INDEX_TYPE_UINT16 or VK_INDEX_TYPE_UINT32", + "text": "indexType must be VK_INDEX_TYPE_UINT16, VK_INDEX_TYPE_UINT32, VK_INDEX_TYPE_NONE_KHR", "page": "chapters/accelstructures.html" }, { @@ -95224,11 +95368,61 @@ "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_INSTANCES_KHR with VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV set, each accelerationStructureReference in any structure in VkAccelerationStructureMotionInstanceNV value in geometry.instances.data.hostAddress must be a valid VkAccelerationStructureKHR object", "page": "chapters/accelstructures.html" }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11820", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_TRIANGLES_KHR, if there is an instance of VkAccelerationStructureGeometryMotionTrianglesDataNV in the geometry.triangles.pNext chain, then its vertexData.hostAddress must not be 0", + "page": "chapters/accelstructures.html" + }, { "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-10892", "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_TRIANGLES_KHR, if there is an instance of VkAccelerationStructureTrianglesOpacityMicromapEXT in the geometry.triangles.pNext chain, and its indexType is VK_INDEX_TYPE_NONE_KHR, then its indexBuffer.hostAddress must be 0", "page": "chapters/accelstructures.html" }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11821", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_TRIANGLES_KHR, if there is an instance of VkAccelerationStructureTrianglesOpacityMicromapEXT in the geometry.triangles.pNext chain, and its indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexBuffer.hostAddress must not be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11822", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, VkAccelerationStructureGeometrySpheresDataNV::indexType is VK_INDEX_TYPE_NONE_KHR, then its indexData.hostAddress must be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11823", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, VkAccelerationStructureGeometrySpheresDataNV::indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexData.hostAddress must not be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11824", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, VkAccelerationStructureGeometrySpheresDataNV::vertexData.hostAddress must not be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11825", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_SPHERES_NV, VkAccelerationStructureGeometrySpheresDataNV::radiusData.hostAddress must not be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11826", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, VkAccelerationStructureGeometryLinearSweptSpheresDataNV::indexType is VK_INDEX_TYPE_NONE_KHR, then its indexData.hostAddress must be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11827", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, VkAccelerationStructureGeometryLinearSweptSpheresDataNV::indexType is not VK_INDEX_TYPE_NONE_KHR, then its indexData.hostAddress must not be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11828", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, VkAccelerationStructureGeometryLinearSweptSpheresDataNV::vertexData.hostAddress must not be 0", + "page": "chapters/accelstructures.html" + }, + { + "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-11829", + "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries with a geometryType of VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV, VkAccelerationStructureGeometryLinearSweptSpheresDataNV::radiusData.hostAddress must not be 0", + "page": "chapters/accelstructures.html" + }, { "vuid": "VUID-vkBuildAccelerationStructuresKHR-pInfos-10893", "text": "For any element of pInfos[i].pGeometries or pInfos[i].ppGeometries, geometryType must not be VK_GEOMETRY_TYPE_DENSE_GEOMETRY_FORMAT_TRIANGLES_AMDX", @@ -98952,42 +99146,42 @@ { "vuid": "VUID-vkCmdDecompressMemoryEXT-memoryDecompression-11761", "text": "The memoryDecompression feature must be enabled", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryEXT-commandBuffer-parameter", "text": "commandBuffer must be a valid VkCommandBuffer handle", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryEXT-pDecompressMemoryInfoEXT-parameter", "text": "pDecompressMemoryInfoEXT must be a valid pointer to a valid VkDecompressMemoryInfoEXT structure", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryEXT-commandBuffer-recording", "text": "commandBuffer must be in the recording state", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryEXT-commandBuffer-cmdpool", "text": "The VkCommandPool that commandBuffer was allocated from must support VK_QUEUE_COMPUTE_BIT, or VK_QUEUE_GRAPHICS_BIT operations", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryEXT-renderpass", "text": "This command must only be called outside of a render pass instance", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryEXT-suspended", "text": "This command must not be called between suspended render pass instances", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryEXT-videocoding", "text": "This command must only be called outside of a video coding scope", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" } ] }, @@ -98996,47 +99190,47 @@ { "vuid": "VUID-VkDecompressMemoryInfoEXT-decompressionMethod-07690", "text": "The decompressionMethod must have a single bit set", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryInfoEXT-decompressionMethod-11762", "text": "If decompressionMethod is VK_MEMORY_DECOMPRESSION_METHOD_GDEFLATE_1_0_BIT_EXT, then for each element of pRegions, decompressedSize must be less than or equal to 65536 bytes", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryInfoEXT-decompressionMethod-11763", "text": "decompressionMethod must be a valid bit specified in VkPhysicalDeviceMemoryDecompressionPropertiesEXT::decompressionMethods", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryInfoEXT-sType-sType", "text": "sType must be VK_STRUCTURE_TYPE_DECOMPRESS_MEMORY_INFO_EXT", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryInfoEXT-pNext-pNext", "text": "pNext must be NULL", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryInfoEXT-decompressionMethod-parameter", "text": "decompressionMethod must be a valid combination of VkMemoryDecompressionMethodFlagBitsEXT values", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryInfoEXT-decompressionMethod-requiredbitmask", "text": "decompressionMethod must not be 0", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryInfoEXT-pRegions-parameter", "text": "pRegions must be a valid pointer to an array of regionCount VkDecompressMemoryRegionEXT structures", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryInfoEXT-regionCount-arraylength", "text": "regionCount must be greater than 0", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" } ] }, @@ -99045,107 +99239,111 @@ { "vuid": "VUID-VkDecompressMemoryRegionEXT-srcAddress-07685", "text": "srcAddress must be 4 byte aligned", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-srcAddress-07686", "text": "The memory range defined by srcAddress and compressedSize must be contained within the size of the buffer bound to srcAddress, minus the offset of srcAddress from the base address of that buffer", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-dstAddress-07687", "text": "dstAddress must be 4 byte aligned", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-dstAddress-07688", "text": "The memory range defined by dstAddress and decompressedSize must be contained within the size of the buffer bound to dstAddress, minus the offset of dstAddress from the base address of that buffer", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-decompressedSize-07689", "text": "decompressedSize must be large enough to hold the decompressed data based on the decompressionMethod", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-compressedSize-11795", "text": "compressedSize must not be zero", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-decompressedSize-11796", "text": "decompressedSize must not be zero", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-srcAddress-07691", "text": "The memory range defined by srcAddress and compressedSize must not overlap the memory range defined by dstAddress and decompressedSize", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-srcAddress-11764", "text": "The underlying buffer for srcAddress must have the VK_BUFFER_USAGE_2_MEMORY_DECOMPRESSION_BIT_EXT bit set in its usage flag", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-dstAddress-11765", "text": "The underlying buffer for dstAddress must have the VK_BUFFER_USAGE_2_MEMORY_DECOMPRESSION_BIT_EXT bit set in its usage flag", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-srcAddress-parameter", "text": "srcAddress must be a valid VkDeviceAddress value", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionEXT-dstAddress-parameter", "text": "dstAddress must be a valid VkDeviceAddress value", - "page": "chapters/VK_NV_memory_decompression.html" - }, + "page": "chapters/memory_decompression.html" + } + ] + }, + "vkCmdDecompressMemoryNV": { + "core": [ { "vuid": "VUID-vkCmdDecompressMemoryNV-None-07684", "text": "The memoryDecompression feature must be enabled", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-commandBuffer-parameter", "text": "commandBuffer must be a valid VkCommandBuffer handle", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-pDecompressMemoryRegions-parameter", "text": "pDecompressMemoryRegions must be a valid pointer to an array of decompressRegionCount valid VkDecompressMemoryRegionNV structures", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-commandBuffer-recording", "text": "commandBuffer must be in the recording state", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-commandBuffer-cmdpool", "text": "The VkCommandPool that commandBuffer was allocated from must support VK_QUEUE_COMPUTE_BIT, or VK_QUEUE_GRAPHICS_BIT operations", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-renderpass", "text": "This command must only be called outside of a render pass instance", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-suspended", "text": "This command must not be called between suspended render pass instances", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-videocoding", "text": "This command must only be called outside of a video coding scope", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-decompressRegionCount-arraylength", "text": "decompressRegionCount must be greater than 0", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" } ] }, @@ -99154,57 +99352,57 @@ { "vuid": "VUID-VkDecompressMemoryRegionNV-decompressionMethod-07690", "text": "The decompressionMethod must have a single bit set", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-srcAddress-07685", "text": "srcAddress must be 4 byte aligned", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-srcAddress-07686", "text": "The memory range defined by srcAddress and compressedSize must be contained within the size of the buffer bound to srcAddress, minus the offset of srcAddress from the base address of that buffer", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-dstAddress-07687", "text": "dstAddress must be 4 byte aligned", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-dstAddress-07688", "text": "The memory range defined by dstAddress and decompressedSize must be contained within the size of the buffer bound to dstAddress, minus the offset of dstAddress from the base address of that buffer", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-decompressedSize-07689", "text": "decompressedSize must be large enough to hold the decompressed data based on the decompressionMethod", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-compressedSize-11795", "text": "compressedSize must not be zero", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-decompressedSize-11796", "text": "decompressedSize must not be zero", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-srcAddress-07691", "text": "The memory range defined by srcAddress and compressedSize must not overlap the memory range defined by dstAddress and decompressedSize", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-VkDecompressMemoryRegionNV-decompressionMethod-09395", "text": "If decompressionMethod is VK_MEMORY_DECOMPRESSION_METHOD_GDEFLATE_1_0_BIT_EXT, then decompressedSize must be less than or equal to 65536 bytes", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryNV-memoryDecompression-11766", "text": "The memoryDecompression feature must be enabled", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" } ] }, @@ -99213,112 +99411,112 @@ { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-None-07692", "text": "The memoryDecompression feature must be enabled", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-indirectCommandsAddress-07694", "text": "The VkBuffer that indirectCommandsAddress comes from must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-indirectCommandsAddress-07695", "text": "indirectCommandsAddress must be a multiple of 4", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-indirectCommandsCountAddress-07697", "text": "The VkBuffer that indirectCommandsCountAddress comes from must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-indirectCommandsCountAddress-07698", "text": "indirectCommandsCountAddress must be a multiple of 4", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-indirectCommandsCountAddress-07699", "text": "The count stored in indirectCommandsCountAddress must be less than or equal to VkPhysicalDeviceMemoryDecompressionPropertiesEXT::maxDecompressionIndirectCount", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-indirectCommandsAddress-11794", "text": "All device addresses between indirectCommandsAddress and indirectCommandsAddress + (stride × (count stored in indirectCommandsCountAddress)) - 1 must be in the buffer device address range of the same buffer", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-decompressionMethod-07690", "text": "The decompressionMethod must have a single bit set", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-stride-11767", "text": "stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDecompressMemoryRegionEXT)", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-maxDecompressionCount-11768", "text": "maxDecompressionCount must be less than or equal to VkPhysicalDeviceMemoryDecompressionPropertiesEXT::maxDecompressionIndirectCount", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-decompressionMethod-11769", "text": "If decompressionMethod is VK_MEMORY_DECOMPRESSION_METHOD_GDEFLATE_1_0_BIT_EXT, then all values in VkDecompressMemoryRegionEXT::decompressedSize must be less than or equal to 65536 bytes", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-decompressionMethod-11810", "text": "decompressionMethod must be a valid bit specified in VkPhysicalDeviceMemoryDecompressionPropertiesEXT::decompressionMethods", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-commandBuffer-parameter", "text": "commandBuffer must be a valid VkCommandBuffer handle", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-decompressionMethod-parameter", "text": "decompressionMethod must be a valid combination of VkMemoryDecompressionMethodFlagBitsEXT values", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-decompressionMethod-requiredbitmask", "text": "decompressionMethod must not be 0", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-indirectCommandsAddress-parameter", "text": "indirectCommandsAddress must be a valid VkDeviceAddress value", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-indirectCommandsCountAddress-parameter", "text": "indirectCommandsCountAddress must be a valid VkDeviceAddress value", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-commandBuffer-recording", "text": "commandBuffer must be in the recording state", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-commandBuffer-cmdpool", "text": "The VkCommandPool that commandBuffer was allocated from must support VK_QUEUE_COMPUTE_BIT, or VK_QUEUE_GRAPHICS_BIT operations", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-renderpass", "text": "This command must only be called outside of a render pass instance", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-suspended", "text": "This command must not be called between suspended render pass instances", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountEXT-videocoding", "text": "This command must only be called outside of a video coding scope", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" } ] }, @@ -99327,42 +99525,42 @@ { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountNV-None-07692", "text": "The memoryDecompression feature must be enabled", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountNV-indirectCommandsAddress-07694", "text": "The VkBuffer that indirectCommandsAddress comes from must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountNV-indirectCommandsAddress-07695", "text": "indirectCommandsAddress must be a multiple of 4", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountNV-indirectCommandsCountAddress-07697", "text": "The VkBuffer that indirectCommandsCountAddress comes from must have been created with the VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT bit set", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountNV-indirectCommandsCountAddress-07698", "text": "indirectCommandsCountAddress must be a multiple of 4", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountNV-indirectCommandsCountAddress-07699", "text": "The count stored in indirectCommandsCountAddress must be less than or equal to VkPhysicalDeviceMemoryDecompressionPropertiesEXT::maxDecompressionIndirectCount", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountNV-indirectCommandsAddress-11794", "text": "All device addresses between indirectCommandsAddress and indirectCommandsAddress + (stride × (count stored in indirectCommandsCountAddress)) - 1 must be in the buffer device address range of the same buffer", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" }, { "vuid": "VUID-vkCmdDecompressMemoryIndirectCountNV-stride-11770", "text": "stride must be a multiple of 4 and must be greater than or equal to sizeof(VkDecompressMemoryRegionNV)", - "page": "chapters/VK_NV_memory_decompression.html" + "page": "chapters/memory_decompression.html" } ] }, @@ -106594,7 +106792,7 @@ "core": [ { "vuid": "VUID-VkDataGraphPipelineCreateInfoARM-pNext-09763", - "text": "One and only one of the following structures must be included in the pNext chain:", + "text": "One and only one of the following structures must be included in the pNext chain:", "page": "chapters/VK_ARM_data_graph/graphs.html" }, { @@ -106623,13 +106821,13 @@ "page": "chapters/VK_ARM_data_graph/graphs.html" }, { - "vuid": "VUID-VkDataGraphPipelineCreateInfoARM-pNext-09875", - "text": "If a VkDataGraphPipelineIdentifierCreateInfoARM structure is included in the pNext chain, then flags must contain VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT", + "vuid": "VUID-VkDataGraphPipelineCreateInfoARM-None-11840", + "text": "If a VkDataGraphPipelineIdentifierCreateInfoARM or VkDataGraphPipelineBuiltinModelCreateInfoQCOM structure is included in the pNext chain, then flags must contain VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT", "page": "chapters/VK_ARM_data_graph/graphs.html" }, { - "vuid": "VUID-VkDataGraphPipelineCreateInfoARM-pNext-09882", - "text": "If a VkDataGraphPipelineIdentifierCreateInfoARM structure is included in the pNext chain, then resourceInfoCount must be 0 and pResourceInfos must be NULL", + "vuid": "VUID-VkDataGraphPipelineCreateInfoARM-None-11841", + "text": "If a VkDataGraphPipelineIdentifierCreateInfoARM or VkDataGraphPipelineBuiltinModelCreateInfoQCOM structure is included in the pNext chain, then resourceInfoCount must be 0 and pResourceInfos must be NULL", "page": "chapters/VK_ARM_data_graph/graphs.html" }, { @@ -106684,7 +106882,7 @@ }, { "vuid": "VUID-VkDataGraphPipelineCreateInfoARM-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 VkDataGraphPipelineCompilerControlCreateInfoARM, VkDataGraphPipelineIdentifierCreateInfoARM, VkDataGraphPipelineShaderModuleCreateInfoARM, VkDataGraphProcessingEngineCreateInfoARM, VkPipelineCreationFeedbackCreateInfo, or VkShaderModuleCreateInfo", + "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 VkDataGraphPipelineBuiltinModelCreateInfoQCOM, VkDataGraphPipelineCompilerControlCreateInfoARM, VkDataGraphPipelineIdentifierCreateInfoARM, VkDataGraphPipelineShaderModuleCreateInfoARM, VkDataGraphProcessingEngineCreateInfoARM, VkPipelineCreationFeedbackCreateInfo, or VkShaderModuleCreateInfo", "page": "chapters/VK_ARM_data_graph/graphs.html" }, { @@ -106787,6 +106985,25 @@ } ] }, + "VkDataGraphPipelineBuiltinModelCreateInfoQCOM": { + "core": [ + { + "vuid": "VUID-VkDataGraphPipelineBuiltinModelCreateInfoQCOM-pOperation-11842", + "text": "All members of pOperation must be identical to a VkQueueFamilyDataGraphPropertiesARM::operation retrieved from vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM with the physicalDevice that was used to create device and paired in the retrieved results with a VkQueueFamilyDataGraphPropertiesARM::engine identical to an element of VkDataGraphProcessingEngineCreateInfoARM::pProcessingEngines provided in the pNext chain", + "page": "chapters/VK_ARM_data_graph/graphs.html" + }, + { + "vuid": "VUID-VkDataGraphPipelineBuiltinModelCreateInfoQCOM-sType-sType", + "text": "sType must be VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_BUILTIN_MODEL_CREATE_INFO_QCOM", + "page": "chapters/VK_ARM_data_graph/graphs.html" + }, + { + "vuid": "VUID-VkDataGraphPipelineBuiltinModelCreateInfoQCOM-pOperation-parameter", + "text": "pOperation must be a valid pointer to a valid VkPhysicalDeviceDataGraphOperationSupportARM structure", + "page": "chapters/VK_ARM_data_graph/graphs.html" + } + ] + }, "VkDataGraphPipelineCompilerControlCreateInfoARM": { "core": [ { @@ -107570,6 +107787,16 @@ "text": "pProcessingEngines must not contain identical VkPhysicalDeviceDataGraphProcessingEngineARM structures", "page": "chapters/VK_ARM_data_graph/graphs.html" }, + { + "vuid": "VUID-VkDataGraphProcessingEngineCreateInfoARM-pProcessingEngines-11843", + "text": "If any element of pProcessingEngines has a type of VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM or VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM and isForeign set to VK_TRUE, processingEngineCount must equal 1", + "page": "chapters/VK_ARM_data_graph/graphs.html" + }, + { + "vuid": "VUID-VkDataGraphProcessingEngineCreateInfoARM-pProcessingEngines-11844", + "text": "If any element of pProcessingEngines has a type of VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM or VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM, the dataGraphModel feature must be enabled", + "page": "chapters/VK_ARM_data_graph/graphs.html" + }, { "vuid": "VUID-VkDataGraphProcessingEngineCreateInfoARM-sType-sType", "text": "sType must be VK_STRUCTURE_TYPE_DATA_GRAPH_PROCESSING_ENGINE_CREATE_INFO_ARM", @@ -109889,6 +110116,15 @@ } ] }, + "VkPhysicalDeviceDataGraphModelFeaturesQCOM": { + "core": [ + { + "vuid": "VUID-VkPhysicalDeviceDataGraphModelFeaturesQCOM-sType-sType", + "text": "sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_MODEL_FEATURES_QCOM", + "page": "chapters/features.html" + } + ] + }, "VkPhysicalDeviceShaderFloat8FeaturesEXT": { "core": [ { @@ -114479,6 +114715,11 @@ "text": "The value of the “Hit Kind” operand of OpReportIntersectionKHR must be in the range [0,127]", "page": "appendices/spirvenv.html" }, + { + "vuid": "VUID-RuntimeSpirv-OpTraceRayKHR-11855", + "text": "For modules which contain OpTraceRayKHR or OpTraceRayMotionNV instructions that declare a variable in the RayPayloadKHR Storage Class, all shaders which may be invoked as part of that shader call must declare an identical variable in the IncomingRayPayloadKHR Storage Class", + "page": "appendices/spirvenv.html" + }, { "vuid": "VUID-RuntimeSpirv-OpTraceRayKHR-06360", "text": "For OpTraceRayKHR instructions, if Acceleration Structure was built with VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV in flags, the pipeline must have been created with VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV set", @@ -114646,7 +114887,7 @@ }, { "vuid": "VUID-RuntimeSpirv-Size-11165", - "text": "The Size operand of OpCopyMemorySized must be a multiple of 4
\n
    \n
  • \n

    If 16-bit storage is enabled for the storage classes of both the\nTarget and Source operands the Size operand may instead be\na multiple of 2

    \n
  • \n
  • \n

    If 8-bit storage is enabled for the storage classes of both the\nTarget and Source operands the Size operand may instead be\nany value

    \n
  • \n
\n
", + "text": "The Size operand of OpCopyMemorySized must be a multiple of 4
\n
    \n
  • \n

    If 16-bit storage is enabled for the storage classes of both the\nTarget and Source operands the Size operand may instead\nbe a multiple of 2

    \n
  • \n
  • \n

    If 8-bit storage is enabled for the storage classes of both the\nTarget and Source operands the Size operand may instead\nbe any value

    \n
  • \n
\n
", "page": "appendices/spirvenv.html" }, { diff --git a/registry/vk.xml b/registry/vk.xml index ccfb0c5..13289ce 100644 --- a/registry/vk.xml +++ b/registry/vk.xml @@ -183,7 +183,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 331 +#define VK_HEADER_VERSION 332 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION) // Version of this file @@ -897,6 +897,7 @@ typedef void* MTLSharedEvent_id; + @@ -1813,6 +1814,14 @@ typedef void* MTLSharedEvent_id; uint32_t pipelineIndexStride uint64_t pipelineIndexOffset + + The fields in this structure are non-normative since structure packing is implementation-defined in C. The specification defines the normative layout. + uint32_t headerSize + VkPipelineCacheHeaderVersion headerVersion + VkDataGraphModelCacheTypeQCOM cacheType + uint32_t cacheVersion + uint32_t toolchainVersion[VK_DATA_GRAPH_MODEL_TOOLCHAIN_VERSION_LENGTH_QCOM] + VkShaderStageFlags stageFlagsWhich stages use the range uint32_t offsetStart of the range, in bytes @@ -10545,7 +10554,7 @@ typedef void* MTLSharedEvent_id; void* pNext uint32_t maxFragmentDensityMapLayers - + VkStructureType sType void* pNext VkBool32 fragmentDensityMapLayered @@ -10927,6 +10936,16 @@ typedef void* MTLSharedEvent_id; void* pNext VkBool32 pipelineCacheIncrementalMode + + VkStructureType sType + const void* pNext + const VkPhysicalDeviceDataGraphOperationSupportARM* pOperation + + + VkStructureType sType + const void* pNext + VkBool32 dataGraphModel + VkStructureType sType void* pNext @@ -11089,6 +11108,7 @@ typedef void* MTLSharedEvent_id; + @@ -13332,6 +13352,9 @@ typedef void* MTLSharedEvent_id; + + + @@ -17790,7 +17813,7 @@ typedef void* MTLSharedEvent_id; void vkCmdCopyTensorARM VkCommandBuffer commandBuffer - const VkCopyTensorInfoARM* pCopyTensorInfo + const VkCopyTensorInfoARM* pCopyTensorInfo VkResult vkGetTensorOpaqueCaptureDescriptorDataARM @@ -24465,7 +24488,7 @@ typedef void* MTLSharedEvent_id; - + @@ -25567,7 +25590,7 @@ typedef void* MTLSharedEvent_id; - + @@ -26041,7 +26064,7 @@ typedef void* MTLSharedEvent_id; - + @@ -26406,7 +26429,7 @@ typedef void* MTLSharedEvent_id; - + @@ -27012,7 +27035,7 @@ typedef void* MTLSharedEvent_id; - + @@ -27386,7 +27409,7 @@ typedef void* MTLSharedEvent_id; - + @@ -27413,7 +27436,7 @@ typedef void* MTLSharedEvent_id; - + @@ -27667,7 +27690,7 @@ typedef void* MTLSharedEvent_id; - + @@ -27825,7 +27848,7 @@ typedef void* MTLSharedEvent_id; - + @@ -27891,7 +27914,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28274,7 +28297,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28308,7 +28331,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28317,7 +28340,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28358,7 +28381,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28367,7 +28390,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28388,7 +28411,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28401,7 +28424,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28624,7 +28647,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28925,7 +28948,7 @@ typedef void* MTLSharedEvent_id; - + @@ -28981,7 +29004,7 @@ typedef void* MTLSharedEvent_id; - + @@ -29113,10 +29136,23 @@ typedef void* MTLSharedEvent_id; - + - - + + + + + + + + + + + + + + + @@ -29200,7 +29236,7 @@ typedef void* MTLSharedEvent_id; - + @@ -29234,7 +29270,7 @@ typedef void* MTLSharedEvent_id; - +