generator: Do not generate code for "disabled" extensions (#448)

It is unlikely that disabled, reserved extensions (without naming
whatsoever) are used through Ash bindings generated from Vulkan-Headers
releases, and are best ignored to reduce diff noise and spurious issues
[1] with unfinished extension definitions.

This approach matches what is defined in the registry spec for
`supported="disabled"` [2]:

    use `supported="disabled"` to indicate this extension should never
    be processed.

[1]: https://github.com/KhronosGroup/Vulkan-Docs/issues/1549
[2]: b4e8cd820b/registry.txt (L1302-L1306)
This commit is contained in:
Marijn Suijten 2022-12-12 01:36:25 +01:00 committed by GitHub
parent 69c56eaa03
commit 86b0f45e48
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 26 additions and 3926 deletions

View file

@ -251,7 +251,6 @@ impl fmt::Debug for AccessFlags2 {
AccessFlags2::VIDEO_DECODE_WRITE_KHR.0, AccessFlags2::VIDEO_DECODE_WRITE_KHR.0,
"VIDEO_DECODE_WRITE_KHR", "VIDEO_DECODE_WRITE_KHR",
), ),
(AccessFlags2::RESERVED_46_EXT.0, "RESERVED_46_EXT"),
( (
AccessFlags2::VIDEO_ENCODE_READ_KHR.0, AccessFlags2::VIDEO_ENCODE_READ_KHR.0,
"VIDEO_ENCODE_READ_KHR", "VIDEO_ENCODE_READ_KHR",
@ -562,7 +561,6 @@ impl fmt::Debug for BufferUsageFlags {
BufferUsageFlags::CONDITIONAL_RENDERING_EXT.0, BufferUsageFlags::CONDITIONAL_RENDERING_EXT.0,
"CONDITIONAL_RENDERING_EXT", "CONDITIONAL_RENDERING_EXT",
), ),
(BufferUsageFlags::RESERVED_25_AMD.0, "RESERVED_25_AMD"),
( (
BufferUsageFlags::ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR.0, BufferUsageFlags::ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR.0,
"ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR", "ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR",
@ -575,7 +573,6 @@ impl fmt::Debug for BufferUsageFlags {
BufferUsageFlags::SHADER_BINDING_TABLE_KHR.0, BufferUsageFlags::SHADER_BINDING_TABLE_KHR.0,
"SHADER_BINDING_TABLE_KHR", "SHADER_BINDING_TABLE_KHR",
), ),
(BufferUsageFlags::RESERVED_18_QCOM.0, "RESERVED_18_QCOM"),
( (
BufferUsageFlags::VIDEO_ENCODE_DST_KHR.0, BufferUsageFlags::VIDEO_ENCODE_DST_KHR.0,
"VIDEO_ENCODE_DST_KHR", "VIDEO_ENCODE_DST_KHR",
@ -654,14 +651,6 @@ impl fmt::Debug for BuildAccelerationStructureFlagsKHR {
BuildAccelerationStructureFlagsKHR::ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT.0, BuildAccelerationStructureFlagsKHR::ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT.0,
"ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT", "ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT",
), ),
(
BuildAccelerationStructureFlagsKHR::RESERVED_9_NV.0,
"RESERVED_9_NV",
),
(
BuildAccelerationStructureFlagsKHR::RESERVED_10_NV.0,
"RESERVED_10_NV",
),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
@ -838,16 +827,10 @@ impl fmt::Debug for CommandPoolCreateFlags {
} }
impl fmt::Debug for CommandPoolResetFlags { impl fmt::Debug for CommandPoolResetFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[ const KNOWN: &[(Flags, &str)] = &[(
(
CommandPoolResetFlags::RELEASE_RESOURCES.0, CommandPoolResetFlags::RELEASE_RESOURCES.0,
"RELEASE_RESOURCES", "RELEASE_RESOURCES",
), )];
(
CommandPoolResetFlags::RESERVED_1_COREAVI.0,
"RESERVED_1_COREAVI",
),
];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
} }
@ -1154,7 +1137,6 @@ impl fmt::Debug for DescriptorBindingFlags {
DescriptorBindingFlags::VARIABLE_DESCRIPTOR_COUNT.0, DescriptorBindingFlags::VARIABLE_DESCRIPTOR_COUNT.0,
"VARIABLE_DESCRIPTOR_COUNT", "VARIABLE_DESCRIPTOR_COUNT",
), ),
(DescriptorBindingFlags::RESERVED_4_QCOM.0, "RESERVED_4_QCOM"),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
@ -1196,10 +1178,6 @@ impl fmt::Debug for DescriptorSetLayoutCreateFlags {
DescriptorSetLayoutCreateFlags::EMBEDDED_IMMUTABLE_SAMPLERS_EXT.0, DescriptorSetLayoutCreateFlags::EMBEDDED_IMMUTABLE_SAMPLERS_EXT.0,
"EMBEDDED_IMMUTABLE_SAMPLERS_EXT", "EMBEDDED_IMMUTABLE_SAMPLERS_EXT",
), ),
(
DescriptorSetLayoutCreateFlags::RESERVED_3_AMD.0,
"RESERVED_3_AMD",
),
( (
DescriptorSetLayoutCreateFlags::HOST_ONLY_POOL_EXT.0, DescriptorSetLayoutCreateFlags::HOST_ONLY_POOL_EXT.0,
"HOST_ONLY_POOL_EXT", "HOST_ONLY_POOL_EXT",
@ -1397,10 +1375,7 @@ impl fmt::Debug for DeviceMemoryReportFlagsEXT {
} }
impl fmt::Debug for DeviceQueueCreateFlags { impl fmt::Debug for DeviceQueueCreateFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[ const KNOWN: &[(Flags, &str)] = &[(DeviceQueueCreateFlags::PROTECTED.0, "PROTECTED")];
(DeviceQueueCreateFlags::RESERVED_1_QCOM.0, "RESERVED_1_QCOM"),
(DeviceQueueCreateFlags::PROTECTED.0, "PROTECTED"),
];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
} }
@ -1660,14 +1635,6 @@ impl fmt::Debug for ExternalFenceHandleTypeFlags {
"OPAQUE_WIN32_KMT", "OPAQUE_WIN32_KMT",
), ),
(ExternalFenceHandleTypeFlags::SYNC_FD.0, "SYNC_FD"), (ExternalFenceHandleTypeFlags::SYNC_FD.0, "SYNC_FD"),
(
ExternalFenceHandleTypeFlags::RESERVED_4_NV.0,
"RESERVED_4_NV",
),
(
ExternalFenceHandleTypeFlags::RESERVED_5_NV.0,
"RESERVED_5_NV",
),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
@ -1744,10 +1711,6 @@ impl fmt::Debug for ExternalMemoryHandleTypeFlags {
ExternalMemoryHandleTypeFlags::RDMA_ADDRESS_NV.0, ExternalMemoryHandleTypeFlags::RDMA_ADDRESS_NV.0,
"RDMA_ADDRESS_NV", "RDMA_ADDRESS_NV",
), ),
(
ExternalMemoryHandleTypeFlags::RESERVED_13_NV.0,
"RESERVED_13_NV",
),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
@ -1805,10 +1768,6 @@ impl fmt::Debug for ExternalSemaphoreHandleTypeFlags {
ExternalSemaphoreHandleTypeFlags::ZIRCON_EVENT_FUCHSIA.0, ExternalSemaphoreHandleTypeFlags::ZIRCON_EVENT_FUCHSIA.0,
"ZIRCON_EVENT_FUCHSIA", "ZIRCON_EVENT_FUCHSIA",
), ),
(
ExternalSemaphoreHandleTypeFlags::RESERVED_5_NV.0,
"RESERVED_5_NV",
),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
@ -2036,36 +1995,6 @@ impl fmt::Debug for Format {
Self::PVRTC1_4BPP_SRGB_BLOCK_IMG => Some("PVRTC1_4BPP_SRGB_BLOCK_IMG"), Self::PVRTC1_4BPP_SRGB_BLOCK_IMG => Some("PVRTC1_4BPP_SRGB_BLOCK_IMG"),
Self::PVRTC2_2BPP_SRGB_BLOCK_IMG => Some("PVRTC2_2BPP_SRGB_BLOCK_IMG"), Self::PVRTC2_2BPP_SRGB_BLOCK_IMG => Some("PVRTC2_2BPP_SRGB_BLOCK_IMG"),
Self::PVRTC2_4BPP_SRGB_BLOCK_IMG => Some("PVRTC2_4BPP_SRGB_BLOCK_IMG"), Self::PVRTC2_4BPP_SRGB_BLOCK_IMG => Some("PVRTC2_4BPP_SRGB_BLOCK_IMG"),
Self::ASTC_3X3X3_UNORM_BLOCK_EXT => Some("ASTC_3X3X3_UNORM_BLOCK_EXT"),
Self::ASTC_3X3X3_SRGB_BLOCK_EXT => Some("ASTC_3X3X3_SRGB_BLOCK_EXT"),
Self::ASTC_3X3X3_SFLOAT_BLOCK_EXT => Some("ASTC_3X3X3_SFLOAT_BLOCK_EXT"),
Self::ASTC_4X3X3_UNORM_BLOCK_EXT => Some("ASTC_4X3X3_UNORM_BLOCK_EXT"),
Self::ASTC_4X3X3_SRGB_BLOCK_EXT => Some("ASTC_4X3X3_SRGB_BLOCK_EXT"),
Self::ASTC_4X3X3_SFLOAT_BLOCK_EXT => Some("ASTC_4X3X3_SFLOAT_BLOCK_EXT"),
Self::ASTC_4X4X3_UNORM_BLOCK_EXT => Some("ASTC_4X4X3_UNORM_BLOCK_EXT"),
Self::ASTC_4X4X3_SRGB_BLOCK_EXT => Some("ASTC_4X4X3_SRGB_BLOCK_EXT"),
Self::ASTC_4X4X3_SFLOAT_BLOCK_EXT => Some("ASTC_4X4X3_SFLOAT_BLOCK_EXT"),
Self::ASTC_4X4X4_UNORM_BLOCK_EXT => Some("ASTC_4X4X4_UNORM_BLOCK_EXT"),
Self::ASTC_4X4X4_SRGB_BLOCK_EXT => Some("ASTC_4X4X4_SRGB_BLOCK_EXT"),
Self::ASTC_4X4X4_SFLOAT_BLOCK_EXT => Some("ASTC_4X4X4_SFLOAT_BLOCK_EXT"),
Self::ASTC_5X4X4_UNORM_BLOCK_EXT => Some("ASTC_5X4X4_UNORM_BLOCK_EXT"),
Self::ASTC_5X4X4_SRGB_BLOCK_EXT => Some("ASTC_5X4X4_SRGB_BLOCK_EXT"),
Self::ASTC_5X4X4_SFLOAT_BLOCK_EXT => Some("ASTC_5X4X4_SFLOAT_BLOCK_EXT"),
Self::ASTC_5X5X4_UNORM_BLOCK_EXT => Some("ASTC_5X5X4_UNORM_BLOCK_EXT"),
Self::ASTC_5X5X4_SRGB_BLOCK_EXT => Some("ASTC_5X5X4_SRGB_BLOCK_EXT"),
Self::ASTC_5X5X4_SFLOAT_BLOCK_EXT => Some("ASTC_5X5X4_SFLOAT_BLOCK_EXT"),
Self::ASTC_5X5X5_UNORM_BLOCK_EXT => Some("ASTC_5X5X5_UNORM_BLOCK_EXT"),
Self::ASTC_5X5X5_SRGB_BLOCK_EXT => Some("ASTC_5X5X5_SRGB_BLOCK_EXT"),
Self::ASTC_5X5X5_SFLOAT_BLOCK_EXT => Some("ASTC_5X5X5_SFLOAT_BLOCK_EXT"),
Self::ASTC_6X5X5_UNORM_BLOCK_EXT => Some("ASTC_6X5X5_UNORM_BLOCK_EXT"),
Self::ASTC_6X5X5_SRGB_BLOCK_EXT => Some("ASTC_6X5X5_SRGB_BLOCK_EXT"),
Self::ASTC_6X5X5_SFLOAT_BLOCK_EXT => Some("ASTC_6X5X5_SFLOAT_BLOCK_EXT"),
Self::ASTC_6X6X5_UNORM_BLOCK_EXT => Some("ASTC_6X6X5_UNORM_BLOCK_EXT"),
Self::ASTC_6X6X5_SRGB_BLOCK_EXT => Some("ASTC_6X6X5_SRGB_BLOCK_EXT"),
Self::ASTC_6X6X5_SFLOAT_BLOCK_EXT => Some("ASTC_6X6X5_SFLOAT_BLOCK_EXT"),
Self::ASTC_6X6X6_UNORM_BLOCK_EXT => Some("ASTC_6X6X6_UNORM_BLOCK_EXT"),
Self::ASTC_6X6X6_SRGB_BLOCK_EXT => Some("ASTC_6X6X6_SRGB_BLOCK_EXT"),
Self::ASTC_6X6X6_SFLOAT_BLOCK_EXT => Some("ASTC_6X6X6_SFLOAT_BLOCK_EXT"),
Self::R16G16_S10_5_NV => Some("R16G16_S10_5_NV"), Self::R16G16_S10_5_NV => Some("R16G16_S10_5_NV"),
Self::G8B8G8R8_422_UNORM => Some("G8B8G8R8_422_UNORM"), Self::G8B8G8R8_422_UNORM => Some("G8B8G8R8_422_UNORM"),
Self::B8G8R8G8_422_UNORM => Some("B8G8R8G8_422_UNORM"), Self::B8G8R8G8_422_UNORM => Some("B8G8R8G8_422_UNORM"),
@ -2170,7 +2099,7 @@ impl fmt::Debug for FormatFeatureFlags {
} }
impl fmt::Debug for FormatFeatureFlags2 { impl fmt::Debug for FormatFeatureFlags2 {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN : & [(Flags64 , & str)] = & [(FormatFeatureFlags2 :: SAMPLED_IMAGE . 0 , "SAMPLED_IMAGE") , (FormatFeatureFlags2 :: STORAGE_IMAGE . 0 , "STORAGE_IMAGE") , (FormatFeatureFlags2 :: STORAGE_IMAGE_ATOMIC . 0 , "STORAGE_IMAGE_ATOMIC") , (FormatFeatureFlags2 :: UNIFORM_TEXEL_BUFFER . 0 , "UNIFORM_TEXEL_BUFFER") , (FormatFeatureFlags2 :: STORAGE_TEXEL_BUFFER . 0 , "STORAGE_TEXEL_BUFFER") , (FormatFeatureFlags2 :: STORAGE_TEXEL_BUFFER_ATOMIC . 0 , "STORAGE_TEXEL_BUFFER_ATOMIC") , (FormatFeatureFlags2 :: VERTEX_BUFFER . 0 , "VERTEX_BUFFER") , (FormatFeatureFlags2 :: COLOR_ATTACHMENT . 0 , "COLOR_ATTACHMENT") , (FormatFeatureFlags2 :: COLOR_ATTACHMENT_BLEND . 0 , "COLOR_ATTACHMENT_BLEND") , (FormatFeatureFlags2 :: DEPTH_STENCIL_ATTACHMENT . 0 , "DEPTH_STENCIL_ATTACHMENT") , (FormatFeatureFlags2 :: BLIT_SRC . 0 , "BLIT_SRC") , (FormatFeatureFlags2 :: BLIT_DST . 0 , "BLIT_DST") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_LINEAR . 0 , "SAMPLED_IMAGE_FILTER_LINEAR") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_CUBIC . 0 , "SAMPLED_IMAGE_FILTER_CUBIC") , (FormatFeatureFlags2 :: TRANSFER_SRC . 0 , "TRANSFER_SRC") , (FormatFeatureFlags2 :: TRANSFER_DST . 0 , "TRANSFER_DST") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_MINMAX . 0 , "SAMPLED_IMAGE_FILTER_MINMAX") , (FormatFeatureFlags2 :: MIDPOINT_CHROMA_SAMPLES . 0 , "MIDPOINT_CHROMA_SAMPLES") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE") , (FormatFeatureFlags2 :: DISJOINT . 0 , "DISJOINT") , (FormatFeatureFlags2 :: COSITED_CHROMA_SAMPLES . 0 , "COSITED_CHROMA_SAMPLES") , (FormatFeatureFlags2 :: STORAGE_READ_WITHOUT_FORMAT . 0 , "STORAGE_READ_WITHOUT_FORMAT") , (FormatFeatureFlags2 :: STORAGE_WRITE_WITHOUT_FORMAT . 0 , "STORAGE_WRITE_WITHOUT_FORMAT") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_DEPTH_COMPARISON . 0 , "SAMPLED_IMAGE_DEPTH_COMPARISON") , (FormatFeatureFlags2 :: VIDEO_DECODE_OUTPUT_KHR . 0 , "VIDEO_DECODE_OUTPUT_KHR") , (FormatFeatureFlags2 :: VIDEO_DECODE_DPB_KHR . 0 , "VIDEO_DECODE_DPB_KHR") , (FormatFeatureFlags2 :: ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR . 0 , "ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR") , (FormatFeatureFlags2 :: FRAGMENT_DENSITY_MAP_EXT . 0 , "FRAGMENT_DENSITY_MAP_EXT") , (FormatFeatureFlags2 :: FRAGMENT_SHADING_RATE_ATTACHMENT_KHR . 0 , "FRAGMENT_SHADING_RATE_ATTACHMENT_KHR") , (FormatFeatureFlags2 :: RESERVED_44_EXT . 0 , "RESERVED_44_EXT") , (FormatFeatureFlags2 :: RESERVED_45_EXT . 0 , "RESERVED_45_EXT") , (FormatFeatureFlags2 :: VIDEO_ENCODE_INPUT_KHR . 0 , "VIDEO_ENCODE_INPUT_KHR") , (FormatFeatureFlags2 :: VIDEO_ENCODE_DPB_KHR . 0 , "VIDEO_ENCODE_DPB_KHR") , (FormatFeatureFlags2 :: LINEAR_COLOR_ATTACHMENT_NV . 0 , "LINEAR_COLOR_ATTACHMENT_NV") , (FormatFeatureFlags2 :: WEIGHT_IMAGE_QCOM . 0 , "WEIGHT_IMAGE_QCOM") , (FormatFeatureFlags2 :: WEIGHT_SAMPLED_IMAGE_QCOM . 0 , "WEIGHT_SAMPLED_IMAGE_QCOM") , (FormatFeatureFlags2 :: BLOCK_MATCHING_QCOM . 0 , "BLOCK_MATCHING_QCOM") , (FormatFeatureFlags2 :: BOX_FILTER_SAMPLED_QCOM . 0 , "BOX_FILTER_SAMPLED_QCOM") , (FormatFeatureFlags2 :: RESERVED_39_EXT . 0 , "RESERVED_39_EXT") , (FormatFeatureFlags2 :: OPTICAL_FLOW_IMAGE_NV . 0 , "OPTICAL_FLOW_IMAGE_NV") , (FormatFeatureFlags2 :: OPTICAL_FLOW_VECTOR_NV . 0 , "OPTICAL_FLOW_VECTOR_NV") , (FormatFeatureFlags2 :: OPTICAL_FLOW_COST_NV . 0 , "OPTICAL_FLOW_COST_NV")] ; const KNOWN : & [(Flags64 , & str)] = & [(FormatFeatureFlags2 :: SAMPLED_IMAGE . 0 , "SAMPLED_IMAGE") , (FormatFeatureFlags2 :: STORAGE_IMAGE . 0 , "STORAGE_IMAGE") , (FormatFeatureFlags2 :: STORAGE_IMAGE_ATOMIC . 0 , "STORAGE_IMAGE_ATOMIC") , (FormatFeatureFlags2 :: UNIFORM_TEXEL_BUFFER . 0 , "UNIFORM_TEXEL_BUFFER") , (FormatFeatureFlags2 :: STORAGE_TEXEL_BUFFER . 0 , "STORAGE_TEXEL_BUFFER") , (FormatFeatureFlags2 :: STORAGE_TEXEL_BUFFER_ATOMIC . 0 , "STORAGE_TEXEL_BUFFER_ATOMIC") , (FormatFeatureFlags2 :: VERTEX_BUFFER . 0 , "VERTEX_BUFFER") , (FormatFeatureFlags2 :: COLOR_ATTACHMENT . 0 , "COLOR_ATTACHMENT") , (FormatFeatureFlags2 :: COLOR_ATTACHMENT_BLEND . 0 , "COLOR_ATTACHMENT_BLEND") , (FormatFeatureFlags2 :: DEPTH_STENCIL_ATTACHMENT . 0 , "DEPTH_STENCIL_ATTACHMENT") , (FormatFeatureFlags2 :: BLIT_SRC . 0 , "BLIT_SRC") , (FormatFeatureFlags2 :: BLIT_DST . 0 , "BLIT_DST") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_LINEAR . 0 , "SAMPLED_IMAGE_FILTER_LINEAR") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_CUBIC . 0 , "SAMPLED_IMAGE_FILTER_CUBIC") , (FormatFeatureFlags2 :: TRANSFER_SRC . 0 , "TRANSFER_SRC") , (FormatFeatureFlags2 :: TRANSFER_DST . 0 , "TRANSFER_DST") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_MINMAX . 0 , "SAMPLED_IMAGE_FILTER_MINMAX") , (FormatFeatureFlags2 :: MIDPOINT_CHROMA_SAMPLES . 0 , "MIDPOINT_CHROMA_SAMPLES") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE") , (FormatFeatureFlags2 :: DISJOINT . 0 , "DISJOINT") , (FormatFeatureFlags2 :: COSITED_CHROMA_SAMPLES . 0 , "COSITED_CHROMA_SAMPLES") , (FormatFeatureFlags2 :: STORAGE_READ_WITHOUT_FORMAT . 0 , "STORAGE_READ_WITHOUT_FORMAT") , (FormatFeatureFlags2 :: STORAGE_WRITE_WITHOUT_FORMAT . 0 , "STORAGE_WRITE_WITHOUT_FORMAT") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_DEPTH_COMPARISON . 0 , "SAMPLED_IMAGE_DEPTH_COMPARISON") , (FormatFeatureFlags2 :: VIDEO_DECODE_OUTPUT_KHR . 0 , "VIDEO_DECODE_OUTPUT_KHR") , (FormatFeatureFlags2 :: VIDEO_DECODE_DPB_KHR . 0 , "VIDEO_DECODE_DPB_KHR") , (FormatFeatureFlags2 :: ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR . 0 , "ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR") , (FormatFeatureFlags2 :: FRAGMENT_DENSITY_MAP_EXT . 0 , "FRAGMENT_DENSITY_MAP_EXT") , (FormatFeatureFlags2 :: FRAGMENT_SHADING_RATE_ATTACHMENT_KHR . 0 , "FRAGMENT_SHADING_RATE_ATTACHMENT_KHR") , (FormatFeatureFlags2 :: VIDEO_ENCODE_INPUT_KHR . 0 , "VIDEO_ENCODE_INPUT_KHR") , (FormatFeatureFlags2 :: VIDEO_ENCODE_DPB_KHR . 0 , "VIDEO_ENCODE_DPB_KHR") , (FormatFeatureFlags2 :: LINEAR_COLOR_ATTACHMENT_NV . 0 , "LINEAR_COLOR_ATTACHMENT_NV") , (FormatFeatureFlags2 :: WEIGHT_IMAGE_QCOM . 0 , "WEIGHT_IMAGE_QCOM") , (FormatFeatureFlags2 :: WEIGHT_SAMPLED_IMAGE_QCOM . 0 , "WEIGHT_SAMPLED_IMAGE_QCOM") , (FormatFeatureFlags2 :: BLOCK_MATCHING_QCOM . 0 , "BLOCK_MATCHING_QCOM") , (FormatFeatureFlags2 :: BOX_FILTER_SAMPLED_QCOM . 0 , "BOX_FILTER_SAMPLED_QCOM") , (FormatFeatureFlags2 :: OPTICAL_FLOW_IMAGE_NV . 0 , "OPTICAL_FLOW_IMAGE_NV") , (FormatFeatureFlags2 :: OPTICAL_FLOW_VECTOR_NV . 0 , "OPTICAL_FLOW_VECTOR_NV") , (FormatFeatureFlags2 :: OPTICAL_FLOW_COST_NV . 0 , "OPTICAL_FLOW_COST_NV")] ;
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
} }
@ -2509,7 +2438,6 @@ impl fmt::Debug for ImageCreateFlags {
"SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_EXT", "SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_EXT",
), ),
(ImageCreateFlags::SUBSAMPLED_EXT.0, "SUBSAMPLED_EXT"), (ImageCreateFlags::SUBSAMPLED_EXT.0, "SUBSAMPLED_EXT"),
(ImageCreateFlags::RESERVED_19_EXT.0, "RESERVED_19_EXT"),
( (
ImageCreateFlags::DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT.0, ImageCreateFlags::DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT.0,
"DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT", "DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT",
@ -2665,8 +2593,6 @@ impl fmt::Debug for ImageUsageFlags {
ImageUsageFlags::VIDEO_DECODE_DPB_KHR.0, ImageUsageFlags::VIDEO_DECODE_DPB_KHR.0,
"VIDEO_DECODE_DPB_KHR", "VIDEO_DECODE_DPB_KHR",
), ),
(ImageUsageFlags::RESERVED_16_QCOM.0, "RESERVED_16_QCOM"),
(ImageUsageFlags::RESERVED_17_QCOM.0, "RESERVED_17_QCOM"),
( (
ImageUsageFlags::FRAGMENT_DENSITY_MAP_EXT.0, ImageUsageFlags::FRAGMENT_DENSITY_MAP_EXT.0,
"FRAGMENT_DENSITY_MAP_EXT", "FRAGMENT_DENSITY_MAP_EXT",
@ -2675,7 +2601,6 @@ impl fmt::Debug for ImageUsageFlags {
ImageUsageFlags::FRAGMENT_SHADING_RATE_ATTACHMENT_KHR.0, ImageUsageFlags::FRAGMENT_SHADING_RATE_ATTACHMENT_KHR.0,
"FRAGMENT_SHADING_RATE_ATTACHMENT_KHR", "FRAGMENT_SHADING_RATE_ATTACHMENT_KHR",
), ),
(ImageUsageFlags::RESERVED_22_EXT.0, "RESERVED_22_EXT"),
( (
ImageUsageFlags::VIDEO_ENCODE_DST_KHR.0, ImageUsageFlags::VIDEO_ENCODE_DST_KHR.0,
"VIDEO_ENCODE_DST_KHR", "VIDEO_ENCODE_DST_KHR",
@ -2720,7 +2645,6 @@ impl fmt::Debug for ImageViewCreateFlags {
ImageViewCreateFlags::FRAGMENT_DENSITY_MAP_DEFERRED_EXT.0, ImageViewCreateFlags::FRAGMENT_DENSITY_MAP_DEFERRED_EXT.0,
"FRAGMENT_DENSITY_MAP_DEFERRED_EXT", "FRAGMENT_DENSITY_MAP_DEFERRED_EXT",
), ),
(ImageViewCreateFlags::RESERVED_3_EXT.0, "RESERVED_3_EXT"),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
@ -2905,7 +2829,6 @@ impl fmt::Debug for MemoryHeapFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[ const KNOWN: &[(Flags, &str)] = &[
(MemoryHeapFlags::DEVICE_LOCAL.0, "DEVICE_LOCAL"), (MemoryHeapFlags::DEVICE_LOCAL.0, "DEVICE_LOCAL"),
(MemoryHeapFlags::RESERVED_2_KHR.0, "RESERVED_2_KHR"),
(MemoryHeapFlags::MULTI_INSTANCE.0, "MULTI_INSTANCE"), (MemoryHeapFlags::MULTI_INSTANCE.0, "MULTI_INSTANCE"),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
@ -3287,14 +3210,10 @@ impl fmt::Debug for PipelineBindPoint {
} }
impl fmt::Debug for PipelineCacheCreateFlags { impl fmt::Debug for PipelineCacheCreateFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[ const KNOWN: &[(Flags, &str)] = &[(
(PipelineCacheCreateFlags::RESERVED_1_EXT.0, "RESERVED_1_EXT"),
(PipelineCacheCreateFlags::RESERVED_2_KHR.0, "RESERVED_2_KHR"),
(
PipelineCacheCreateFlags::EXTERNALLY_SYNCHRONIZED.0, PipelineCacheCreateFlags::EXTERNALLY_SYNCHRONIZED.0,
"EXTERNALLY_SYNCHRONIZED", "EXTERNALLY_SYNCHRONIZED",
), )];
];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
} }
@ -3434,7 +3353,6 @@ impl fmt::Debug for PipelineCreateFlags {
PipelineCreateFlags::RAY_TRACING_OPACITY_MICROMAP_EXT.0, PipelineCreateFlags::RAY_TRACING_OPACITY_MICROMAP_EXT.0,
"RAY_TRACING_OPACITY_MICROMAP_EXT", "RAY_TRACING_OPACITY_MICROMAP_EXT",
), ),
(PipelineCreateFlags::RESERVED_28_NV.0, "RESERVED_28_NV"),
( (
PipelineCreateFlags::NO_PROTECTED_ACCESS_EXT.0, PipelineCreateFlags::NO_PROTECTED_ACCESS_EXT.0,
"NO_PROTECTED_ACCESS_EXT", "NO_PROTECTED_ACCESS_EXT",
@ -3518,16 +3436,10 @@ impl fmt::Debug for PipelineInputAssemblyStateCreateFlags {
} }
impl fmt::Debug for PipelineLayoutCreateFlags { impl fmt::Debug for PipelineLayoutCreateFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[ const KNOWN: &[(Flags, &str)] = &[(
(
PipelineLayoutCreateFlags::RESERVED_0_AMD.0,
"RESERVED_0_AMD",
),
(
PipelineLayoutCreateFlags::INDEPENDENT_SETS_EXT.0, PipelineLayoutCreateFlags::INDEPENDENT_SETS_EXT.0,
"INDEPENDENT_SETS_EXT", "INDEPENDENT_SETS_EXT",
), )];
];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
} }
@ -3596,10 +3508,6 @@ impl fmt::Debug for PipelineRobustnessImageBehaviorEXT {
impl fmt::Debug for PipelineShaderStageCreateFlags { impl fmt::Debug for PipelineShaderStageCreateFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[ const KNOWN: &[(Flags, &str)] = &[
(
PipelineShaderStageCreateFlags::RESERVED_3_KHR.0,
"RESERVED_3_KHR",
),
( (
PipelineShaderStageCreateFlags::ALLOW_VARYING_SUBGROUP_SIZE.0, PipelineShaderStageCreateFlags::ALLOW_VARYING_SUBGROUP_SIZE.0,
"ALLOW_VARYING_SUBGROUP_SIZE", "ALLOW_VARYING_SUBGROUP_SIZE",
@ -3779,10 +3687,6 @@ impl fmt::Debug for PipelineStageFlags2 {
PipelineStageFlags2::MICROMAP_BUILD_EXT.0, PipelineStageFlags2::MICROMAP_BUILD_EXT.0,
"MICROMAP_BUILD_EXT", "MICROMAP_BUILD_EXT",
), ),
(
PipelineStageFlags2::RESEVED_41_HUAWEI.0,
"RESEVED_41_HUAWEI",
),
(PipelineStageFlags2::OPTICAL_FLOW_NV.0, "OPTICAL_FLOW_NV"), (PipelineStageFlags2::OPTICAL_FLOW_NV.0, "OPTICAL_FLOW_NV"),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
@ -4061,9 +3965,7 @@ impl fmt::Debug for QueueFlags {
(QueueFlags::TRANSFER.0, "TRANSFER"), (QueueFlags::TRANSFER.0, "TRANSFER"),
(QueueFlags::SPARSE_BINDING.0, "SPARSE_BINDING"), (QueueFlags::SPARSE_BINDING.0, "SPARSE_BINDING"),
(QueueFlags::VIDEO_DECODE_KHR.0, "VIDEO_DECODE_KHR"), (QueueFlags::VIDEO_DECODE_KHR.0, "VIDEO_DECODE_KHR"),
(QueueFlags::RESERVED_9_EXT.0, "RESERVED_9_EXT"),
(QueueFlags::VIDEO_ENCODE_KHR.0, "VIDEO_ENCODE_KHR"), (QueueFlags::VIDEO_ENCODE_KHR.0, "VIDEO_ENCODE_KHR"),
(QueueFlags::RESERVED_7_QCOM.0, "RESERVED_7_QCOM"),
(QueueFlags::OPTICAL_FLOW_NV.0, "OPTICAL_FLOW_NV"), (QueueFlags::OPTICAL_FLOW_NV.0, "OPTICAL_FLOW_NV"),
(QueueFlags::PROTECTED.0, "PROTECTED"), (QueueFlags::PROTECTED.0, "PROTECTED"),
]; ];
@ -4131,10 +4033,8 @@ impl fmt::Debug for RayTracingShaderGroupTypeKHR {
} }
impl fmt::Debug for RenderPassCreateFlags { impl fmt::Debug for RenderPassCreateFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[ const KNOWN: &[(Flags, &str)] =
(RenderPassCreateFlags::RESERVED_0_KHR.0, "RESERVED_0_KHR"), &[(RenderPassCreateFlags::TRANSFORM_QCOM.0, "TRANSFORM_QCOM")];
(RenderPassCreateFlags::TRANSFORM_QCOM.0, "TRANSFORM_QCOM"),
];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
} }
@ -4423,10 +4323,6 @@ impl fmt::Debug for ShaderStageFlags {
ShaderStageFlags::SUBPASS_SHADING_HUAWEI.0, ShaderStageFlags::SUBPASS_SHADING_HUAWEI.0,
"SUBPASS_SHADING_HUAWEI", "SUBPASS_SHADING_HUAWEI",
), ),
(ShaderStageFlags::RESERVED_19_HUAWEI.0, "RESERVED_19_HUAWEI"),
(ShaderStageFlags::EXT_483_RESERVE_15.0, "EXT_483_RESERVE_15"),
(ShaderStageFlags::EXT_483_RESERVE_16.0, "EXT_483_RESERVE_16"),
(ShaderStageFlags::EXT_483_RESERVE_17.0, "EXT_483_RESERVE_17"),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }
@ -5420,7 +5316,6 @@ impl fmt::Debug for StructureType {
Self::DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV => { Self::DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV => {
Some("DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV") Some("DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV")
} }
Self::RESERVED_QCOM => Some("RESERVED_QCOM"),
Self::EXPORT_METAL_OBJECT_CREATE_INFO_EXT => { Self::EXPORT_METAL_OBJECT_CREATE_INFO_EXT => {
Some("EXPORT_METAL_OBJECT_CREATE_INFO_EXT") Some("EXPORT_METAL_OBJECT_CREATE_INFO_EXT")
} }
@ -6322,8 +6217,6 @@ impl fmt::Debug for SwapchainCreateFlagsKHR {
), ),
(SwapchainCreateFlagsKHR::PROTECTED.0, "PROTECTED"), (SwapchainCreateFlagsKHR::PROTECTED.0, "PROTECTED"),
(SwapchainCreateFlagsKHR::MUTABLE_FORMAT.0, "MUTABLE_FORMAT"), (SwapchainCreateFlagsKHR::MUTABLE_FORMAT.0, "MUTABLE_FORMAT"),
(SwapchainCreateFlagsKHR::RESERVED_4_EXT.0, "RESERVED_4_EXT"),
(SwapchainCreateFlagsKHR::RESERVED_3_SEC.0, "RESERVED_3_SEC"),
]; ];
debug_flags(f, KNOWN, self.0) debug_flags(f, KNOWN, self.0)
} }

File diff suppressed because it is too large Load diff

View file

@ -2513,6 +2513,16 @@ pub fn write_source_code<P: AsRef<Path>>(vk_headers_dir: &Path, src_dir: P) {
let extension_code = extensions let extension_code = extensions
.iter() .iter()
.filter(|e| {
// Note that there will be multiple Vulkan API variants in the future, communicated
// through the supported= attribute:
// https://github.com/KhronosGroup/Vulkan-Docs/issues/1549#issuecomment-855831740
e.supported.as_deref() != Some("disabled") ||
// VK_ANDROID_native_buffer is for internal use only, but types defined elsewhere
// reference enum extension constants. Exempt the extension from this check until
// types are properly folded in with their extension (where applicable).
e.name == "VK_ANDROID_native_buffer"
})
.filter_map(|ext| { .filter_map(|ext| {
generate_extension( generate_extension(
ext, ext,