From e27e41a842d4b63dec949afb36fb4fc8f5210c53 Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Fri, 20 Mar 2026 08:14:37 +0100 Subject: [PATCH] vulkan,spirv: update headers Signed-off-by: Samuel Pitoiset Part-of: --- include/vulkan/vulkan_core.h | 219 ++++++++++++++++----- src/compiler/spirv/spirv.core.grammar.json | 92 +++++++++ src/compiler/spirv/spirv.h | 25 +++ src/vulkan/registry/vk.xml | 188 ++++++++++++++---- 4 files changed, 447 insertions(+), 77 deletions(-) diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h index 304303bc466..e57cd25a9fb 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 346 +#define VK_HEADER_VERSION 347 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION) @@ -797,6 +797,10 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR = 1000044006, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD = 1000227000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD = 1000229000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CONSTANT_DATA_FEATURES_KHR = 1000231000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ABORT_FEATURES_KHR = 1000233000, + VK_STRUCTURE_TYPE_DEVICE_FAULT_SHADER_ABORT_MESSAGE_INFO_KHR = 1000233001, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ABORT_PROPERTIES_KHR = 1000233002, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT = 1000234000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_QUAD_CONTROL_FEATURES_KHR = 1000235000, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT = 1000237000, @@ -1350,6 +1354,10 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_SHADER_LAYOUT_INFO_EXT = 1000572012, VK_STRUCTURE_TYPE_GENERATED_COMMANDS_PIPELINE_INFO_EXT = 1000572013, VK_STRUCTURE_TYPE_GENERATED_COMMANDS_SHADER_INFO_EXT = 1000572014, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_KHR = 1000573000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_PROPERTIES_KHR = 1000573001, + VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_KHR = 1000573002, + VK_STRUCTURE_TYPE_DEVICE_FAULT_DEBUG_INFO_KHR = 1000573003, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_8_FEATURES_KHR = 1000574000, VK_STRUCTURE_TYPE_MEMORY_BARRIER_ACCESS_FLAGS_3_KHR = 1000574002, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESA = 1000575000, @@ -3658,9 +3666,9 @@ typedef struct VkDeviceCreateInfo { VkDeviceCreateFlags flags; uint32_t queueCreateInfoCount; const VkDeviceQueueCreateInfo* pQueueCreateInfos; - // enabledLayerCount is legacy and ignored + // enabledLayerCount is legacy and not used uint32_t enabledLayerCount; - // ppEnabledLayerNames is legacy and ignored + // ppEnabledLayerNames is legacy and not used const char* const* ppEnabledLayerNames; uint32_t enabledExtensionCount; const char* const* ppEnabledExtensionNames; @@ -11710,6 +11718,18 @@ VKAPI_ATTR void VKAPI_CALL vkCmdSetFragmentShadingRateKHR( #endif +// VK_KHR_shader_constant_data is a preprocessor guard. Do not pass it to API calls. +#define VK_KHR_shader_constant_data 1 +#define VK_KHR_SHADER_CONSTANT_DATA_SPEC_VERSION 1 +#define VK_KHR_SHADER_CONSTANT_DATA_EXTENSION_NAME "VK_KHR_shader_constant_data" +typedef struct VkPhysicalDeviceShaderConstantDataFeaturesKHR { + VkStructureType sType; + void* pNext; + VkBool32 shaderConstantData; +} VkPhysicalDeviceShaderConstantDataFeaturesKHR; + + + // VK_KHR_dynamic_rendering_local_read is a preprocessor guard. Do not pass it to API calls. #define VK_KHR_dynamic_rendering_local_read 1 #define VK_KHR_DYNAMIC_RENDERING_LOCAL_READ_SPEC_VERSION 1 @@ -11738,6 +11758,31 @@ VKAPI_ATTR void VKAPI_CALL vkCmdSetRenderingInputAttachmentIndicesKHR( #endif +// VK_KHR_shader_abort is a preprocessor guard. Do not pass it to API calls. +#define VK_KHR_shader_abort 1 +#define VK_KHR_SHADER_ABORT_SPEC_VERSION 1 +#define VK_KHR_SHADER_ABORT_EXTENSION_NAME "VK_KHR_shader_abort" +typedef struct VkPhysicalDeviceShaderAbortFeaturesKHR { + VkStructureType sType; + void* pNext; + VkBool32 shaderAbort; +} VkPhysicalDeviceShaderAbortFeaturesKHR; + +typedef struct VkDeviceFaultShaderAbortMessageInfoKHR { + VkStructureType sType; + void* pNext; + uint64_t messageDataSize; + void* pMessageData; +} VkDeviceFaultShaderAbortMessageInfoKHR; + +typedef struct VkPhysicalDeviceShaderAbortPropertiesKHR { + VkStructureType sType; + void* pNext; + uint64_t maxShaderAbortMessageSize; +} VkPhysicalDeviceShaderAbortPropertiesKHR; + + + // VK_KHR_shader_quad_control is a preprocessor guard. Do not pass it to API calls. #define VK_KHR_shader_quad_control 1 #define VK_KHR_SHADER_QUAD_CONTROL_SPEC_VERSION 1 @@ -14249,6 +14294,124 @@ typedef struct VkPhysicalDeviceLayeredApiVulkanPropertiesKHR { +// VK_KHR_device_fault is a preprocessor guard. Do not pass it to API calls. +#define VK_KHR_device_fault 1 +#define VK_KHR_DEVICE_FAULT_SPEC_VERSION 1 +#define VK_KHR_DEVICE_FAULT_EXTENSION_NAME "VK_KHR_device_fault" + +typedef enum VkDeviceFaultAddressTypeKHR { + VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_KHR = 0, + VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_KHR = 1, + VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_KHR = 2, + VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_KHR = 3, + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_KHR = 4, + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_KHR = 5, + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_KHR = 6, + VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT = VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_KHR, + VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT = VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_KHR, + VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT = VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_KHR, + VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT = VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_KHR, + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT = VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_KHR, + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT = VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_KHR, + VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT = VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_KHR, + VK_DEVICE_FAULT_ADDRESS_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF +} VkDeviceFaultAddressTypeKHR; + +typedef enum VkDeviceFaultVendorBinaryHeaderVersionKHR { + VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_KHR = 1, + VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT = VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_KHR, + VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_MAX_ENUM_KHR = 0x7FFFFFFF +} VkDeviceFaultVendorBinaryHeaderVersionKHR; + +typedef enum VkDeviceFaultFlagBitsKHR { + VK_DEVICE_FAULT_FLAG_DEVICE_LOST_KHR = 0x00000001, + VK_DEVICE_FAULT_FLAG_MEMORY_ADDRESS_KHR = 0x00000002, + VK_DEVICE_FAULT_FLAG_INSTRUCTION_ADDRESS_KHR = 0x00000004, + VK_DEVICE_FAULT_FLAG_VENDOR_KHR = 0x00000008, + VK_DEVICE_FAULT_FLAG_WATCHDOG_TIMEOUT_KHR = 0x00000010, + VK_DEVICE_FAULT_FLAG_OVERFLOW_KHR = 0x00000020, + VK_DEVICE_FAULT_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF +} VkDeviceFaultFlagBitsKHR; +typedef VkFlags VkDeviceFaultFlagsKHR; +typedef struct VkPhysicalDeviceFaultFeaturesKHR { + VkStructureType sType; + void* pNext; + VkBool32 deviceFault; + VkBool32 deviceFaultVendorBinary; + VkBool32 deviceFaultReportMasked; + VkBool32 deviceFaultDeviceLostOnMasked; +} VkPhysicalDeviceFaultFeaturesKHR; + +typedef struct VkPhysicalDeviceFaultPropertiesKHR { + VkStructureType sType; + void* pNext; + uint32_t maxDeviceFaultCount; +} VkPhysicalDeviceFaultPropertiesKHR; + +typedef struct VkDeviceFaultAddressInfoKHR { + VkDeviceFaultAddressTypeKHR addressType; + VkDeviceAddress reportedAddress; + VkDeviceSize addressPrecision; +} VkDeviceFaultAddressInfoKHR; + +typedef struct VkDeviceFaultVendorInfoKHR { + char description[VK_MAX_DESCRIPTION_SIZE]; + uint64_t vendorFaultCode; + uint64_t vendorFaultData; +} VkDeviceFaultVendorInfoKHR; + +typedef struct VkDeviceFaultInfoKHR { + VkStructureType sType; + void* pNext; + VkDeviceFaultFlagsKHR flags; + uint64_t groupId; + char description[VK_MAX_DESCRIPTION_SIZE]; + VkDeviceFaultAddressInfoKHR faultAddressInfo; + VkDeviceFaultAddressInfoKHR instructionAddressInfo; + VkDeviceFaultVendorInfoKHR vendorInfo; +} VkDeviceFaultInfoKHR; + +typedef struct VkDeviceFaultDebugInfoKHR { + VkStructureType sType; + void* pNext; + uint32_t vendorBinarySize; + void* pVendorBinaryData; +} VkDeviceFaultDebugInfoKHR; + +typedef struct VkDeviceFaultVendorBinaryHeaderVersionOneKHR { + uint32_t headerSize; + VkDeviceFaultVendorBinaryHeaderVersionKHR headerVersion; + uint32_t vendorID; + uint32_t deviceID; + uint32_t driverVersion; + uint8_t pipelineCacheUUID[VK_UUID_SIZE]; + uint32_t applicationNameOffset; + uint32_t applicationVersion; + uint32_t engineNameOffset; + uint32_t engineVersion; + uint32_t apiVersion; +} VkDeviceFaultVendorBinaryHeaderVersionOneKHR; + +typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceFaultReportsKHR)(VkDevice device, uint64_t timeout, uint32_t* pFaultCounts, VkDeviceFaultInfoKHR* pFaultInfo); +typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceFaultDebugInfoKHR)(VkDevice device, VkDeviceFaultDebugInfoKHR* pDebugInfo); + +#ifndef VK_NO_PROTOTYPES +#ifndef VK_ONLY_EXPORTED_PROTOTYPES +VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceFaultReportsKHR( + VkDevice device, + uint64_t timeout, + uint32_t* pFaultCounts, + VkDeviceFaultInfoKHR* pFaultInfo); +#endif + +#ifndef VK_ONLY_EXPORTED_PROTOTYPES +VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceFaultDebugInfoKHR( + VkDevice device, + VkDeviceFaultDebugInfoKHR* pDebugInfo); +#endif +#endif + + // VK_KHR_maintenance8 is a preprocessor guard. Do not pass it to API calls. #define VK_KHR_maintenance8 1 #define VK_KHR_MAINTENANCE_8_SPEC_VERSION 1 @@ -20041,22 +20204,10 @@ typedef struct VkPhysicalDevice4444FormatsFeaturesEXT { #define VK_EXT_device_fault 1 #define VK_EXT_DEVICE_FAULT_SPEC_VERSION 2 #define VK_EXT_DEVICE_FAULT_EXTENSION_NAME "VK_EXT_device_fault" +typedef VkDeviceFaultAddressTypeKHR VkDeviceFaultAddressTypeEXT; -typedef enum VkDeviceFaultAddressTypeEXT { - VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT = 0, - VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT = 1, - VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT = 2, - VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT = 3, - VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT = 4, - VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT = 5, - VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT = 6, - VK_DEVICE_FAULT_ADDRESS_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF -} VkDeviceFaultAddressTypeEXT; +typedef VkDeviceFaultVendorBinaryHeaderVersionKHR VkDeviceFaultVendorBinaryHeaderVersionEXT; -typedef enum VkDeviceFaultVendorBinaryHeaderVersionEXT { - VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT = 1, - VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_MAX_ENUM_EXT = 0x7FFFFFFF -} VkDeviceFaultVendorBinaryHeaderVersionEXT; typedef struct VkPhysicalDeviceFaultFeaturesEXT { VkStructureType sType; void* pNext; @@ -20072,40 +20223,20 @@ typedef struct VkDeviceFaultCountsEXT { VkDeviceSize vendorBinarySize; } VkDeviceFaultCountsEXT; -typedef struct VkDeviceFaultAddressInfoEXT { - VkDeviceFaultAddressTypeEXT addressType; - VkDeviceAddress reportedAddress; - VkDeviceSize addressPrecision; -} VkDeviceFaultAddressInfoEXT; - -typedef struct VkDeviceFaultVendorInfoEXT { - char description[VK_MAX_DESCRIPTION_SIZE]; - uint64_t vendorFaultCode; - uint64_t vendorFaultData; -} VkDeviceFaultVendorInfoEXT; - typedef struct VkDeviceFaultInfoEXT { VkStructureType sType; void* pNext; char description[VK_MAX_DESCRIPTION_SIZE]; - VkDeviceFaultAddressInfoEXT* pAddressInfos; - VkDeviceFaultVendorInfoEXT* pVendorInfos; + VkDeviceFaultAddressInfoKHR* pAddressInfos; + VkDeviceFaultVendorInfoKHR* pVendorInfos; void* pVendorBinaryData; } VkDeviceFaultInfoEXT; -typedef struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT { - uint32_t headerSize; - VkDeviceFaultVendorBinaryHeaderVersionEXT headerVersion; - uint32_t vendorID; - uint32_t deviceID; - uint32_t driverVersion; - uint8_t pipelineCacheUUID[VK_UUID_SIZE]; - uint32_t applicationNameOffset; - uint32_t applicationVersion; - uint32_t engineNameOffset; - uint32_t engineVersion; - uint32_t apiVersion; -} VkDeviceFaultVendorBinaryHeaderVersionOneEXT; +typedef VkDeviceFaultAddressInfoKHR VkDeviceFaultAddressInfoEXT; + +typedef VkDeviceFaultVendorInfoKHR VkDeviceFaultVendorInfoEXT; + +typedef VkDeviceFaultVendorBinaryHeaderVersionOneKHR VkDeviceFaultVendorBinaryHeaderVersionOneEXT; typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceFaultInfoEXT)(VkDevice device, VkDeviceFaultCountsEXT* pFaultCounts, VkDeviceFaultInfoEXT* pFaultInfo); diff --git a/src/compiler/spirv/spirv.core.grammar.json b/src/compiler/spirv/spirv.core.grammar.json index 2c6695dd812..e600c0445f7 100644 --- a/src/compiler/spirv/spirv.core.grammar.json +++ b/src/compiler/spirv/spirv.core.grammar.json @@ -5718,6 +5718,17 @@ "capabilities": [ "DescriptorHeapEXT" ], "version" : "None" }, + { + "opname" : "OpAbortKHR", + "class" : "Control-Flow", + "opcode" : 5121, + "operands" : [ + { "kind" : "IdRef", "name" : "Message Type" }, + { "kind" : "IdRef", "name" : "Message'" } + ], + "capabilities" : [ "AbortKHR" ], + "version" : "None" + }, { "opname" : "OpUntypedImageTexelPointerEXT", "class" : "Memory", @@ -5757,6 +5768,55 @@ "capabilities": [ "DescriptorHeapEXT" ], "version" : "None" }, + { + "opname" : "OpConstantDataKHR", + "class" : "Constant-Creation", + "opcode" : 5147, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "LiteralString", "name" : "Data" } + ], + "capabilities" : [ "ConstantDataKHR" ], + "version" : "None" + }, + { + "opname" : "OpSpecConstantDataKHR", + "class" : "Constant-Creation", + "opcode" : 5148, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "LiteralString", "name" : "Data" } + ], + "capabilities" : [ "ConstantDataKHR" ], + "version" : "None" + }, + { + "opname" : "OpPoisonKHR", + "class" : "Miscellaneous", + "opcode" : 5158, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" } + ], + "capabilities" : [ "PoisonFreezeKHR" ], + "provisional" : true, + "version" : "None" + }, + { + "opname" : "OpFreezeKHR", + "class" : "Miscellaneous", + "opcode" : 5159, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "Value" } + ], + "capabilities" : [ "PoisonFreezeKHR" ], + "provisional" : true, + "version" : "None" + }, { "opname" : "OpHitObjectRecordHitMotionNV", "class" : "Reserved", @@ -13281,6 +13341,13 @@ "provisional" : true, "version" : "None" }, + { + "enumerant" : "ArithmeticPoisonKHR", + "value" : 5157, + "capabilities" : [ "PoisonFreezeKHR" ], + "provisional" : true, + "version" : "None" + }, { "enumerant" : "OutputLinesEXT", "aliases" : ["OutputLinesNV"], @@ -15099,6 +15166,12 @@ ], "version" : "None" }, + { + "enumerant" : "UTFEncodedKHR", + "value" : 5145, + "capabilities" : [ "ConstantDataKHR" ], + "version" : "None" + }, { "enumerant" : "OverrideCoverageNV", "value" : 5248, @@ -17605,6 +17678,12 @@ "extensions" : [ "SPV_KHR_bfloat16" ], "version" : "None" }, + { + "enumerant" : "AbortKHR", + "value" : 5120, + "extensions" : [ "SPV_KHR_abort" ], + "version" : "None" + }, { "enumerant" : "DescriptorHeapEXT", "value": 5128, @@ -17612,6 +17691,19 @@ "extensions" : [ "SPV_EXT_descriptor_heap" ], "version" : "None" }, + { + "enumerant" : "ConstantDataKHR", + "value" : 5146, + "extensions" : [ "SPV_KHR_constant_data" ], + "version" : "None" + }, + { + "enumerant" : "PoisonFreezeKHR", + "value" : 5156, + "extensions" : [ "SPV_KHR_poison_freeze" ], + "provisional" : true, + "version" : "None" + }, { "enumerant" : "SampleMaskOverrideCoverageNV", "value" : 5249, diff --git a/src/compiler/spirv/spirv.h b/src/compiler/spirv/spirv.h index 2ed773111fc..d00cf0f4e95 100644 --- a/src/compiler/spirv/spirv.h +++ b/src/compiler/spirv/spirv.h @@ -179,6 +179,7 @@ typedef enum SpvExecutionMode_ { SpvExecutionModeQuadDerivativesKHR = 5088, SpvExecutionModeRequireFullQuadsKHR = 5089, SpvExecutionModeSharesInputWithAMDX = 5102, + SpvExecutionModeArithmeticPoisonKHR = 5157, SpvExecutionModeOutputLinesEXT = 5269, SpvExecutionModeOutputLinesNV = 5269, SpvExecutionModeOutputPrimitivesEXT = 5270, @@ -563,6 +564,7 @@ typedef enum SpvDecoration_ { SpvDecorationPayloadDispatchIndirectAMDX = 5105, SpvDecorationArrayStrideIdEXT = 5124, SpvDecorationOffsetIdEXT = 5125, + SpvDecorationUTFEncodedKHR = 5145, SpvDecorationOverrideCoverageNV = 5248, SpvDecorationPassthroughNV = 5250, SpvDecorationViewportRelativeNV = 5252, @@ -1200,7 +1202,10 @@ typedef enum SpvCapability_ { SpvCapabilityBFloat16TypeKHR = 5116, SpvCapabilityBFloat16DotProductKHR = 5117, SpvCapabilityBFloat16CooperativeMatrixKHR = 5118, + SpvCapabilityAbortKHR = 5120, SpvCapabilityDescriptorHeapEXT = 5128, + SpvCapabilityConstantDataKHR = 5146, + SpvCapabilityPoisonFreezeKHR = 5156, SpvCapabilitySampleMaskOverrideCoverageNV = 5249, SpvCapabilityGeometryShaderPassthroughNV = 5251, SpvCapabilityShaderViewportIndexLayerEXT = 5254, @@ -2160,9 +2165,14 @@ typedef enum SpvOp_ { SpvOpGroupNonUniformQuadAnyKHR = 5111, SpvOpTypeBufferEXT = 5115, SpvOpBufferPointerEXT = 5119, + SpvOpAbortKHR = 5121, SpvOpUntypedImageTexelPointerEXT = 5126, SpvOpMemberDecorateIdEXT = 5127, SpvOpConstantSizeOfEXT = 5129, + SpvOpConstantDataKHR = 5147, + SpvOpSpecConstantDataKHR = 5148, + SpvOpPoisonKHR = 5158, + SpvOpFreezeKHR = 5159, SpvOpHitObjectRecordHitMotionNV = 5249, SpvOpHitObjectRecordHitWithIndexMotionNV = 5250, SpvOpHitObjectRecordMissMotionNV = 5251, @@ -3084,9 +3094,14 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy case SpvOpGroupNonUniformQuadAnyKHR: *hasResult = true; *hasResultType = true; break; case SpvOpTypeBufferEXT: *hasResult = true; *hasResultType = false; break; case SpvOpBufferPointerEXT: *hasResult = true; *hasResultType = true; break; + case SpvOpAbortKHR: *hasResult = false; *hasResultType = false; break; case SpvOpUntypedImageTexelPointerEXT: *hasResult = true; *hasResultType = true; break; case SpvOpMemberDecorateIdEXT: *hasResult = false; *hasResultType = false; break; case SpvOpConstantSizeOfEXT: *hasResult = true; *hasResultType = true; break; + case SpvOpConstantDataKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpSpecConstantDataKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpPoisonKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpFreezeKHR: *hasResult = true; *hasResultType = true; break; case SpvOpHitObjectRecordHitMotionNV: *hasResult = false; *hasResultType = false; break; case SpvOpHitObjectRecordHitWithIndexMotionNV: *hasResult = false; *hasResultType = false; break; case SpvOpHitObjectRecordMissMotionNV: *hasResult = false; *hasResultType = false; break; @@ -3646,6 +3661,7 @@ inline const char* SpvExecutionModeToString(SpvExecutionMode value) { case SpvExecutionModeQuadDerivativesKHR: return "QuadDerivativesKHR"; case SpvExecutionModeRequireFullQuadsKHR: return "RequireFullQuadsKHR"; case SpvExecutionModeSharesInputWithAMDX: return "SharesInputWithAMDX"; + case SpvExecutionModeArithmeticPoisonKHR: return "ArithmeticPoisonKHR"; case SpvExecutionModeOutputLinesEXT: return "OutputLinesEXT"; case SpvExecutionModeOutputPrimitivesEXT: return "OutputPrimitivesEXT"; case SpvExecutionModeDerivativeGroupQuadsKHR: return "DerivativeGroupQuadsKHR"; @@ -3963,6 +3979,7 @@ inline const char* SpvDecorationToString(SpvDecoration value) { case SpvDecorationPayloadDispatchIndirectAMDX: return "PayloadDispatchIndirectAMDX"; case SpvDecorationArrayStrideIdEXT: return "ArrayStrideIdEXT"; case SpvDecorationOffsetIdEXT: return "OffsetIdEXT"; + case SpvDecorationUTFEncodedKHR: return "UTFEncodedKHR"; case SpvDecorationOverrideCoverageNV: return "OverrideCoverageNV"; case SpvDecorationPassthroughNV: return "PassthroughNV"; case SpvDecorationViewportRelativeNV: return "ViewportRelativeNV"; @@ -4354,7 +4371,10 @@ inline const char* SpvCapabilityToString(SpvCapability value) { case SpvCapabilityBFloat16TypeKHR: return "BFloat16TypeKHR"; case SpvCapabilityBFloat16DotProductKHR: return "BFloat16DotProductKHR"; case SpvCapabilityBFloat16CooperativeMatrixKHR: return "BFloat16CooperativeMatrixKHR"; + case SpvCapabilityAbortKHR: return "AbortKHR"; case SpvCapabilityDescriptorHeapEXT: return "DescriptorHeapEXT"; + case SpvCapabilityConstantDataKHR: return "ConstantDataKHR"; + case SpvCapabilityPoisonFreezeKHR: return "PoisonFreezeKHR"; case SpvCapabilitySampleMaskOverrideCoverageNV: return "SampleMaskOverrideCoverageNV"; case SpvCapabilityGeometryShaderPassthroughNV: return "GeometryShaderPassthroughNV"; case SpvCapabilityShaderViewportIndexLayerEXT: return "ShaderViewportIndexLayerEXT"; @@ -5139,9 +5159,14 @@ inline const char* SpvOpToString(SpvOp value) { case SpvOpGroupNonUniformQuadAnyKHR: return "OpGroupNonUniformQuadAnyKHR"; case SpvOpTypeBufferEXT: return "OpTypeBufferEXT"; case SpvOpBufferPointerEXT: return "OpBufferPointerEXT"; + case SpvOpAbortKHR: return "OpAbortKHR"; case SpvOpUntypedImageTexelPointerEXT: return "OpUntypedImageTexelPointerEXT"; case SpvOpMemberDecorateIdEXT: return "OpMemberDecorateIdEXT"; case SpvOpConstantSizeOfEXT: return "OpConstantSizeOfEXT"; + case SpvOpConstantDataKHR: return "OpConstantDataKHR"; + case SpvOpSpecConstantDataKHR: return "OpSpecConstantDataKHR"; + case SpvOpPoisonKHR: return "OpPoisonKHR"; + case SpvOpFreezeKHR: return "OpFreezeKHR"; case SpvOpHitObjectRecordHitMotionNV: return "OpHitObjectRecordHitMotionNV"; case SpvOpHitObjectRecordHitWithIndexMotionNV: return "OpHitObjectRecordHitWithIndexMotionNV"; case SpvOpHitObjectRecordMissMotionNV: return "OpHitObjectRecordMissMotionNV"; diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml index 8687d09550b..b53d67c3dae 100644 --- a/src/vulkan/registry/vk.xml +++ b/src/vulkan/registry/vk.xml @@ -188,11 +188,11 @@ 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 346 +#define VK_HEADER_VERSION 347 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION) // Version of this file -#define VK_HEADER_VERSION 20 +#define VK_HEADER_VERSION 21 // Complete version of this file #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(VKSC_API_VARIANT, 1, 0, VK_HEADER_VERSION) @@ -409,6 +409,8 @@ typedef void* MTLSharedEvent_id; typedef VkFlags64 VkMemoryDecompressionMethodFlagsEXT; + typedef VkFlags VkDeviceFaultFlagsKHR; + typedef VkFlags VkBuildMicromapFlagsEXT; typedef VkFlags VkMicromapCreateFlagsEXT; typedef VkFlags VkIndirectCommandsLayoutUsageFlagsEXT; @@ -867,10 +869,11 @@ typedef void* MTLSharedEvent_id; - + + @@ -989,7 +992,8 @@ typedef void* MTLSharedEvent_id; - + + @@ -1067,6 +1071,9 @@ typedef void* MTLSharedEvent_id; VK_KHR_maintenance8 + VK_KHR_device_fault + + VK_KHR_maintenance9 @@ -1250,8 +1257,8 @@ typedef void* MTLSharedEvent_id; VkDeviceCreateFlags flags uint32_t queueCreateInfoCount const VkDeviceQueueCreateInfo* pQueueCreateInfos - uint32_t enabledLayerCount - const char* const* ppEnabledLayerNamesOrdered list of layer names to be enabled + uint32_t enabledLayerCount + const char* const* ppEnabledLayerNamesOrdered list of layer names to be enabled uint32_t enabledExtensionCount const char* const* ppEnabledExtensionNames const VkPhysicalDeviceFeatures* pEnabledFeatures @@ -9695,16 +9702,34 @@ typedef void* MTLSharedEvent_id; VkBool32 deviceFault VkBool32 deviceFaultVendorBinary - - VkDeviceFaultAddressTypeEXT addressType + + VkDeviceFaultAddressTypeKHR addressType VkDeviceAddress reportedAddress VkDeviceSize addressPrecision - + + char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the fault uint64_t vendorFaultCode uint64_t vendorFaultData + + + VkStructureType sType + void* pNext + VkDeviceFaultFlagsKHR flags + uint64_t groupId + char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the fault + VkDeviceFaultAddressInfoKHR faultAddressInfo + VkDeviceFaultAddressInfoKHR instructionAddressInfo + VkDeviceFaultVendorInfoKHR vendorInfo + + + VkStructureType sType + void* pNext + uint32_t vendorBinarySize + void* pVendorBinaryData + VkStructureType sType void* pNext @@ -9716,14 +9741,14 @@ typedef void* MTLSharedEvent_id; VkStructureType sType void* pNext char description[VK_MAX_DESCRIPTION_SIZE]Free-form description of the fault - VkDeviceFaultAddressInfoEXT* pAddressInfos - VkDeviceFaultVendorInfoEXT* pVendorInfos + VkDeviceFaultAddressInfoKHR* pAddressInfos + VkDeviceFaultVendorInfoKHR* pVendorInfos void* pVendorBinaryData - + 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 - VkDeviceFaultVendorBinaryHeaderVersionEXT headerVersion + VkDeviceFaultVendorBinaryHeaderVersionKHR headerVersion uint32_t vendorID uint32_t deviceID uint32_t driverVersion @@ -9734,6 +9759,20 @@ typedef void* MTLSharedEvent_id; uint32_t engineVersion uint32_t apiVersion + + + VkStructureType sType + void* pNext + VkBool32 deviceFault + VkBool32 deviceFaultVendorBinary + VkBool32 deviceFaultReportMasked + VkBool32 deviceFaultDeviceLostOnMasked + + + VkStructureType sType + void* pNext + uint32_t maxDeviceFaultCount + VkStructureType sType void* pNext @@ -11637,6 +11676,27 @@ typedef void* MTLSharedEvent_id; VkAddressCommandFlagsKHR dstFlags uint32_t marker + + VkStructureType sType + void* pNext + VkBool32 shaderConstantData + + + VkStructureType sType + void* pNext + VkBool32 shaderAbort + + + VkStructureType sType + void* pNext + uint64_t maxShaderAbortMessageSize + + + VkStructureType sType + void* pNext + uint64_t messageDataSize + void* pMessageData + @@ -13760,17 +13820,26 @@ typedef void* MTLSharedEvent_id; - - - - - - - - + + + + + + + - - + + + + + + + + + + + + @@ -18135,6 +18204,18 @@ endif::VK_KHR_internally_synchronized_queues[] VkDeviceFaultCountsEXT* pFaultCounts VkDeviceFaultInfoEXT* pFaultInfo + + VkResult vkGetDeviceFaultReportsKHR + VkDevice device + uint64_t timeout + uint32_t* pFaultCounts + VkDeviceFaultInfoKHR* pFaultInfo + + + VkResult vkGetDeviceFaultDebugInfoKHR + VkDevice device + VkDeviceFaultDebugInfoKHR* pDebugInfo + void vkCmdSetDepthBias2EXT VkCommandBuffer commandBuffer @@ -24531,10 +24612,13 @@ endif::VK_KHR_internally_synchronized_queues[] - + - - + + + + + @@ -24592,10 +24676,17 @@ endif::VK_KHR_internally_synchronized_queues[] - + - - + + + + + + + + + @@ -26415,13 +26506,20 @@ endif::VK_KHR_internally_synchronized_queues[] - + + + + + + + + @@ -29875,10 +29973,28 @@ endif::VK_KHR_internally_synchronized_queues[] - + - - + + + + + + + + + + + + + + + + + + + + @@ -33485,6 +33601,12 @@ endif::VK_KHR_internally_synchronized_queues[] + + + + + +