Merge pull request #5726 from LeonardoTemperanza/master

[vendor/vulkan] Fix bindings generator
This commit is contained in:
gingerBill
2025-10-08 11:33:33 +01:00
committed by GitHub
2 changed files with 1075 additions and 1069 deletions
+6 -4
View File
@@ -301,7 +301,7 @@ def parse_constants(f):
f.write("\n// Vendor Constants\n") f.write("\n// Vendor Constants\n")
fixes = '|'.join(ext_suffixes) fixes = '|'.join(ext_suffixes)
inner = r"((?:(?:" + fixes + r")\w+)|(?:\w+" + fixes + r"))" inner = r"((?:(?:" + fixes + r")\w+)|(?:\w+(?:" + fixes + r")\b))"
pattern = r"#define\s+VK_" + inner + r"\s*(.*?)\n" pattern = r"#define\s+VK_" + inner + r"\s*(.*?)\n"
data = re.findall(pattern, src, re.S) data = re.findall(pattern, src, re.S)
@@ -311,7 +311,11 @@ def parse_constants(f):
for name, value in data: for name, value in data:
value = remove_prefix(value, 'VK_') value = remove_prefix(value, 'VK_')
v = number_suffix_re.findall(value) v = number_suffix_re.findall(value)
if v: if value == "(~0U)":
value = "~u32(0)"
elif value == "(~0ULL)":
value = "~u64(0)"
elif v:
value = v[0] value = v[0]
f.write("{}{} :: {}\n".format(name, "".rjust(max_len-len(name)), value)) f.write("{}{} :: {}\n".format(name, "".rjust(max_len-len(name)), value))
f.write("\n") f.write("\n")
@@ -935,7 +939,6 @@ FALSE :: 0
QUEUE_FAMILY_IGNORED :: ~u32(0) QUEUE_FAMILY_IGNORED :: ~u32(0)
SUBPASS_EXTERNAL :: ~u32(0) SUBPASS_EXTERNAL :: ~u32(0)
MAX_PHYSICAL_DEVICE_NAME_SIZE :: 256 MAX_PHYSICAL_DEVICE_NAME_SIZE :: 256
MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT :: 32
UUID_SIZE :: 16 UUID_SIZE :: 16
MAX_MEMORY_TYPES :: 32 MAX_MEMORY_TYPES :: 32
MAX_MEMORY_HEAPS :: 16 MAX_MEMORY_HEAPS :: 16
@@ -946,7 +949,6 @@ LUID_SIZE_KHX :: 8
LUID_SIZE :: 8 LUID_SIZE :: 8
MAX_QUEUE_FAMILY_EXTERNAL :: ~u32(1) MAX_QUEUE_FAMILY_EXTERNAL :: ~u32(1)
MAX_GLOBAL_PRIORITY_SIZE :: 16 MAX_GLOBAL_PRIORITY_SIZE :: 16
MAX_GLOBAL_PRIORITY_SIZE_EXT :: MAX_GLOBAL_PRIORITY_SIZE
QUEUE_FAMILY_EXTERNAL :: MAX_QUEUE_FAMILY_EXTERNAL QUEUE_FAMILY_EXTERNAL :: MAX_QUEUE_FAMILY_EXTERNAL
// Vulkan Video API Constants // Vulkan Video API Constants
+7 -3
View File
@@ -39,7 +39,6 @@ FALSE :: 0
QUEUE_FAMILY_IGNORED :: ~u32(0) QUEUE_FAMILY_IGNORED :: ~u32(0)
SUBPASS_EXTERNAL :: ~u32(0) SUBPASS_EXTERNAL :: ~u32(0)
MAX_PHYSICAL_DEVICE_NAME_SIZE :: 256 MAX_PHYSICAL_DEVICE_NAME_SIZE :: 256
MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT :: 32
UUID_SIZE :: 16 UUID_SIZE :: 16
MAX_MEMORY_TYPES :: 32 MAX_MEMORY_TYPES :: 32
MAX_MEMORY_HEAPS :: 16 MAX_MEMORY_HEAPS :: 16
@@ -50,7 +49,6 @@ LUID_SIZE_KHX :: 8
LUID_SIZE :: 8 LUID_SIZE :: 8
MAX_QUEUE_FAMILY_EXTERNAL :: ~u32(1) MAX_QUEUE_FAMILY_EXTERNAL :: ~u32(1)
MAX_GLOBAL_PRIORITY_SIZE :: 16 MAX_GLOBAL_PRIORITY_SIZE :: 16
MAX_GLOBAL_PRIORITY_SIZE_EXT :: MAX_GLOBAL_PRIORITY_SIZE
QUEUE_FAMILY_EXTERNAL :: MAX_QUEUE_FAMILY_EXTERNAL QUEUE_FAMILY_EXTERNAL :: MAX_QUEUE_FAMILY_EXTERNAL
// Vulkan Video API Constants // Vulkan Video API Constants
@@ -630,6 +628,7 @@ EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME :: "VK_EXT_external_me
EXT_queue_family_foreign :: 1 EXT_queue_family_foreign :: 1
EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION :: 1 EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION :: 1
EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME :: "VK_EXT_queue_family_foreign" EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME :: "VK_EXT_queue_family_foreign"
QUEUE_FAMILY_FOREIGN_EXT :: 2
EXT_debug_utils :: 1 EXT_debug_utils :: 1
EXT_DEBUG_UTILS_SPEC_VERSION :: 2 EXT_DEBUG_UTILS_SPEC_VERSION :: 2
EXT_DEBUG_UTILS_EXTENSION_NAME :: "VK_EXT_debug_utils" EXT_DEBUG_UTILS_EXTENSION_NAME :: "VK_EXT_debug_utils"
@@ -690,7 +689,8 @@ NV_SHADING_RATE_IMAGE_EXTENSION_NAME :: "VK_NV_shading_rate
NV_ray_tracing :: 1 NV_ray_tracing :: 1
NV_RAY_TRACING_SPEC_VERSION :: 3 NV_RAY_TRACING_SPEC_VERSION :: 3
NV_RAY_TRACING_EXTENSION_NAME :: "VK_NV_ray_tracing" NV_RAY_TRACING_EXTENSION_NAME :: "VK_NV_ray_tracing"
SHADER_UNUSED_KHR :: 0 SHADER_UNUSED_KHR :: ~u32(0)
SHADER_UNUSED_NV :: SHADER_UNUSED_KHR
NV_representative_fragment_test :: 1 NV_representative_fragment_test :: 1
NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION :: 2 NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION :: 2
NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME :: "VK_NV_representative_fragment_test" NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME :: "VK_NV_representative_fragment_test"
@@ -975,6 +975,7 @@ EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME :: "VK_EXT_primitives_
EXT_global_priority_query :: 1 EXT_global_priority_query :: 1
EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION :: 1 EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION :: 1
EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME :: "VK_EXT_global_priority_query" EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME :: "VK_EXT_global_priority_query"
MAX_GLOBAL_PRIORITY_SIZE_EXT :: MAX_GLOBAL_PRIORITY_SIZE
EXT_image_view_min_lod :: 1 EXT_image_view_min_lod :: 1
EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION :: 1 EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION :: 1
EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME :: "VK_EXT_image_view_min_lod" EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME :: "VK_EXT_image_view_min_lod"
@@ -1002,6 +1003,7 @@ EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME :: "VK_EXT_pageable_de
EXT_image_sliced_view_of_3d :: 1 EXT_image_sliced_view_of_3d :: 1
EXT_IMAGE_SLICED_VIEW_OF_3D_SPEC_VERSION :: 1 EXT_IMAGE_SLICED_VIEW_OF_3D_SPEC_VERSION :: 1
EXT_IMAGE_SLICED_VIEW_OF_3D_EXTENSION_NAME :: "VK_EXT_image_sliced_view_of_3d" EXT_IMAGE_SLICED_VIEW_OF_3D_EXTENSION_NAME :: "VK_EXT_image_sliced_view_of_3d"
REMAINING_3D_SLICES_EXT :: ~u32(0)
EXT_depth_clamp_zero_one :: 1 EXT_depth_clamp_zero_one :: 1
EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION :: 1 EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION :: 1
EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME :: "VK_EXT_depth_clamp_zero_one" EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME :: "VK_EXT_depth_clamp_zero_one"
@@ -1042,6 +1044,7 @@ EXT_subpass_merge_feedback :: 1
EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION :: 2 EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION :: 2
EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME :: "VK_EXT_subpass_merge_feedback" EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME :: "VK_EXT_subpass_merge_feedback"
EXT_shader_module_identifier :: 1 EXT_shader_module_identifier :: 1
MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT :: 32
EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION :: 1 EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION :: 1
EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME :: "VK_EXT_shader_module_identifier" EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME :: "VK_EXT_shader_module_identifier"
EXT_rasterization_order_attachment_access :: 1 EXT_rasterization_order_attachment_access :: 1
@@ -1122,6 +1125,7 @@ NV_CLUSTER_ACCELERATION_STRUCTURE_EXTENSION_NAME :: "VK_NV_cluster_acce
NV_partitioned_acceleration_structure :: 1 NV_partitioned_acceleration_structure :: 1
NV_PARTITIONED_ACCELERATION_STRUCTURE_SPEC_VERSION :: 1 NV_PARTITIONED_ACCELERATION_STRUCTURE_SPEC_VERSION :: 1
NV_PARTITIONED_ACCELERATION_STRUCTURE_EXTENSION_NAME :: "VK_NV_partitioned_acceleration_structure" NV_PARTITIONED_ACCELERATION_STRUCTURE_EXTENSION_NAME :: "VK_NV_partitioned_acceleration_structure"
PARTITIONED_ACCELERATION_STRUCTURE_PARTITION_INDEX_GLOBAL_NV :: ~u32(0)
EXT_device_generated_commands :: 1 EXT_device_generated_commands :: 1
EXT_DEVICE_GENERATED_COMMANDS_SPEC_VERSION :: 1 EXT_DEVICE_GENERATED_COMMANDS_SPEC_VERSION :: 1
EXT_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME :: "VK_EXT_device_generated_commands" EXT_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME :: "VK_EXT_device_generated_commands"