diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h
index ffa970c2c0b..005e9c97b30 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 350
+#define VK_HEADER_VERSION 352
// Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION)
@@ -640,6 +640,13 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID = 1000129004,
VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID = 1000129005,
VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID = 1000129006,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GPA_FEATURES_AMD = 1000133000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GPA_PROPERTIES_AMD = 1000133001,
+ VK_STRUCTURE_TYPE_GPA_SAMPLE_BEGIN_INFO_AMD = 1000133002,
+ VK_STRUCTURE_TYPE_GPA_SESSION_CREATE_INFO_AMD = 1000133003,
+ VK_STRUCTURE_TYPE_GPA_DEVICE_CLOCK_MODE_INFO_AMD = 1000133004,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GPA_PROPERTIES_2_AMD = 1000133005,
+ VK_STRUCTURE_TYPE_GPA_DEVICE_GET_CLOCK_INFO_AMD = 1000133006,
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX = 1000134000,
#endif
@@ -739,6 +746,7 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT = 1000170000,
VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT = 1000170001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_CONVERSION_FEATURES_QCOM = 1000172000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ELAPSED_TIMER_QUERY_FEATURES_QCOM = 1000173000,
VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT = 1000178000,
VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT = 1000178001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT = 1000178002,
@@ -884,6 +892,11 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_PERF_HINT_INFO_QCOM = 1000302000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_QUEUE_PERF_HINT_FEATURES_QCOM = 1000302001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_QUEUE_PERF_HINT_PROPERTIES_QCOM = 1000302002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_3_FEATURES_QCOM = 1000303000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MULTIPLE_WAIT_QUEUES_FEATURES_QCOM = 1000304000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MULTIPLE_WAIT_QUEUES_PROPERTIES_QCOM = 1000304001,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SPLIT_BARRIER_FEATURES_EXT = 1000305000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SPLIT_BARRIER_PROPERTIES_EXT = 1000305001,
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_CUDA_MODULE_CREATE_INFO_NV = 1000307000,
#endif
@@ -1418,6 +1431,10 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_EXT = 1000425002,
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_OPACITY_MICROMAP_FEATURES_KHR = 1000623000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_KHR = 1000623001,
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MICROMAP_DATA_KHR = 1000623002,
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_KHR = 1000623003,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_64_BIT_INDEXING_FEATURES_EXT = 1000627000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_RESOLVE_FEATURES_EXT = 1000628000,
VK_STRUCTURE_TYPE_BEGIN_CUSTOM_RESOLVE_INFO_EXT = 1000628001,
@@ -1455,6 +1472,7 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SESSION_NEURAL_STATISTICS_CREATE_INFO_ARM = 1000676001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_NEURAL_ACCELERATOR_STATISTICS_FEATURES_ARM = 1000676002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_RESTART_INDEX_FEATURES_EXT = 1000678000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_DECODE_VECTOR_FEATURES_NV = 1000689000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
// VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT is a legacy alias
@@ -1753,6 +1771,7 @@ typedef enum VkObjectType {
VK_OBJECT_TYPE_CU_MODULE_NVX = 1000029000,
VK_OBJECT_TYPE_CU_FUNCTION_NVX = 1000029001,
VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000128000,
+ VK_OBJECT_TYPE_GPA_SESSION_AMD = 1000133000,
VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000,
VK_OBJECT_TYPE_VALIDATION_CACHE_EXT = 1000160000,
VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
@@ -2202,6 +2221,7 @@ typedef enum VkQueryType {
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000150000,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150001,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000,
+ VK_QUERY_TYPE_TIME_ELAPSED_QCOM = 1000173000,
VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL = 1000210000,
VK_QUERY_TYPE_VIDEO_ENCODE_FEEDBACK_KHR = 1000299000,
VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT = 1000328000,
@@ -3187,10 +3207,10 @@ typedef enum VkPipelineCreateFlagBits {
VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV = 0x00100000,
VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x02000000,
VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x04000000,
- VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT = 0x01000000,
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_PIPELINE_CREATE_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV = 0x10000000,
#endif
+ VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_KHR = 0x01000000,
// VK_PIPELINE_CREATE_DISPATCH_BASE is a legacy alias
VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
@@ -3203,6 +3223,7 @@ typedef enum VkPipelineCreateFlagBits {
VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT = VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT,
VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT = VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT,
+ VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT = VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_KHR,
VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT = VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT,
VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT = VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT,
VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
@@ -6332,6 +6353,7 @@ typedef enum VkDriverId {
VK_DRIVER_ID_MESA_HONEYKRISP = 26,
VK_DRIVER_ID_VULKAN_SC_EMULATION_ON_VULKAN = 27,
VK_DRIVER_ID_MESA_KOSMICKRISP = 28,
+ VK_DRIVER_ID_MESA_GFXSTREAM = 29,
VK_DRIVER_ID_AMD_PROPRIETARY_KHR = VK_DRIVER_ID_AMD_PROPRIETARY,
VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR = VK_DRIVER_ID_AMD_OPEN_SOURCE,
VK_DRIVER_ID_MESA_RADV_KHR = VK_DRIVER_ID_MESA_RADV,
@@ -7298,6 +7320,7 @@ static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_HOST_IMAGE_TRANSFER_BIT_EXT = 0x400000000000ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR = 0x08000000ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR = 0x10000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLOCK_MATCHING_SXD_BIT_QCOM = 0x100000000000ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT_KHR = 0x00000001ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT_KHR = 0x00000002ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT_KHR = 0x00000004ULL;
@@ -8215,6 +8238,8 @@ static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDX = 0x02000000ULL;
#endif
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_DESCRIPTOR_HEAP_BIT_EXT = 0x10000000ULL;
+static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT = 0x00800000ULL;
+static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_MICROMAP_STORAGE_BIT_EXT = 0x01000000ULL;
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHR = 0x00000001ULL;
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_TRANSFER_DST_BIT_KHR = 0x00000002ULL;
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR = 0x00000004ULL;
@@ -8239,8 +8264,6 @@ static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STO
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT = 0x00200000ULL;
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT = 0x00400000ULL;
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT = 0x04000000ULL;
-static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT = 0x00800000ULL;
-static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_MICROMAP_STORAGE_BIT_EXT = 0x01000000ULL;
#ifdef VK_ENABLE_BETA_EXTENSIONS
static const VkBufferUsageFlagBits2 VK_BUFFER_USAGE_2_COMPRESSED_DATA_DGF1_BIT_AMDX = 0x200000000ULL;
#endif
@@ -8278,6 +8301,7 @@ static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_
#endif
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_DESCRIPTOR_HEAP_BIT_EXT = 0x1000000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_BUILT_IN_PRIMITIVES_BIT_KHR = 0x00001000ULL;
+static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT = 0x01000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV = 0x200000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT = 0x400000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR = 0x00000001ULL;
@@ -8304,7 +8328,6 @@ static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BI
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV = 0x00100000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00200000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = 0x00400000ULL;
-static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT = 0x01000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x02000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x04000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXT = 0x08000000ULL;
@@ -8318,6 +8341,8 @@ static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_INSTRUMENT_SHADERS_B
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR = 0x80000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT = 0x4000000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE = 0x10000000000ULL;
+static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_KHR = 0x01000000ULL;
+static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_OPACITY_MICROMAP_DISALLOW_MIXED_SPECIAL_INDEX_BIT_KHR = 0x20000000000ULL;
static const VkPipelineCreateFlagBits2 VK_PIPELINE_CREATE_2_64_BIT_INDEXING_BIT_EXT = 0x80000000000ULL;
typedef struct VkPhysicalDeviceVulkan14Features {
@@ -12429,6 +12454,7 @@ typedef enum VkAccelerationStructureTypeKHR {
VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0,
VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1,
VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR = 2,
+ VK_ACCELERATION_STRUCTURE_TYPE_OPACITY_MICROMAP_KHR = 1000623000,
VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
@@ -14588,6 +14614,86 @@ typedef struct VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR {
+// VK_KHR_opacity_micromap is a preprocessor guard. Do not pass it to API calls.
+#define VK_KHR_opacity_micromap 1
+#define VK_KHR_OPACITY_MICROMAP_SPEC_VERSION 1
+#define VK_KHR_OPACITY_MICROMAP_EXTENSION_NAME "VK_KHR_opacity_micromap"
+
+typedef enum VkOpacityMicromapFormatKHR {
+ VK_OPACITY_MICROMAP_FORMAT_2_STATE_KHR = 1,
+ VK_OPACITY_MICROMAP_FORMAT_4_STATE_KHR = 2,
+ VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT = VK_OPACITY_MICROMAP_FORMAT_2_STATE_KHR,
+ VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT = VK_OPACITY_MICROMAP_FORMAT_4_STATE_KHR,
+ VK_OPACITY_MICROMAP_FORMAT_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkOpacityMicromapFormatKHR;
+
+typedef enum VkOpacityMicromapSpecialIndexKHR {
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_KHR = -1,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_KHR = -2,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_KHR = -3,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_KHR = -4,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_CLUSTER_GEOMETRY_DISABLE_OPACITY_MICROMAP_NV = -5,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_KHR,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_KHR,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_KHR,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_KHR,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkOpacityMicromapSpecialIndexKHR;
+
+typedef enum VkAccelerationStructureSerializedBlockTypeKHR {
+ VK_ACCELERATION_STRUCTURE_SERIALIZED_BLOCK_TYPE_OPACITY_MICROMAP_KHR = 0,
+ VK_ACCELERATION_STRUCTURE_SERIALIZED_BLOCK_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkAccelerationStructureSerializedBlockTypeKHR;
+typedef struct VkMicromapUsageKHR {
+ uint32_t count;
+ uint32_t subdivisionLevel;
+ VkOpacityMicromapFormatKHR format;
+} VkMicromapUsageKHR;
+
+typedef struct VkAccelerationStructureGeometryMicromapDataKHR {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t usageCountsCount;
+ const VkMicromapUsageKHR* pUsageCounts;
+ const VkMicromapUsageKHR* const* ppUsageCounts;
+ VkDeviceAddress data;
+ VkDeviceAddress triangleArray;
+ VkDeviceSize triangleArrayStride;
+} VkAccelerationStructureGeometryMicromapDataKHR;
+
+typedef struct VkPhysicalDeviceOpacityMicromapFeaturesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 micromap;
+} VkPhysicalDeviceOpacityMicromapFeaturesKHR;
+
+typedef struct VkPhysicalDeviceOpacityMicromapPropertiesKHR {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t maxOpacity2StateSubdivisionLevel;
+ uint32_t maxOpacity4StateSubdivisionLevel;
+ uint32_t maxOpacityLossy4StateSubdivisionLevel;
+ uint64_t maxMicromapTriangles;
+} VkPhysicalDeviceOpacityMicromapPropertiesKHR;
+
+typedef struct VkMicromapTriangleKHR {
+ uint32_t dataOffset;
+ uint16_t subdivisionLevel;
+ uint16_t format;
+} VkMicromapTriangleKHR;
+
+typedef struct VkAccelerationStructureTrianglesOpacityMicromapKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkIndexType indexType;
+ VkDeviceAddress indexBuffer;
+ VkDeviceSize indexStride;
+ uint32_t baseTriangle;
+ VkAccelerationStructureKHR micromap;
+} VkAccelerationStructureTrianglesOpacityMicromapKHR;
+
+
+
// VK_KHR_maintenance10 is a preprocessor guard. Do not pass it to API calls.
#define VK_KHR_maintenance10 1
#define VK_KHR_MAINTENANCE_10_SPEC_VERSION 1
@@ -16134,6 +16240,285 @@ typedef VkPhysicalDeviceSamplerFilterMinmaxProperties VkPhysicalDeviceSamplerFil
#define VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME "VK_AMD_gpu_shader_int16"
+// VK_AMD_gpa_interface is a preprocessor guard. Do not pass it to API calls.
+#define VK_AMD_gpa_interface 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkGpaSessionAMD)
+#define VK_AMD_GPA_INTERFACE_SPEC_VERSION 1
+#define VK_AMD_GPA_INTERFACE_EXTENSION_NAME "VK_AMD_gpa_interface"
+
+typedef enum VkGpaPerfBlockAMD {
+ VK_GPA_PERF_BLOCK_CPF_AMD = 0,
+ VK_GPA_PERF_BLOCK_IA_AMD = 1,
+ VK_GPA_PERF_BLOCK_VGT_AMD = 2,
+ VK_GPA_PERF_BLOCK_PA_AMD = 3,
+ VK_GPA_PERF_BLOCK_SC_AMD = 4,
+ VK_GPA_PERF_BLOCK_SPI_AMD = 5,
+ VK_GPA_PERF_BLOCK_SQ_AMD = 6,
+ VK_GPA_PERF_BLOCK_SX_AMD = 7,
+ VK_GPA_PERF_BLOCK_TA_AMD = 8,
+ VK_GPA_PERF_BLOCK_TD_AMD = 9,
+ VK_GPA_PERF_BLOCK_TCP_AMD = 10,
+ VK_GPA_PERF_BLOCK_TCC_AMD = 11,
+ VK_GPA_PERF_BLOCK_TCA_AMD = 12,
+ VK_GPA_PERF_BLOCK_DB_AMD = 13,
+ VK_GPA_PERF_BLOCK_CB_AMD = 14,
+ VK_GPA_PERF_BLOCK_GDS_AMD = 15,
+ VK_GPA_PERF_BLOCK_SRBM_AMD = 16,
+ VK_GPA_PERF_BLOCK_GRBM_AMD = 17,
+ VK_GPA_PERF_BLOCK_GRBM_SE_AMD = 18,
+ VK_GPA_PERF_BLOCK_RLC_AMD = 19,
+ VK_GPA_PERF_BLOCK_DMA_AMD = 20,
+ VK_GPA_PERF_BLOCK_MC_AMD = 21,
+ VK_GPA_PERF_BLOCK_CPG_AMD = 22,
+ VK_GPA_PERF_BLOCK_CPC_AMD = 23,
+ VK_GPA_PERF_BLOCK_WD_AMD = 24,
+ VK_GPA_PERF_BLOCK_TCS_AMD = 25,
+ VK_GPA_PERF_BLOCK_ATC_AMD = 26,
+ VK_GPA_PERF_BLOCK_ATC_L2_AMD = 27,
+ VK_GPA_PERF_BLOCK_MC_VM_L2_AMD = 28,
+ VK_GPA_PERF_BLOCK_EA_AMD = 29,
+ VK_GPA_PERF_BLOCK_RPB_AMD = 30,
+ VK_GPA_PERF_BLOCK_RMI_AMD = 31,
+ VK_GPA_PERF_BLOCK_UMCCH_AMD = 32,
+ VK_GPA_PERF_BLOCK_GE_AMD = 33,
+ VK_GPA_PERF_BLOCK_GL1A_AMD = 34,
+ VK_GPA_PERF_BLOCK_GL1C_AMD = 35,
+ VK_GPA_PERF_BLOCK_GL1CG_AMD = 36,
+ VK_GPA_PERF_BLOCK_GL2A_AMD = 37,
+ VK_GPA_PERF_BLOCK_GL2C_AMD = 38,
+ VK_GPA_PERF_BLOCK_CHA_AMD = 39,
+ VK_GPA_PERF_BLOCK_CHC_AMD = 40,
+ VK_GPA_PERF_BLOCK_CHCG_AMD = 41,
+ VK_GPA_PERF_BLOCK_GUS_AMD = 42,
+ VK_GPA_PERF_BLOCK_GCR_AMD = 43,
+ VK_GPA_PERF_BLOCK_PH_AMD = 44,
+ VK_GPA_PERF_BLOCK_UTCL1_AMD = 45,
+ VK_GPA_PERF_BLOCK_GE_DIST_AMD = 46,
+ VK_GPA_PERF_BLOCK_GE_SE_AMD = 47,
+ VK_GPA_PERF_BLOCK_DF_MALL_AMD = 48,
+ VK_GPA_PERF_BLOCK_SQ_WGP_AMD = 49,
+ VK_GPA_PERF_BLOCK_PC_AMD = 50,
+ VK_GPA_PERF_BLOCK_GL1XA_AMD = 51,
+ VK_GPA_PERF_BLOCK_GL1XC_AMD = 52,
+ VK_GPA_PERF_BLOCK_WGS_AMD = 53,
+ VK_GPA_PERF_BLOCK_EACPWD_AMD = 54,
+ VK_GPA_PERF_BLOCK_EASE_AMD = 55,
+ VK_GPA_PERF_BLOCK_RLCUSER_AMD = 56,
+ VK_GPA_PERF_BLOCK_GE1_AMD = VK_GPA_PERF_BLOCK_GE_AMD,
+ VK_GPA_PERF_BLOCK_RLCLOCAL_AMD = VK_GPA_PERF_BLOCK_RLCUSER_AMD,
+ VK_GPA_PERF_BLOCK_MAX_ENUM_AMD = 0x7FFFFFFF
+} VkGpaPerfBlockAMD;
+
+typedef enum VkGpaSampleTypeAMD {
+ VK_GPA_SAMPLE_TYPE_CUMULATIVE_AMD = 0,
+ VK_GPA_SAMPLE_TYPE_TRACE_AMD = 1,
+ VK_GPA_SAMPLE_TYPE_TIMING_AMD = 2,
+ VK_GPA_SAMPLE_TYPE_MAX_ENUM_AMD = 0x7FFFFFFF
+} VkGpaSampleTypeAMD;
+
+typedef enum VkGpaDeviceClockModeAMD {
+ VK_GPA_DEVICE_CLOCK_MODE_DEFAULT_AMD = 0,
+ VK_GPA_DEVICE_CLOCK_MODE_QUERY_AMD = 1,
+ VK_GPA_DEVICE_CLOCK_MODE_PROFILING_AMD = 2,
+ VK_GPA_DEVICE_CLOCK_MODE_MIN_MEMORY_AMD = 3,
+ VK_GPA_DEVICE_CLOCK_MODE_MIN_ENGINE_AMD = 4,
+ VK_GPA_DEVICE_CLOCK_MODE_PEAK_AMD = 5,
+ VK_GPA_DEVICE_CLOCK_MODE_MAX_ENUM_AMD = 0x7FFFFFFF
+} VkGpaDeviceClockModeAMD;
+
+typedef enum VkGpaSqShaderStageFlagBitsAMD {
+ VK_GPA_SQ_SHADER_STAGE_PS_BIT_AMD = 0x00000001,
+ VK_GPA_SQ_SHADER_STAGE_VS_BIT_AMD = 0x00000002,
+ VK_GPA_SQ_SHADER_STAGE_GS_BIT_AMD = 0x00000004,
+ VK_GPA_SQ_SHADER_STAGE_ES_BIT_AMD = 0x00000008,
+ VK_GPA_SQ_SHADER_STAGE_HS_BIT_AMD = 0x00000010,
+ VK_GPA_SQ_SHADER_STAGE_LS_BIT_AMD = 0x00000020,
+ VK_GPA_SQ_SHADER_STAGE_CS_BIT_AMD = 0x00000040,
+ VK_GPA_SQ_SHADER_STAGE_FLAG_BITS_MAX_ENUM_AMD = 0x7FFFFFFF
+} VkGpaSqShaderStageFlagBitsAMD;
+typedef VkFlags VkGpaSqShaderStageFlagsAMD;
+typedef VkFlags VkGpaPerfBlockPropertiesFlagsAMD;
+typedef VkFlags VkPhysicalDeviceGpaPropertiesFlagsAMD;
+typedef struct VkGpaPerfBlockPropertiesAMD {
+ VkGpaPerfBlockAMD blockType;
+ VkGpaPerfBlockPropertiesFlagsAMD flags;
+ uint32_t instanceCount;
+ uint32_t maxEventID;
+ uint32_t maxGlobalOnlyCounters;
+ uint32_t maxGlobalSharedCounters;
+ uint32_t maxStreamingCounters;
+} VkGpaPerfBlockPropertiesAMD;
+
+typedef struct VkPhysicalDeviceGpaFeaturesAMD {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 perfCounters;
+ VkBool32 streamingPerfCounters;
+ VkBool32 sqThreadTracing;
+ VkBool32 clockModes;
+} VkPhysicalDeviceGpaFeaturesAMD;
+
+typedef struct VkPhysicalDeviceGpaPropertiesAMD {
+ VkStructureType sType;
+ void* pNext;
+ VkPhysicalDeviceGpaPropertiesFlagsAMD flags;
+ VkDeviceSize maxSqttSeBufferSize;
+ uint32_t shaderEngineCount;
+ uint32_t perfBlockCount;
+ VkGpaPerfBlockPropertiesAMD* pPerfBlocks;
+} VkPhysicalDeviceGpaPropertiesAMD;
+
+typedef struct VkPhysicalDeviceGpaProperties2AMD {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t revisionId;
+} VkPhysicalDeviceGpaProperties2AMD;
+
+typedef struct VkGpaPerfCounterAMD {
+ VkGpaPerfBlockAMD blockType;
+ uint32_t blockInstance;
+ uint32_t eventID;
+} VkGpaPerfCounterAMD;
+
+typedef struct VkGpaSampleBeginInfoAMD {
+ VkStructureType sType;
+ const void* pNext;
+ VkGpaSampleTypeAMD sampleType;
+ VkBool32 sampleInternalOperations;
+ VkBool32 cacheFlushOnCounterCollection;
+ VkBool32 sqShaderMaskEnable;
+ VkGpaSqShaderStageFlagsAMD sqShaderMask;
+ uint32_t perfCounterCount;
+ const VkGpaPerfCounterAMD* pPerfCounters;
+ uint32_t streamingPerfTraceSampleInterval;
+ VkDeviceSize perfCounterDeviceMemoryLimit;
+ VkBool32 sqThreadTraceEnable;
+ VkBool32 sqThreadTraceSuppressInstructionTokens;
+ VkDeviceSize sqThreadTraceDeviceMemoryLimit;
+ VkPipelineStageFlags timingPreSample;
+ VkPipelineStageFlags timingPostSample;
+} VkGpaSampleBeginInfoAMD;
+
+typedef struct VkGpaDeviceClockModeInfoAMD {
+ VkStructureType sType;
+ const void* pNext;
+ VkGpaDeviceClockModeAMD clockMode;
+ float memoryClockRatioToPeak;
+ float engineClockRatioToPeak;
+} VkGpaDeviceClockModeInfoAMD;
+
+typedef struct VkGpaDeviceGetClockInfoAMD {
+ VkStructureType sType;
+ void* pNext;
+ float memoryClockRatioToPeak;
+ float engineClockRatioToPeak;
+ uint32_t memoryClockFrequency;
+ uint32_t engineClockFrequency;
+} VkGpaDeviceGetClockInfoAMD;
+
+typedef struct VkGpaSessionCreateInfoAMD {
+ VkStructureType sType;
+ const void* pNext;
+ VkGpaSessionAMD secondaryCopySource;
+} VkGpaSessionCreateInfoAMD;
+
+typedef VkResult (VKAPI_PTR *PFN_vkCreateGpaSessionAMD)(VkDevice device, const VkGpaSessionCreateInfoAMD* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkGpaSessionAMD* pGpaSession);
+typedef void (VKAPI_PTR *PFN_vkDestroyGpaSessionAMD)(VkDevice device, VkGpaSessionAMD gpaSession, const VkAllocationCallbacks* pAllocator);
+typedef VkResult (VKAPI_PTR *PFN_vkSetGpaDeviceClockModeAMD)(VkDevice device, VkGpaDeviceClockModeInfoAMD* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkGetGpaDeviceClockInfoAMD)(VkDevice device, VkGpaDeviceGetClockInfoAMD* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkCmdBeginGpaSessionAMD)(VkCommandBuffer commandBuffer, VkGpaSessionAMD gpaSession);
+typedef VkResult (VKAPI_PTR *PFN_vkCmdEndGpaSessionAMD)(VkCommandBuffer commandBuffer, VkGpaSessionAMD gpaSession);
+typedef VkResult (VKAPI_PTR *PFN_vkCmdBeginGpaSampleAMD)(VkCommandBuffer commandBuffer, VkGpaSessionAMD gpaSession, const VkGpaSampleBeginInfoAMD* pGpaSampleBeginInfo, uint32_t* pSampleID);
+typedef void (VKAPI_PTR *PFN_vkCmdEndGpaSampleAMD)(VkCommandBuffer commandBuffer, VkGpaSessionAMD gpaSession, uint32_t sampleID);
+typedef VkResult (VKAPI_PTR *PFN_vkGetGpaSessionStatusAMD)(VkDevice device, VkGpaSessionAMD gpaSession);
+typedef VkResult (VKAPI_PTR *PFN_vkGetGpaSessionResultsAMD)(VkDevice device, VkGpaSessionAMD gpaSession, uint32_t sampleID, size_t* pSizeInBytes, void* pData);
+typedef VkResult (VKAPI_PTR *PFN_vkResetGpaSessionAMD)(VkDevice device, VkGpaSessionAMD gpaSession);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyGpaSessionResultsAMD)(VkCommandBuffer commandBuffer, VkGpaSessionAMD gpaSession);
+
+#ifndef VK_NO_PROTOTYPES
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateGpaSessionAMD(
+ VkDevice device,
+ const VkGpaSessionCreateInfoAMD* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkGpaSessionAMD* pGpaSession);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkDestroyGpaSessionAMD(
+ VkDevice device,
+ VkGpaSessionAMD gpaSession,
+ const VkAllocationCallbacks* pAllocator);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkSetGpaDeviceClockModeAMD(
+ VkDevice device,
+ VkGpaDeviceClockModeInfoAMD* pInfo);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetGpaDeviceClockInfoAMD(
+ VkDevice device,
+ VkGpaDeviceGetClockInfoAMD* pInfo);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCmdBeginGpaSessionAMD(
+ VkCommandBuffer commandBuffer,
+ VkGpaSessionAMD gpaSession);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCmdEndGpaSessionAMD(
+ VkCommandBuffer commandBuffer,
+ VkGpaSessionAMD gpaSession);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCmdBeginGpaSampleAMD(
+ VkCommandBuffer commandBuffer,
+ VkGpaSessionAMD gpaSession,
+ const VkGpaSampleBeginInfoAMD* pGpaSampleBeginInfo,
+ uint32_t* pSampleID);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdEndGpaSampleAMD(
+ VkCommandBuffer commandBuffer,
+ VkGpaSessionAMD gpaSession,
+ uint32_t sampleID);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetGpaSessionStatusAMD(
+ VkDevice device,
+ VkGpaSessionAMD gpaSession);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetGpaSessionResultsAMD(
+ VkDevice device,
+ VkGpaSessionAMD gpaSession,
+ uint32_t sampleID,
+ size_t* pSizeInBytes,
+ void* pData);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkResetGpaSessionAMD(
+ VkDevice device,
+ VkGpaSessionAMD gpaSession);
+#endif
+
+#ifndef VK_ONLY_EXPORTED_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdCopyGpaSessionResultsAMD(
+ VkCommandBuffer commandBuffer,
+ VkGpaSessionAMD gpaSession);
+#endif
+#endif
+
+
// VK_EXT_descriptor_heap is a preprocessor guard. Do not pass it to API calls.
#define VK_EXT_descriptor_heap 1
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkTensorARM)
@@ -17033,6 +17418,7 @@ typedef enum VkGeometryTypeKHR {
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_GEOMETRY_TYPE_DENSE_GEOMETRY_FORMAT_TRIANGLES_AMDX = 1000478000,
#endif
+ VK_GEOMETRY_TYPE_MICROMAP_KHR = 1000623000,
VK_GEOMETRY_TYPE_TRIANGLES_NV = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
VK_GEOMETRY_TYPE_AABBS_NV = VK_GEOMETRY_TYPE_AABBS_KHR,
VK_GEOMETRY_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
@@ -17079,15 +17465,17 @@ typedef enum VkGeometryInstanceFlagBitsKHR {
VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR = 0x00000002,
VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 0x00000004,
VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 0x00000008,
- VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_BIT_EXT = 0x00000010,
- VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_BIT_EXT = 0x00000020,
+ VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_BIT_KHR = 0x00000010,
+ VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_BIT_KHR = 0x00000020,
VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR = VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR,
VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,
VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,
+ VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_BIT_EXT = VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_BIT_KHR,
// VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT is a legacy alias
VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT = VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_BIT_EXT,
+ VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_BIT_EXT = VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_BIT_KHR,
// VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT is a legacy alias
VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT = VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_BIT_EXT,
VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
@@ -17105,21 +17493,24 @@ typedef enum VkBuildAccelerationStructureFlagBitsKHR {
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,
VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 0x00000010,
VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV = 0x00000020,
- VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_BIT_EXT = 0x00000040,
- VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_BIT_EXT = 0x00000080,
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_BIT_EXT = 0x00000100,
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISPLACEMENT_MICROMAP_UPDATE_BIT_NV = 0x00000200,
#endif
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DATA_ACCESS_BIT_KHR = 0x00000800,
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_CLUSTER_OPACITY_MICROMAPS_BIT_NV = 0x00001000,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_BIT_KHR = 0x00000040,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_BIT_KHR = 0x00000080,
+ VK_BUILD_ACCELERATION_STRUCTURE_MICROMAP_LOSSY_BIT_KHR = 0x00000400,
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_BIT_EXT = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_BIT_KHR,
// VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT is a legacy alias
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_BIT_EXT,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_BIT_EXT = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_BIT_KHR,
// VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT is a legacy alias
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_BIT_EXT,
// VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT is a legacy alias
@@ -17477,6 +17868,18 @@ typedef struct VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM {
+// VK_QCOM_elapsed_timer_query is a preprocessor guard. Do not pass it to API calls.
+#define VK_QCOM_elapsed_timer_query 1
+#define VK_QCOM_ELAPSED_TIMER_QUERY_SPEC_VERSION 1
+#define VK_QCOM_ELAPSED_TIMER_QUERY_EXTENSION_NAME "VK_QCOM_elapsed_timer_query"
+typedef struct VkPhysicalDeviceElapsedTimerQueryFeaturesQCOM {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 elapsedTimerQuery;
+} VkPhysicalDeviceElapsedTimerQueryFeaturesQCOM;
+
+
+
// VK_EXT_global_priority is a preprocessor guard. Do not pass it to API calls.
#define VK_EXT_global_priority 1
#define VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION 2
@@ -19615,6 +20018,56 @@ VKAPI_ATTR VkResult VKAPI_CALL vkQueueSetPerfHintQCOM(
#endif
+// VK_QCOM_image_processing3 is a preprocessor guard. Do not pass it to API calls.
+#define VK_QCOM_image_processing3 1
+#define VK_QCOM_IMAGE_PROCESSING_3_SPEC_VERSION 1
+#define VK_QCOM_IMAGE_PROCESSING_3_EXTENSION_NAME "VK_QCOM_image_processing3"
+typedef struct VkPhysicalDeviceImageProcessing3FeaturesQCOM {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 imageGatherLinear;
+ VkBool32 imageGatherExtendedModes;
+ VkBool32 blockMatchExtendedClampToEdge;
+} VkPhysicalDeviceImageProcessing3FeaturesQCOM;
+
+
+
+// VK_QCOM_shader_multiple_wait_queues is a preprocessor guard. Do not pass it to API calls.
+#define VK_QCOM_shader_multiple_wait_queues 1
+#define VK_QCOM_SHADER_MULTIPLE_WAIT_QUEUES_SPEC_VERSION 1
+#define VK_QCOM_SHADER_MULTIPLE_WAIT_QUEUES_EXTENSION_NAME "VK_QCOM_shader_multiple_wait_queues"
+typedef struct VkPhysicalDeviceShaderMultipleWaitQueuesFeaturesQCOM {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 shaderMultipleWaitQueues;
+} VkPhysicalDeviceShaderMultipleWaitQueuesFeaturesQCOM;
+
+typedef struct VkPhysicalDeviceShaderMultipleWaitQueuesPropertiesQCOM {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t maxShaderWaitQueues;
+} VkPhysicalDeviceShaderMultipleWaitQueuesPropertiesQCOM;
+
+
+
+// VK_EXT_shader_split_barrier is a preprocessor guard. Do not pass it to API calls.
+#define VK_EXT_shader_split_barrier 1
+#define VK_EXT_SHADER_SPLIT_BARRIER_SPEC_VERSION 1
+#define VK_EXT_SHADER_SPLIT_BARRIER_EXTENSION_NAME "VK_EXT_shader_split_barrier"
+typedef struct VkPhysicalDeviceShaderSplitBarrierFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 shaderSplitBarrier;
+} VkPhysicalDeviceShaderSplitBarrierFeaturesEXT;
+
+typedef struct VkPhysicalDeviceShaderSplitBarrierPropertiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t splitBarrierReservedSharedMemory;
+} VkPhysicalDeviceShaderSplitBarrierPropertiesEXT;
+
+
+
// VK_QCOM_tile_shading is a preprocessor guard. Do not pass it to API calls.
#define VK_QCOM_tile_shading 1
#define VK_QCOM_TILE_SHADING_SPEC_VERSION 2
@@ -21005,21 +21458,10 @@ typedef enum VkCopyMicromapModeEXT {
VK_COPY_MICROMAP_MODE_COMPACT_EXT = 3,
VK_COPY_MICROMAP_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
} VkCopyMicromapModeEXT;
+typedef VkOpacityMicromapFormatKHR VkOpacityMicromapFormatEXT;
-typedef enum VkOpacityMicromapFormatEXT {
- VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT = 1,
- VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT = 2,
- VK_OPACITY_MICROMAP_FORMAT_MAX_ENUM_EXT = 0x7FFFFFFF
-} VkOpacityMicromapFormatEXT;
+typedef VkOpacityMicromapSpecialIndexKHR VkOpacityMicromapSpecialIndexEXT;
-typedef enum VkOpacityMicromapSpecialIndexEXT {
- VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT = -1,
- VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT = -2,
- VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT = -3,
- VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT = -4,
- VK_OPACITY_MICROMAP_SPECIAL_INDEX_CLUSTER_GEOMETRY_DISABLE_OPACITY_MICROMAP_NV = -5,
- VK_OPACITY_MICROMAP_SPECIAL_INDEX_MAX_ENUM_EXT = 0x7FFFFFFF
-} VkOpacityMicromapSpecialIndexEXT;
typedef enum VkAccelerationStructureCompatibilityKHR {
VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR = 0,
@@ -21151,26 +21593,22 @@ typedef struct VkAccelerationStructureTrianglesOpacityMicromapEXT {
VkMicromapEXT micromap;
} VkAccelerationStructureTrianglesOpacityMicromapEXT;
-typedef struct VkMicromapTriangleEXT {
- uint32_t dataOffset;
- uint16_t subdivisionLevel;
- uint16_t format;
-} VkMicromapTriangleEXT;
+typedef VkMicromapTriangleKHR VkMicromapTriangleEXT;
-typedef VkResult (VKAPI_PTR *PFN_vkCreateMicromapEXT)(VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkMicromapEXT* pMicromap);
-typedef void (VKAPI_PTR *PFN_vkDestroyMicromapEXT)(VkDevice device, VkMicromapEXT micromap, const VkAllocationCallbacks* pAllocator);
-typedef void (VKAPI_PTR *PFN_vkCmdBuildMicromapsEXT)(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos);
-typedef VkResult (VKAPI_PTR *PFN_vkBuildMicromapsEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos);
-typedef VkResult (VKAPI_PTR *PFN_vkCopyMicromapEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapInfoEXT* pInfo);
-typedef VkResult (VKAPI_PTR *PFN_vkCopyMicromapToMemoryEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapToMemoryInfoEXT* pInfo);
-typedef VkResult (VKAPI_PTR *PFN_vkCopyMemoryToMicromapEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToMicromapInfoEXT* pInfo);
-typedef VkResult (VKAPI_PTR *PFN_vkWriteMicromapsPropertiesEXT)(VkDevice device, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, size_t dataSize, void* pData, size_t stride);
-typedef void (VKAPI_PTR *PFN_vkCmdCopyMicromapEXT)(VkCommandBuffer commandBuffer, const VkCopyMicromapInfoEXT* pInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdCopyMicromapToMemoryEXT)(VkCommandBuffer commandBuffer, const VkCopyMicromapToMemoryInfoEXT* pInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdCopyMemoryToMicromapEXT)(VkCommandBuffer commandBuffer, const VkCopyMemoryToMicromapInfoEXT* pInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdWriteMicromapsPropertiesEXT)(VkCommandBuffer commandBuffer, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery);
-typedef void (VKAPI_PTR *PFN_vkGetDeviceMicromapCompatibilityEXT)(VkDevice device, const VkMicromapVersionInfoEXT* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility);
-typedef void (VKAPI_PTR *PFN_vkGetMicromapBuildSizesEXT)(VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkMicromapBuildInfoEXT* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkCreateMicromapEXT)(VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkMicromapEXT* pMicromap);
+typedef void (VKAPI_PTR *PFN_vkDestroyMicromapEXT)(VkDevice device, VkMicromapEXT micromap, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkCmdBuildMicromapsEXT)(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos);
+typedef VkResult (VKAPI_PTR *PFN_vkBuildMicromapsEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyMicromapEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapInfoEXT* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyMicromapToMemoryEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapToMemoryInfoEXT* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyMemoryToMicromapEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToMicromapInfoEXT* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkWriteMicromapsPropertiesEXT)(VkDevice device, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, size_t dataSize, void* pData, size_t stride);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyMicromapEXT)(VkCommandBuffer commandBuffer, const VkCopyMicromapInfoEXT* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyMicromapToMemoryEXT)(VkCommandBuffer commandBuffer, const VkCopyMicromapToMemoryInfoEXT* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyMemoryToMicromapEXT)(VkCommandBuffer commandBuffer, const VkCopyMemoryToMicromapInfoEXT* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteMicromapsPropertiesEXT)(VkCommandBuffer commandBuffer, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery);
+typedef void (VKAPI_PTR *PFN_vkGetDeviceMicromapCompatibilityEXT)(VkDevice device, const VkMicromapVersionInfoEXT* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility);
+typedef void (VKAPI_PTR *PFN_vkGetMicromapBuildSizesEXT)(VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkMicromapBuildInfoEXT* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo);
#ifndef VK_NO_PROTOTYPES
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
@@ -22932,6 +23370,7 @@ typedef enum VkShaderCreateFlagBitsEXT {
VK_SHADER_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_EXT = 0x00000020,
VK_SHADER_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = 0x00000040,
VK_SHADER_CREATE_INDIRECT_BINDABLE_BIT_EXT = 0x00000080,
+ VK_SHADER_CREATE_OPACITY_MICROMAP_DISALLOW_MIXED_SPECIAL_INDEX_BIT_EXT = 0x00001000,
VK_SHADER_CREATE_64_BIT_INDEXING_BIT_EXT = 0x00008000,
VK_SHADER_CREATE_INDEPENDENT_SETS_BIT_KHR = 0x00040000,
VK_SHADER_CREATE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
@@ -25754,6 +26193,18 @@ VKAPI_ATTR void VKAPI_CALL vkCmdSetPrimitiveRestartIndexEXT(
#endif
+// VK_NV_cooperative_matrix_decode_vector is a preprocessor guard. Do not pass it to API calls.
+#define VK_NV_cooperative_matrix_decode_vector 1
+#define VK_NV_COOPERATIVE_MATRIX_DECODE_VECTOR_SPEC_VERSION 1
+#define VK_NV_COOPERATIVE_MATRIX_DECODE_VECTOR_EXTENSION_NAME "VK_NV_cooperative_matrix_decode_vector"
+typedef struct VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 cooperativeMatrixDecodeVector;
+} VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV;
+
+
+
// VK_KHR_acceleration_structure is a preprocessor guard. Do not pass it to API calls.
#define VK_KHR_acceleration_structure 1
#define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13
diff --git a/src/compiler/spirv/NonSemanticShaderDebugInfo100.h b/src/compiler/spirv/NonSemanticShaderDebugInfo100.h
index c095e28f2ba..155e2e5a70d 100644
--- a/src/compiler/spirv/NonSemanticShaderDebugInfo100.h
+++ b/src/compiler/spirv/NonSemanticShaderDebugInfo100.h
@@ -1,10 +1,14 @@
// SPDX-FileCopyrightText: 2018-2024 The Khronos Group Inc.
// SPDX-License-Identifier: MIT
-//
+//
// MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS
// KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS
// SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT
// https://www.khronos.org/registry/
+//
+// This file is a frozen snapshot of the NonSemantic.Shader.DebugInfo version
+// 100 instruction set. It will not be updated with new instructions. New code
+// should include NonSemanticShaderDebugInfo.h, which covers all versions.
#ifndef SPIRV_UNIFIED1_NonSemanticShaderDebugInfo100_H_
#define SPIRV_UNIFIED1_NonSemanticShaderDebugInfo100_H_
diff --git a/src/compiler/spirv/spirv.core.grammar.json b/src/compiler/spirv/spirv.core.grammar.json
index e600c0445f7..4f96982e8a5 100644
--- a/src/compiler/spirv/spirv.core.grammar.json
+++ b/src/compiler/spirv/spirv.core.grammar.json
@@ -11,7 +11,7 @@
"magic_number" : "0x07230203",
"major_version" : 1,
"minor_version" : 6,
- "revision" : 4,
+ "revision" : 7,
"instruction_printing_class" : [
{
"tag" : "@exclude"
@@ -5775,7 +5775,7 @@
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
- { "kind" : "LiteralString", "name" : "Data" }
+ { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "Data" }
],
"capabilities" : [ "ConstantDataKHR" ],
"version" : "None"
@@ -5787,7 +5787,7 @@
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
- { "kind" : "LiteralString", "name" : "Data" }
+ { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "Data" }
],
"capabilities" : [ "ConstantDataKHR" ],
"version" : "None"
@@ -6505,7 +6505,8 @@
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Ray Query" },
{ "kind" : "IdRef", "name" : "SBT Record Index" },
- { "kind" : "IdRef", "name" : "Hit Object Attributes" }
+ { "kind" : "IdRef", "name" : "Hit Object Attributes" },
+ { "kind" : "IdRef", "quantifier" : "?", "name" : "Hit Kind" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
@@ -10802,8 +10803,8 @@
"aliases" : [ "OpReadPipeBlockingINTEL" ],
"opcode" : 5946,
"operands" : [
- { "kind" : "IdResultType" },
- { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "Pipe" },
+ { "kind" : "IdRef", "name" : "Pointer" },
{ "kind" : "IdRef", "name" : "Packet Size" },
{ "kind" : "IdRef", "name" : "Packet Alignment" }
],
@@ -10816,8 +10817,8 @@
"aliases" : [ "OpWritePipeBlockingINTEL" ],
"opcode" : 5947,
"operands" : [
- { "kind" : "IdResultType" },
- { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "Pipe" },
+ { "kind" : "IdRef", "name" : "Pointer" },
{ "kind" : "IdRef", "name" : "Packet Size" },
{ "kind" : "IdRef", "name" : "Packet Alignment" }
],
@@ -11222,8 +11223,6 @@
"class" : "Composite",
"opcode" : 6096,
"operands" : [
- { "kind" : "IdResultType" },
- { "kind" : "IdResult" },
{ "kind" : "IdRef", "quantifier" : "*", "name" : "Constituents" }
],
"capabilities" : [ "LongCompositesINTEL" ],
@@ -11254,27 +11253,29 @@
"version" : "None"
},
{
- "opname" : "OpControlBarrierArriveINTEL",
+ "opname" : "OpControlBarrierArriveEXT",
"class" : "Barrier",
+ "aliases" : [ "OpControlBarrierArriveINTEL" ],
"opcode" : 6142,
"operands" : [
{ "kind" : "IdScope", "name" : "Execution" },
{ "kind" : "IdScope", "name" : "Memory" },
{ "kind" : "IdMemorySemantics", "name" : "Semantics" }
],
- "capabilities" : [ "SplitBarrierINTEL" ],
+ "capabilities" : [ "SplitBarrierEXT" ],
"version" : "None"
},
{
- "opname" : "OpControlBarrierWaitINTEL",
+ "opname" : "OpControlBarrierWaitEXT",
"class" : "Barrier",
+ "aliases" : [ "OpControlBarrierWaitINTEL" ],
"opcode" : 6143,
"operands" : [
{ "kind" : "IdScope", "name" : "Execution" },
{ "kind" : "IdScope", "name" : "Memory" },
{ "kind" : "IdMemorySemantics", "name" : "Semantics" }
],
- "capabilities" : [ "SplitBarrierINTEL" ],
+ "capabilities" : [ "SplitBarrierEXT" ],
"version" : "None"
},
{
@@ -11598,6 +11599,34 @@
"provisional" : true,
"version" : "None"
},
+ {
+ "opname" : "OpPredicatedLoadINTEL",
+ "class" : "Memory",
+ "opcode" : 6258,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "Pointer" },
+ { "kind" : "IdRef", "name" : "Predicate" },
+ { "kind" : "IdRef", "name" : "Default Value" },
+ { "kind" : "MemoryAccess", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "PredicatedIOINTEL" ],
+ "version" : "None"
+ },
+ {
+ "opname" : "OpPredicatedStoreINTEL",
+ "class" : "Memory",
+ "opcode" : 6259,
+ "operands" : [
+ { "kind" : "IdRef", "name" : "Pointer" },
+ { "kind" : "IdRef", "name" : "Object" },
+ { "kind" : "IdRef", "name" : "Predicate" },
+ { "kind" : "MemoryAccess", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "PredicatedIOINTEL" ],
+ "version" : "None"
+ },
{
"opname" : "OpGroupIMulKHR",
"class" : "Group",
@@ -12522,9 +12551,10 @@
"version" : "None"
},
{
- "enumerant" : "ForceOpacityMicromap2StateEXT",
+ "enumerant" : "ForceOpacityMicromap2StateKHR",
+ "aliases" : [ "ForceOpacityMicromap2StateEXT" ],
"value" : "0x0400",
- "capabilities" : [ "RayTracingOpacityMicromapEXT" ],
+ "capabilities" : [ "RayTracingOpacityMicromapKHR" ],
"version" : "None"
}
]
@@ -13549,6 +13579,15 @@
"capabilities" : [ "FloatControls2" ],
"version" : "None"
},
+ {
+ "enumerant" : "OpacityMicromapIdKHR",
+ "value" : 6031,
+ "capabilities" : [ "RayTracingOpacityMicromapExecutionModeKHR" ],
+ "parameters" : [
+ { "kind" : "IdRef", "name" : "Enable" }
+ ],
+ "version" : "None"
+ },
{
"enumerant" : "StreamingInterfaceINTEL",
"value" : 6154,
@@ -14568,6 +14607,12 @@
"capabilities" : [ "Linkage" ],
"extensions" : [ "SPV_KHR_linkonce_odr" ],
"version" : "None"
+ },
+ {
+ "enumerant" : "WeakAMD",
+ "value" : 3,
+ "capabilities" : [ "WeakLinkageAMD" ],
+ "version" : "None"
}
]
},
@@ -17704,6 +17749,13 @@
"provisional" : true,
"version" : "None"
},
+ {
+ "enumerant" : "WeakLinkageAMD",
+ "value" : 5181,
+ "capabilities" : [ "Linkage" ],
+ "extensions" : [ "SPV_AMD_weak_linkage" ],
+ "version" : "None"
+ },
{
"enumerant" : "SampleMaskOverrideCoverageNV",
"value" : 5249,
@@ -18009,10 +18061,11 @@
"version" : "None"
},
{
- "enumerant" : "RayTracingOpacityMicromapEXT",
+ "enumerant" : "RayTracingOpacityMicromapKHR",
+ "aliases" : ["RayTracingOpacityMicromapEXT"],
"value" : 5381,
"capabilities" : [ "Shader" ],
- "extensions" : [ "SPV_EXT_opacity_micromap" ],
+ "extensions" : ["SPV_KHR_opacity_micromap", "SPV_EXT_opacity_micromap"],
"version" : "None"
},
{
@@ -18147,6 +18200,13 @@
"extensions" : [ "SPV_NV_tensor_addressing" ],
"version" : "None"
},
+ {
+ "enumerant" : "CooperativeMatrixDecodeVectorNV",
+ "value" : 5447,
+ "capabilities" : [ "CooperativeMatrixBlockLoadsNV" ],
+ "extensions" : [ "SPV_NV_cooperative_matrix_decode_vector" ],
+ "version" : "None"
+ },
{
"enumerant" : "SubgroupShuffleINTEL",
"value" : 5568,
@@ -18489,6 +18549,13 @@
"extensions" : [ "SPV_KHR_fma" ],
"version" : "None"
},
+ {
+ "enumerant" : "RayTracingOpacityMicromapExecutionModeKHR",
+ "value" : 6032,
+ "capabilities" : [ "Shader" ],
+ "extensions" : [ "SPV_KHR_opacity_micromap" ],
+ "version" : "None"
+ },
{
"enumerant" : "AtomicFloat32AddEXT",
"value" : 6033,
@@ -18533,9 +18600,10 @@
"version" : "None"
},
{
- "enumerant" : "SplitBarrierINTEL",
+ "enumerant" : "SplitBarrierEXT",
+ "aliases" : [ "SplitBarrierINTEL" ],
"value" : 6141,
- "extensions" : [ "SPV_INTEL_split_barrier" ],
+ "extensions" : [ "SPV_EXT_split_barrier", "SPV_INTEL_split_barrier" ],
"version" : "None"
},
{
@@ -18659,6 +18727,18 @@
"provisional" : true,
"version": "None"
},
+ {
+ "enumerant" : "PredicatedIOINTEL",
+ "value" : 6257,
+ "extensions" : [ "SPV_INTEL_predicated_io" ],
+ "version" : "None"
+ },
+ {
+ "enumerant" : "RoundedDivideSqrtINTEL",
+ "value" : 6265,
+ "extensions" : [ "SPV_INTEL_rounded_divide_sqrt" ],
+ "version": "None"
+ },
{
"enumerant" : "GroupUniformArithmeticKHR",
"value" : 6400,
@@ -18962,6 +19042,15 @@
],
"capabilities" : [ "CooperativeMatrixBlockLoadsNV" ],
"version" : "None"
+ },
+ {
+ "enumerant" : "DecodeVectorFunc",
+ "value" : "0x0004",
+ "parameters" : [
+ { "kind" : "IdRef" }
+ ],
+ "capabilities" : [ "CooperativeMatrixDecodeVectorNV" ],
+ "version" : "None"
}
]
},
diff --git a/src/compiler/spirv/spirv.h b/src/compiler/spirv/spirv.h
index d00cf0f4e95..5ab265f5f2b 100644
--- a/src/compiler/spirv/spirv.h
+++ b/src/compiler/spirv/spirv.h
@@ -209,6 +209,7 @@ typedef enum SpvExecutionMode_ {
SpvExecutionModeSchedulerTargetFmaxMhzINTEL = 5903,
SpvExecutionModeMaximallyReconvergesKHR = 6023,
SpvExecutionModeFPFastMathDefault = 6028,
+ SpvExecutionModeOpacityMicromapIdKHR = 6031,
SpvExecutionModeStreamingInterfaceINTEL = 6154,
SpvExecutionModeRegisterMapInterfaceINTEL = 6160,
SpvExecutionModeNamedBarrierCountINTEL = 6417,
@@ -475,6 +476,7 @@ typedef enum SpvLinkageType_ {
SpvLinkageTypeExport = 0,
SpvLinkageTypeImport = 1,
SpvLinkageTypeLinkOnceODR = 2,
+ SpvLinkageTypeWeakAMD = 3,
SpvLinkageTypeMax = 0x7fffffff,
} SpvLinkageType;
@@ -1206,6 +1208,7 @@ typedef enum SpvCapability_ {
SpvCapabilityDescriptorHeapEXT = 5128,
SpvCapabilityConstantDataKHR = 5146,
SpvCapabilityPoisonFreezeKHR = 5156,
+ SpvCapabilityWeakLinkageAMD = 5181,
SpvCapabilitySampleMaskOverrideCoverageNV = 5249,
SpvCapabilityGeometryShaderPassthroughNV = 5251,
SpvCapabilityShaderViewportIndexLayerEXT = 5254,
@@ -1270,6 +1273,7 @@ typedef enum SpvCapability_ {
SpvCapabilityDemoteToHelperInvocationEXT = 5379,
SpvCapabilityDisplacementMicromapNV = 5380,
SpvCapabilityRayTracingOpacityMicromapEXT = 5381,
+ SpvCapabilityRayTracingOpacityMicromapKHR = 5381,
SpvCapabilityShaderInvocationReorderNV = 5383,
SpvCapabilityShaderInvocationReorderEXT = 5388,
SpvCapabilityBindlessTextureNV = 5390,
@@ -1291,6 +1295,7 @@ typedef enum SpvCapability_ {
SpvCapabilityCooperativeVectorTrainingNV = 5435,
SpvCapabilityRayTracingClusterAccelerationStructureNV = 5437,
SpvCapabilityTensorAddressingNV = 5439,
+ SpvCapabilityCooperativeMatrixDecodeVectorNV = 5447,
SpvCapabilitySubgroupShuffleINTEL = 5568,
SpvCapabilitySubgroupBufferBlockIOINTEL = 5569,
SpvCapabilitySubgroupImageBlockIOINTEL = 5570,
@@ -1364,6 +1369,7 @@ typedef enum SpvCapability_ {
SpvCapabilityGroupNonUniformRotateKHR = 6026,
SpvCapabilityFloatControls2 = 6029,
SpvCapabilityFMAKHR = 6030,
+ SpvCapabilityRayTracingOpacityMicromapExecutionModeKHR = 6032,
SpvCapabilityAtomicFloat32AddEXT = 6033,
SpvCapabilityAtomicFloat64AddEXT = 6034,
SpvCapabilityLongCompositesINTEL = 6089,
@@ -1372,6 +1378,7 @@ typedef enum SpvCapability_ {
SpvCapabilityAtomicFloat16AddEXT = 6095,
SpvCapabilityDebugInfoModuleINTEL = 6114,
SpvCapabilityBFloat16ConversionINTEL = 6115,
+ SpvCapabilitySplitBarrierEXT = 6141,
SpvCapabilitySplitBarrierINTEL = 6141,
SpvCapabilityArithmeticFenceEXT = 6144,
SpvCapabilityFPGAClusterAttributesV2ALTERA = 6150,
@@ -1396,6 +1403,8 @@ typedef enum SpvCapability_ {
SpvCapabilityUntypedVariableLengthArrayINTEL = 6243,
SpvCapabilitySpecConditionalINTEL = 6245,
SpvCapabilityFunctionVariantsINTEL = 6246,
+ SpvCapabilityPredicatedIOINTEL = 6257,
+ SpvCapabilityRoundedDivideSqrtINTEL = 6265,
SpvCapabilityGroupUniformArithmeticKHR = 6400,
SpvCapabilityTensorFloat32RoundingINTEL = 6425,
SpvCapabilityMaskedGatherScatterINTEL = 6427,
@@ -1422,6 +1431,7 @@ typedef enum SpvRayFlagsShift_ {
SpvRayFlagsSkipTrianglesKHRShift = 8,
SpvRayFlagsSkipAABBsKHRShift = 9,
SpvRayFlagsForceOpacityMicromap2StateEXTShift = 10,
+ SpvRayFlagsForceOpacityMicromap2StateKHRShift = 10,
SpvRayFlagsMax = 0x7fffffff,
} SpvRayFlagsShift;
@@ -1439,6 +1449,7 @@ typedef enum SpvRayFlagsMask_ {
SpvRayFlagsSkipTrianglesKHRMask = 0x00000100,
SpvRayFlagsSkipAABBsKHRMask = 0x00000200,
SpvRayFlagsForceOpacityMicromap2StateEXTMask = 0x00000400,
+ SpvRayFlagsForceOpacityMicromap2StateKHRMask = 0x00000400,
} SpvRayFlagsMask;
typedef enum SpvRayQueryIntersection_ {
@@ -1573,6 +1584,7 @@ typedef enum SpvTensorClampMode_ {
typedef enum SpvTensorAddressingOperandsShift_ {
SpvTensorAddressingOperandsTensorViewShift = 0,
SpvTensorAddressingOperandsDecodeFuncShift = 1,
+ SpvTensorAddressingOperandsDecodeVectorFuncShift = 2,
SpvTensorAddressingOperandsMax = 0x7fffffff,
} SpvTensorAddressingOperandsShift;
@@ -1580,6 +1592,7 @@ typedef enum SpvTensorAddressingOperandsMask_ {
SpvTensorAddressingOperandsMaskNone = 0,
SpvTensorAddressingOperandsTensorViewMask = 0x00000001,
SpvTensorAddressingOperandsDecodeFuncMask = 0x00000002,
+ SpvTensorAddressingOperandsDecodeVectorFuncMask = 0x00000004,
} SpvTensorAddressingOperandsMask;
typedef enum SpvTensorOperandsShift_ {
@@ -2599,7 +2612,9 @@ typedef enum SpvOp_ {
SpvOpCompositeConstructContinuedINTEL = 6096,
SpvOpConvertFToBF16INTEL = 6116,
SpvOpConvertBF16ToFINTEL = 6117,
+ SpvOpControlBarrierArriveEXT = 6142,
SpvOpControlBarrierArriveINTEL = 6142,
+ SpvOpControlBarrierWaitEXT = 6143,
SpvOpControlBarrierWaitINTEL = 6143,
SpvOpArithmeticFenceEXT = 6145,
SpvOpTaskSequenceCreateALTERA = 6163,
@@ -2628,6 +2643,8 @@ typedef enum SpvOp_ {
SpvOpSpecConstantArchitectureINTEL = 6252,
SpvOpSpecConstantCapabilitiesINTEL = 6253,
SpvOpConditionalCopyObjectINTEL = 6254,
+ SpvOpPredicatedLoadINTEL = 6258,
+ SpvOpPredicatedStoreINTEL = 6259,
SpvOpGroupIMulKHR = 6401,
SpvOpGroupFMulKHR = 6402,
SpvOpGroupBitwiseAndKHR = 6403,
@@ -3458,8 +3475,8 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
case SpvOpFixedExpALTERA: *hasResult = true; *hasResultType = true; break;
case SpvOpPtrCastToCrossWorkgroupALTERA: *hasResult = true; *hasResultType = true; break;
case SpvOpCrossWorkgroupCastToPtrALTERA: *hasResult = true; *hasResultType = true; break;
- case SpvOpReadPipeBlockingALTERA: *hasResult = true; *hasResultType = true; break;
- case SpvOpWritePipeBlockingALTERA: *hasResult = true; *hasResultType = true; break;
+ case SpvOpReadPipeBlockingALTERA: *hasResult = false; *hasResultType = false; break;
+ case SpvOpWritePipeBlockingALTERA: *hasResult = false; *hasResultType = false; break;
case SpvOpFPGARegALTERA: *hasResult = true; *hasResultType = true; break;
case SpvOpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break;
case SpvOpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break;
@@ -3483,11 +3500,11 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
case SpvOpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break;
case SpvOpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
case SpvOpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
- case SpvOpCompositeConstructContinuedINTEL: *hasResult = true; *hasResultType = true; break;
+ case SpvOpCompositeConstructContinuedINTEL: *hasResult = false; *hasResultType = false; break;
case SpvOpConvertFToBF16INTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpConvertBF16ToFINTEL: *hasResult = true; *hasResultType = true; break;
- case SpvOpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break;
- case SpvOpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break;
+ case SpvOpControlBarrierArriveEXT: *hasResult = false; *hasResultType = false; break;
+ case SpvOpControlBarrierWaitEXT: *hasResult = false; *hasResultType = false; break;
case SpvOpArithmeticFenceEXT: *hasResult = true; *hasResultType = true; break;
case SpvOpTaskSequenceCreateALTERA: *hasResult = true; *hasResultType = true; break;
case SpvOpTaskSequenceAsyncALTERA: *hasResult = false; *hasResultType = false; break;
@@ -3510,6 +3527,8 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
case SpvOpSpecConstantArchitectureINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpSpecConstantCapabilitiesINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpConditionalCopyObjectINTEL: *hasResult = true; *hasResultType = true; break;
+ case SpvOpPredicatedLoadINTEL: *hasResult = true; *hasResultType = true; break;
+ case SpvOpPredicatedStoreINTEL: *hasResult = false; *hasResultType = false; break;
case SpvOpGroupIMulKHR: *hasResult = true; *hasResultType = true; break;
case SpvOpGroupFMulKHR: *hasResult = true; *hasResultType = true; break;
case SpvOpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break;
@@ -3686,6 +3705,7 @@ inline const char* SpvExecutionModeToString(SpvExecutionMode value) {
case SpvExecutionModeSchedulerTargetFmaxMhzINTEL: return "SchedulerTargetFmaxMhzINTEL";
case SpvExecutionModeMaximallyReconvergesKHR: return "MaximallyReconvergesKHR";
case SpvExecutionModeFPFastMathDefault: return "FPFastMathDefault";
+ case SpvExecutionModeOpacityMicromapIdKHR: return "OpacityMicromapIdKHR";
case SpvExecutionModeStreamingInterfaceINTEL: return "StreamingInterfaceINTEL";
case SpvExecutionModeRegisterMapInterfaceINTEL: return "RegisterMapInterfaceINTEL";
case SpvExecutionModeNamedBarrierCountINTEL: return "NamedBarrierCountINTEL";
@@ -3885,6 +3905,7 @@ inline const char* SpvLinkageTypeToString(SpvLinkageType value) {
case SpvLinkageTypeExport: return "Export";
case SpvLinkageTypeImport: return "Import";
case SpvLinkageTypeLinkOnceODR: return "LinkOnceODR";
+ case SpvLinkageTypeWeakAMD: return "WeakAMD";
default: return "Unknown";
}
}
@@ -4375,6 +4396,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
case SpvCapabilityDescriptorHeapEXT: return "DescriptorHeapEXT";
case SpvCapabilityConstantDataKHR: return "ConstantDataKHR";
case SpvCapabilityPoisonFreezeKHR: return "PoisonFreezeKHR";
+ case SpvCapabilityWeakLinkageAMD: return "WeakLinkageAMD";
case SpvCapabilitySampleMaskOverrideCoverageNV: return "SampleMaskOverrideCoverageNV";
case SpvCapabilityGeometryShaderPassthroughNV: return "GeometryShaderPassthroughNV";
case SpvCapabilityShaderViewportIndexLayerEXT: return "ShaderViewportIndexLayerEXT";
@@ -4438,6 +4460,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
case SpvCapabilityCooperativeVectorTrainingNV: return "CooperativeVectorTrainingNV";
case SpvCapabilityRayTracingClusterAccelerationStructureNV: return "RayTracingClusterAccelerationStructureNV";
case SpvCapabilityTensorAddressingNV: return "TensorAddressingNV";
+ case SpvCapabilityCooperativeMatrixDecodeVectorNV: return "CooperativeMatrixDecodeVectorNV";
case SpvCapabilitySubgroupShuffleINTEL: return "SubgroupShuffleINTEL";
case SpvCapabilitySubgroupBufferBlockIOINTEL: return "SubgroupBufferBlockIOINTEL";
case SpvCapabilitySubgroupImageBlockIOINTEL: return "SubgroupImageBlockIOINTEL";
@@ -4491,6 +4514,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
case SpvCapabilityGroupNonUniformRotateKHR: return "GroupNonUniformRotateKHR";
case SpvCapabilityFloatControls2: return "FloatControls2";
case SpvCapabilityFMAKHR: return "FMAKHR";
+ case SpvCapabilityRayTracingOpacityMicromapExecutionModeKHR: return "RayTracingOpacityMicromapExecutionModeKHR";
case SpvCapabilityAtomicFloat32AddEXT: return "AtomicFloat32AddEXT";
case SpvCapabilityAtomicFloat64AddEXT: return "AtomicFloat64AddEXT";
case SpvCapabilityLongCompositesINTEL: return "LongCompositesINTEL";
@@ -4498,7 +4522,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
case SpvCapabilityAtomicFloat16AddEXT: return "AtomicFloat16AddEXT";
case SpvCapabilityDebugInfoModuleINTEL: return "DebugInfoModuleINTEL";
case SpvCapabilityBFloat16ConversionINTEL: return "BFloat16ConversionINTEL";
- case SpvCapabilitySplitBarrierINTEL: return "SplitBarrierINTEL";
+ case SpvCapabilitySplitBarrierEXT: return "SplitBarrierEXT";
case SpvCapabilityArithmeticFenceEXT: return "ArithmeticFenceEXT";
case SpvCapabilityFPGAClusterAttributesV2ALTERA: return "FPGAClusterAttributesV2ALTERA";
case SpvCapabilityFPGAKernelAttributesv2INTEL: return "FPGAKernelAttributesv2INTEL";
@@ -4517,6 +4541,8 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
case SpvCapabilityUntypedVariableLengthArrayINTEL: return "UntypedVariableLengthArrayINTEL";
case SpvCapabilitySpecConditionalINTEL: return "SpecConditionalINTEL";
case SpvCapabilityFunctionVariantsINTEL: return "FunctionVariantsINTEL";
+ case SpvCapabilityPredicatedIOINTEL: return "PredicatedIOINTEL";
+ case SpvCapabilityRoundedDivideSqrtINTEL: return "RoundedDivideSqrtINTEL";
case SpvCapabilityGroupUniformArithmeticKHR: return "GroupUniformArithmeticKHR";
case SpvCapabilityTensorFloat32RoundingINTEL: return "TensorFloat32RoundingINTEL";
case SpvCapabilityMaskedGatherScatterINTEL: return "MaskedGatherScatterINTEL";
@@ -5551,8 +5577,8 @@ inline const char* SpvOpToString(SpvOp value) {
case SpvOpCompositeConstructContinuedINTEL: return "OpCompositeConstructContinuedINTEL";
case SpvOpConvertFToBF16INTEL: return "OpConvertFToBF16INTEL";
case SpvOpConvertBF16ToFINTEL: return "OpConvertBF16ToFINTEL";
- case SpvOpControlBarrierArriveINTEL: return "OpControlBarrierArriveINTEL";
- case SpvOpControlBarrierWaitINTEL: return "OpControlBarrierWaitINTEL";
+ case SpvOpControlBarrierArriveEXT: return "OpControlBarrierArriveEXT";
+ case SpvOpControlBarrierWaitEXT: return "OpControlBarrierWaitEXT";
case SpvOpArithmeticFenceEXT: return "OpArithmeticFenceEXT";
case SpvOpTaskSequenceCreateALTERA: return "OpTaskSequenceCreateALTERA";
case SpvOpTaskSequenceAsyncALTERA: return "OpTaskSequenceAsyncALTERA";
@@ -5575,6 +5601,8 @@ inline const char* SpvOpToString(SpvOp value) {
case SpvOpSpecConstantArchitectureINTEL: return "OpSpecConstantArchitectureINTEL";
case SpvOpSpecConstantCapabilitiesINTEL: return "OpSpecConstantCapabilitiesINTEL";
case SpvOpConditionalCopyObjectINTEL: return "OpConditionalCopyObjectINTEL";
+ case SpvOpPredicatedLoadINTEL: return "OpPredicatedLoadINTEL";
+ case SpvOpPredicatedStoreINTEL: return "OpPredicatedStoreINTEL";
case SpvOpGroupIMulKHR: return "OpGroupIMulKHR";
case SpvOpGroupFMulKHR: return "OpGroupFMulKHR";
case SpvOpGroupBitwiseAndKHR: return "OpGroupBitwiseAndKHR";
diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml
index 02dee398103..0241edfe50d 100644
--- a/src/vulkan/registry/vk.xml
+++ b/src/vulkan/registry/vk.xml
@@ -188,7 +188,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 350
+#define VK_HEADER_VERSION 352
// Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION)
// Version of this file
@@ -411,8 +411,8 @@ typedef void* MTLSharedEvent_id;
typedef VkFlags VkDeviceFaultFlagsKHR;
- typedef VkFlags VkBuildMicromapFlagsEXT;
- typedef VkFlags VkMicromapCreateFlagsEXT;
+ typedef VkFlags VkBuildMicromapFlagsEXT;
+ typedef VkFlags VkMicromapCreateFlagsEXT;
typedef VkFlags VkIndirectCommandsLayoutUsageFlagsEXT;
typedef VkFlags VkIndirectCommandsInputModeFlagsEXT;
typedef VkFlags VkDirectDriverLoadingFlagsLUNARG;
@@ -430,6 +430,9 @@ typedef void* MTLSharedEvent_id;
typedef VkFlags VkVideoEncodeRgbRangeCompressionFlagsVALVE;
typedef VkFlags VkVideoEncodeRgbChromaOffsetFlagsVALVE;
typedef VkFlags VkSpirvResourceTypeFlagsEXT;
+ typedef VkFlags VkGpaSqShaderStageFlagsAMD;
+ typedef VkFlags VkGpaPerfBlockPropertiesFlagsAMD;
+ typedef VkFlags VkPhysicalDeviceGpaPropertiesFlagsAMD;
typedef VkFlags VkAddressCommandFlagsKHR;
WSI extensions
@@ -645,6 +648,7 @@ typedef void* MTLSharedEvent_id;
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkTensorViewARM)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDataGraphPipelineSessionARM)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderInstrumentationARM)
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkGpaSessionAMD)
WSI extensions
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDisplayKHR)
@@ -872,8 +876,11 @@ typedef void* MTLSharedEvent_id;
-
-
+
+
+
+
+
@@ -926,6 +933,10 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
@@ -4482,6 +4493,11 @@ typedef void* MTLSharedEvent_id;
uint32_t numAvailableSgprs
uint32_t computeWorkGroupSize[3]
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 elapsedTimerQuery
+
VkStructureType sType
const void* pNext
@@ -6393,6 +6409,80 @@ typedef void* MTLSharedEvent_id;
void* pNext
VkBool32 deviceCoherentMemory
+
+ VkGpaPerfBlockAMD blockType
+ VkGpaPerfBlockPropertiesFlagsAMD flags
+ uint32_t instanceCount
+ uint32_t maxEventID
+ uint32_t maxGlobalOnlyCounters
+ uint32_t maxGlobalSharedCounters
+ uint32_t maxStreamingCounters
+
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 perfCounters
+ VkBool32 streamingPerfCounters
+ VkBool32 sqThreadTracing
+ VkBool32 clockModes
+
+
+ VkStructureType sType
+ void* pNext
+ VkPhysicalDeviceGpaPropertiesFlagsAMD flags
+ VkDeviceSize maxSqttSeBufferSize
+ uint32_t shaderEngineCount
+ uint32_t perfBlockCount
+ VkGpaPerfBlockPropertiesAMD* pPerfBlocks
+
+
+ VkStructureType sType
+ void* pNext
+ uint32_t revisionId
+
+
+ VkGpaPerfBlockAMD blockType
+ uint32_t blockInstance
+ uint32_t eventID
+
+
+ VkStructureType sType
+ const void* pNext
+ VkGpaSampleTypeAMD sampleType
+ VkBool32 sampleInternalOperations
+ VkBool32 cacheFlushOnCounterCollection
+ VkBool32 sqShaderMaskEnable
+ VkGpaSqShaderStageFlagsAMD sqShaderMask
+ uint32_t perfCounterCount
+ const VkGpaPerfCounterAMD* pPerfCounters
+ uint32_t streamingPerfTraceSampleInterval
+ VkDeviceSize perfCounterDeviceMemoryLimit
+ VkBool32 sqThreadTraceEnable
+ VkBool32 sqThreadTraceSuppressInstructionTokens
+ VkDeviceSize sqThreadTraceDeviceMemoryLimit
+ VkPipelineStageFlags timingPreSample
+ VkPipelineStageFlags timingPostSample
+
+
+ VkStructureType sType
+ const void* pNext
+ VkGpaDeviceClockModeAMD clockMode
+ float memoryClockRatioToPeak
+ float engineClockRatioToPeak
+
+
+ VkStructureType sType
+ void* pNext
+ float memoryClockRatioToPeak
+ float engineClockRatioToPeak
+ uint32_t memoryClockFrequency
+ uint32_t engineClockFrequency
+
+
+ VkStructureType sType
+ const void* pNext
+ VkGpaSessionAMD secondaryCopySource
+
VkStructureType sType
void* pNext
@@ -9350,97 +9440,135 @@ typedef void* MTLSharedEvent_id;
VkBool32 subpassMergeFeedback
- VkStructureType sType
- const void* pNext
- VkMicromapTypeEXT type
- VkBuildMicromapFlagsEXT flags
- VkBuildMicromapModeEXT mode
- VkMicromapEXT dstMicromap
- uint32_t usageCountsCount
- const VkMicromapUsageEXT* pUsageCounts
+ VkStructureType sType
+ const void* pNext
+ VkMicromapTypeEXT type
+ VkBuildMicromapFlagsEXT flags
+ VkBuildMicromapModeEXT mode
+ VkMicromapEXT dstMicromap
+ uint32_t usageCountsCount
+ const VkMicromapUsageEXT* pUsageCounts
const VkMicromapUsageEXT* const* ppUsageCounts
VkDeviceOrHostAddressConstKHR data
VkDeviceOrHostAddressKHR scratchData
VkDeviceOrHostAddressConstKHR triangleArray
VkDeviceSize triangleArrayStride
+
+ VkStructureType sType
+ const void* pNext
+ uint32_t usageCountsCount
+ const VkMicromapUsageKHR* pUsageCounts
+ const VkMicromapUsageKHR* const* ppUsageCounts
+ VkDeviceAddress data
+ VkDeviceAddress triangleArray
+ VkDeviceSize triangleArrayStride
+
VkStructureType sType
- const void* pNext
- VkMicromapCreateFlagsEXT createFlags
- VkBuffer buffer
- VkDeviceSize offsetSpecified in bytes
- VkDeviceSize size
- VkMicromapTypeEXT type
- VkDeviceAddress deviceAddress
+ const void* pNext
+ VkMicromapCreateFlagsEXT createFlags
+ VkBuffer buffer
+ VkDeviceSize offsetSpecified in bytes
+ VkDeviceSize size
+ VkMicromapTypeEXT type
+ VkDeviceAddress deviceAddress
VkStructureType sType
- const void* pNext
+ const void* pNext
const uint8_t* pVersionData
VkStructureType sType
- const void* pNext
- VkMicromapEXT src
- VkMicromapEXT dst
- VkCopyMicromapModeEXT mode
+ const void* pNext
+ VkMicromapEXT src
+ VkMicromapEXT dst
+ VkCopyMicromapModeEXT mode
VkStructureType sType
- const void* pNext
- VkMicromapEXT src
- VkDeviceOrHostAddressKHR dst
- VkCopyMicromapModeEXT mode
+ const void* pNext
+ VkMicromapEXT src
+ VkDeviceOrHostAddressKHR dst
+ VkCopyMicromapModeEXT mode
VkStructureType sType
- const void* pNext
- VkDeviceOrHostAddressConstKHR src
- VkMicromapEXT dst
- VkCopyMicromapModeEXT mode
+ const void* pNext
+ VkDeviceOrHostAddressConstKHR src
+ VkMicromapEXT dst
+ VkCopyMicromapModeEXT mode
VkStructureType sType
- const void* pNext
- VkDeviceSize micromapSize
- VkDeviceSize buildScratchSize
- VkBool32 discardable
+ const void* pNext
+ VkDeviceSize micromapSize
+ VkDeviceSize buildScratchSize
+ VkBool32 discardable
+
+
+ uint32_t count
+ uint32_t subdivisionLevel
+ VkOpacityMicromapFormatKHR format
uint32_t count
uint32_t subdivisionLevel
uint32_t formatInterpretation depends on parent type
-
+
uint32_t dataOffsetSpecified in bytes
uint16_t subdivisionLevel
uint16_t format
+
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 micromap
+
VkStructureType sType
- void* pNext
- VkBool32 micromap
- VkBool32 micromapCaptureReplay
- VkBool32 micromapHostCommands
+ void* pNext
+ VkBool32 micromap
+ VkBool32 micromapCaptureReplay
+ VkBool32 micromapHostCommands
+
+
+ VkStructureType sType
+ void* pNext
+ uint32_t maxOpacity2StateSubdivisionLevel
+ uint32_t maxOpacity4StateSubdivisionLevel
+ uint32_t maxOpacityLossy4StateSubdivisionLevel
+ uint64_t maxMicromapTriangles
VkStructureType sType
- void* pNext
- uint32_t maxOpacity2StateSubdivisionLevel
- uint32_t maxOpacity4StateSubdivisionLevel
+ void* pNext
+ uint32_t maxOpacity2StateSubdivisionLevel
+ uint32_t maxOpacity4StateSubdivisionLevel
+
+
+ VkStructureType sType
+ void* pNext
+ VkIndexType indexType
+ VkDeviceAddress indexBuffer
+ VkDeviceSize indexStride
+ uint32_t baseTriangle
+ VkAccelerationStructureKHR micromap
VkStructureType sType
- void* pNext
- VkIndexType indexType
- VkDeviceOrHostAddressConstKHR indexBuffer
- VkDeviceSize indexStride
- uint32_t baseTriangle
- uint32_t usageCountsCount
- const VkMicromapUsageEXT* pUsageCounts
- const VkMicromapUsageEXT* const* ppUsageCounts
- VkMicromapEXT micromap
+ void* pNext
+ VkIndexType indexType
+ VkDeviceOrHostAddressConstKHR indexBuffer
+ VkDeviceSize indexStride
+ uint32_t baseTriangle
+ uint32_t usageCountsCount
+ const VkMicromapUsageEXT* pUsageCounts
+ const VkMicromapUsageEXT* const* ppUsageCounts
+ VkMicromapEXT micromap
VkStructureType sType
@@ -9602,6 +9730,16 @@ typedef void* MTLSharedEvent_id;
VkExtent2D filterSize
uint32_t numPhases
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 shaderMultipleWaitQueues
+
+
+ VkStructureType sType
+ void* pNext
+ uint32_t maxShaderWaitQueues
+
VkStructureType sType
void* pNext
@@ -10376,6 +10514,13 @@ typedef void* MTLSharedEvent_id;
VkExtent2D windowExtent
VkBlockMatchWindowCompareModeQCOM windowCompareMode
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 imageGatherLinear
+ VkBool32 imageGatherExtendedModes
+ VkBool32 blockMatchExtendedClampToEdge
+
VkStructureType sType
void* pNext
@@ -10703,6 +10848,11 @@ typedef void* MTLSharedEvent_id;
VkScopeKHR scope
uint32_t workgroupInvocations
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 cooperativeMatrixDecodeVector
+
VkStructureType sType
void* pNext
@@ -11573,6 +11723,16 @@ typedef void* MTLSharedEvent_id;
const void* pNext
uint32_t subsampledImageDescriptorCount
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 shaderSplitBarrier
+
+
+ VkStructureType sType
+ void* pNext
+ uint32_t splitBarrierReservedSharedMemory
+
VkStructureType sType
void* pNext
@@ -11826,7 +11986,7 @@ typedef void* MTLSharedEvent_id;
uint32_t maxWidth
uint32_t maxHeight
-
+
VkStructureType sType
const void* pNext
VkDataGraphOpticalFlowImageUsageFlagsARM usage
@@ -13161,6 +13321,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -13972,15 +14133,18 @@ typedef void* MTLSharedEvent_id;
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -14226,6 +14390,89 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -18260,93 +18507,93 @@ endif::VK_KHR_internally_synchronized_queues[]
VkResult vkCreateMicromapEXT
VkDevice device
- const VkMicromapCreateInfoEXT* pCreateInfo
+ const VkMicromapCreateInfoEXT* pCreateInfo
const VkAllocationCallbacks* pAllocator
- VkMicromapEXT* pMicromap
+ VkMicromapEXT* pMicromap
void vkCmdBuildMicromapsEXT
- VkCommandBuffer commandBuffer
- uint32_t infoCount
+ VkCommandBuffer commandBuffer
+ uint32_t infoCount
const VkMicromapBuildInfoEXT* pInfos
VkResult vkBuildMicromapsEXT
- VkDevice device
- VkDeferredOperationKHR deferredOperation
- uint32_t infoCount
+ VkDevice device
+ VkDeferredOperationKHR deferredOperation
+ uint32_t infoCount
const VkMicromapBuildInfoEXT* pInfos
void vkDestroyMicromapEXT
- VkDevice device
+ VkDevice device
VkMicromapEXT micromap
- const VkAllocationCallbacks* pAllocator
+ const VkAllocationCallbacks* pAllocator
void vkCmdCopyMicromapEXT
VkCommandBuffer commandBuffer
- const VkCopyMicromapInfoEXT* pInfo
+ const VkCopyMicromapInfoEXT* pInfo
VkResult vkCopyMicromapEXT
- VkDevice device
+ VkDevice device
VkDeferredOperationKHR deferredOperation
- const VkCopyMicromapInfoEXT* pInfo
+ const VkCopyMicromapInfoEXT* pInfo
void vkCmdCopyMicromapToMemoryEXT
- VkCommandBuffer commandBuffer
+ VkCommandBuffer commandBuffer
const VkCopyMicromapToMemoryInfoEXT* pInfo
VkResult vkCopyMicromapToMemoryEXT
- VkDevice device
+ VkDevice device
VkDeferredOperationKHR deferredOperation
- const VkCopyMicromapToMemoryInfoEXT* pInfo
+ const VkCopyMicromapToMemoryInfoEXT* pInfo
void vkCmdCopyMemoryToMicromapEXT
- VkCommandBuffer commandBuffer
+ VkCommandBuffer commandBuffer
const VkCopyMemoryToMicromapInfoEXT* pInfo
VkResult vkCopyMemoryToMicromapEXT
- VkDevice device
+ VkDevice device
VkDeferredOperationKHR deferredOperation
- const VkCopyMemoryToMicromapInfoEXT* pInfo
+ const VkCopyMemoryToMicromapInfoEXT* pInfo
void vkCmdWriteMicromapsPropertiesEXT
VkCommandBuffer commandBuffer
- uint32_t micromapCount
+ uint32_t micromapCount
const VkMicromapEXT* pMicromaps
- VkQueryType queryType
- VkQueryPool queryPool
- uint32_t firstQuery
+ VkQueryType queryType
+ VkQueryPool queryPool
+ uint32_t firstQuery
VkResult vkWriteMicromapsPropertiesEXT
- VkDevice device
- uint32_t micromapCount
+ VkDevice device
+ uint32_t micromapCount
const VkMicromapEXT* pMicromaps
- VkQueryType queryType
- size_t dataSize
- void* pData
- size_t stride
+ VkQueryType queryType
+ size_t dataSize
+ void* pData
+ size_t stride
void vkGetDeviceMicromapCompatibilityEXT
- VkDevice device
- const VkMicromapVersionInfoEXT* pVersionInfo
+ VkDevice device
+ const VkMicromapVersionInfoEXT* pVersionInfo
VkAccelerationStructureCompatibilityKHR* pCompatibility
void vkGetMicromapBuildSizesEXT
- VkDevice device
- VkAccelerationStructureBuildTypeKHR buildType
- const VkMicromapBuildInfoEXT* pBuildInfo
- VkMicromapBuildSizesInfoEXT* pSizeInfo
+ VkDevice device
+ VkAccelerationStructureBuildTypeKHR buildType
+ const VkMicromapBuildInfoEXT* pBuildInfo
+ VkMicromapBuildSizesInfoEXT* pSizeInfo
void vkGetShaderModuleIdentifierEXT
@@ -18597,6 +18844,75 @@ endif::VK_KHR_internally_synchronized_queues[]
VkDeviceSize scratchSize
VkDeviceAddress countInfo
+
+ VkResult vkCreateGpaSessionAMD
+ VkDevice device
+ const VkGpaSessionCreateInfoAMD* pCreateInfo
+ const VkAllocationCallbacks* pAllocator
+ VkGpaSessionAMD* pGpaSession
+
+
+ void vkDestroyGpaSessionAMD
+ VkDevice device
+ VkGpaSessionAMD gpaSession
+ const VkAllocationCallbacks* pAllocator
+
+
+ VkResult vkSetGpaDeviceClockModeAMD
+ VkDevice device
+ VkGpaDeviceClockModeInfoAMD* pInfo
+
+
+ VkResult vkGetGpaDeviceClockInfoAMD
+ VkDevice device
+ VkGpaDeviceGetClockInfoAMD* pInfo
+
+
+ VkResult vkCmdBeginGpaSessionAMD
+ VkCommandBuffer commandBuffer
+ VkGpaSessionAMD gpaSession
+
+
+ VkResult vkCmdEndGpaSessionAMD
+ VkCommandBuffer commandBuffer
+ VkGpaSessionAMD gpaSession
+
+
+ VkResult vkCmdBeginGpaSampleAMD
+ VkCommandBuffer commandBuffer
+ VkGpaSessionAMD gpaSession
+ const VkGpaSampleBeginInfoAMD* pGpaSampleBeginInfo
+ uint32_t* pSampleID
+
+
+ void vkCmdEndGpaSampleAMD
+ VkCommandBuffer commandBuffer
+ VkGpaSessionAMD gpaSession
+ uint32_t sampleID
+
+
+ VkResult vkGetGpaSessionStatusAMD
+ VkDevice device
+ VkGpaSessionAMD gpaSession
+
+
+ VkResult vkGetGpaSessionResultsAMD
+ VkDevice device
+ VkGpaSessionAMD gpaSession
+ uint32_t sampleID
+ size_t* pSizeInBytes
+ void* pData
+
+
+ VkResult vkResetGpaSessionAMD
+ VkDevice device
+ VkGpaSessionAMD gpaSession
+
+
+ void vkCmdCopyGpaSessionResultsAMD
+ VkCommandBuffer commandBuffer
+ VkGpaSessionAMD gpaSession
+
void vkCmdBindDescriptorSets2
VkCommandBuffer commandBuffer
@@ -23126,10 +23442,48 @@ endif::VK_KHR_internally_synchronized_queues[]
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -24161,10 +24515,14 @@ endif::VK_KHR_internally_synchronized_queues[]
-
+
-
-
+
+
+
+
+
+
@@ -24815,8 +25173,8 @@ endif::VK_KHR_internally_synchronized_queues[]
-
-
+
+
@@ -25860,7 +26218,7 @@ endif::VK_KHR_internally_synchronized_queues[]
-
+
@@ -25973,25 +26331,38 @@ endif::VK_KHR_internally_synchronized_queues[]
-
+
-
-
+
+
+
+
+
-
+
-
+
-
-
+
+
+
+
+
+
+
-
+
-
-
+
+
+
+
+
+
+
@@ -25999,6 +26370,11 @@ endif::VK_KHR_internally_synchronized_queues[]
+
+
+
+
+
@@ -27474,39 +27850,45 @@ endif::VK_KHR_internally_synchronized_queues[]
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
@@ -27545,6 +27927,11 @@ endif::VK_KHR_internally_synchronized_queues[]
+
+
+
+
+
@@ -28611,9 +28998,6 @@ endif::VK_KHR_internally_synchronized_queues[]
-
-
-
@@ -28661,10 +29045,6 @@ endif::VK_KHR_internally_synchronized_queues[]
-
-
-
-
@@ -30159,7 +30539,7 @@ endif::VK_KHR_internally_synchronized_queues[]
-
+
@@ -30820,17 +31200,39 @@ endif::VK_KHR_internally_synchronized_queues[]
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
+
@@ -31436,10 +31838,32 @@ endif::VK_KHR_internally_synchronized_queues[]
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -33304,9 +33728,15 @@ endif::VK_KHR_internally_synchronized_queues[]
+
+
+
+
+
+
@@ -33318,6 +33748,13 @@ endif::VK_KHR_internally_synchronized_queues[]
+
+
+
+
+
+
+
@@ -33373,6 +33810,9 @@ endif::VK_KHR_internally_synchronized_queues[]
+
+
+
@@ -33886,12 +34326,24 @@ endif::VK_KHR_internally_synchronized_queues[]
+
+
+
+
+
+
+
+
+
+
+
+
@@ -33973,6 +34425,9 @@ endif::VK_KHR_internally_synchronized_queues[]
+
+
+
@@ -33996,6 +34451,12 @@ endif::VK_KHR_internally_synchronized_queues[]
+
+
+
+
+
+