Add VK_EXT_attachment_feedback_loop_layout tests
authorSamuel Iglesias Gonsálvez <siglesias@igalia.com>
Fri, 5 Aug 2022 10:40:23 +0000 (12:40 +0200)
committerRicardo Garcia <rgarcia@igalia.com>
Fri, 5 Aug 2022 10:40:23 +0000 (12:40 +0200)
Test variations:

* Combined image sampler and sampled image tests
   - Sample/read only tests.
   - Sample/read and write as framebuffer attachment.
      + Sample one pixel, write to the same one.
      + Sample one half of the image, write to the other half.
   - For Depth-Stencil formats:
      + Test depth and stencil aspect separately.
      + Read one component, writo the other.
   - For color formats:
      + Read/write all components.
      + Read GA components and write the values to RB components.

Components: Vulkan
VK-GL-CTS issue: 2998

Added tests:

   dEQP-VK.pipeline.*.attachment_feedback_loop_layout.*

Change-Id: I92efec2f3d5cde6506c146459beeff28198ef320
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Co-authored-by: Ricardo Garcia <rgarcia@igalia.com>
48 files changed:
AndroidGen.mk
android/cts/main/vk-master-2022-03-01/pipeline.txt
android/cts/main/vk-master/pipeline.txt
external/fetch_sources.py
external/vulkancts/framework/vulkan/generated/vulkan/vkApiExtensionDependencyInfo.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkBasicTypes.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkConcreteDeviceInterface.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDeviceDriverImpl.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDeviceFeatureTest.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDeviceFeatures.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDeviceFeaturesForContextDecl.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDeviceFeaturesForContextDefs.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDeviceFeaturesForDefaultDeviceDefs.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDeviceFunctionPointers.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDeviceProperties.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDevicePropertiesForContextDecl.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDevicePropertiesForContextDefs.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkDevicePropertiesForDefaultDeviceDefs.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkExtensionFunctions.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkFunctionPointerTypes.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkGetStructureTypeImpl.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkInitDeviceFunctionPointers.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkKnownDriverIds.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkMandatoryFeatures.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkNullDriverImpl.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkStrUtil.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkStrUtilImpl.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkStructTypes.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkTypeUtil.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkVirtualDeviceInterface.inl
external/vulkancts/framework/vulkan/generated/vulkan/vkVulkan_c.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkBasicTypes.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkStrUtilImpl.inl
external/vulkancts/framework/vulkan/vkImageUtil.cpp
external/vulkancts/framework/vulkan/vkObjUtil.cpp
external/vulkancts/framework/vulkan/vkObjUtil.hpp
external/vulkancts/modules/vulkan/pipeline/CMakeLists.txt
external/vulkancts/modules/vulkan/pipeline/vktPipelineAttachmentFeedbackLoopLayoutTests.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/pipeline/vktPipelineAttachmentFeedbackLoopLayoutTests.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageSamplingInstance.cpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageSamplingInstance.hpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageUtil.cpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageUtil.hpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineTests.cpp
external/vulkancts/mustpass/main/vk-default/pipeline.txt
external/vulkancts/scripts/gen_framework.py
external/vulkancts/scripts/src/extensions/VK_EXT_attachment_feedback_loop_layout.json [new file with mode: 0644]
framework/common/tcuTextureUtil.cpp

index c2b8acd..902dba9 100644 (file)
@@ -232,6 +232,7 @@ LOCAL_SRC_FILES := \
        external/vulkancts/modules/vulkan/multiview/vktMultiViewRenderUtil.cpp \
        external/vulkancts/modules/vulkan/multiview/vktMultiViewTests.cpp \
        external/vulkancts/modules/vulkan/pch.cpp \
+       external/vulkancts/modules/vulkan/pipeline/vktPipelineAttachmentFeedbackLoopLayoutTests.cpp \
        external/vulkancts/modules/vulkan/pipeline/vktPipelineBindPointTests.cpp \
        external/vulkancts/modules/vulkan/pipeline/vktPipelineBlendOperationAdvancedTests.cpp \
        external/vulkancts/modules/vulkan/pipeline/vktPipelineBlendTests.cpp \
index 60ec112..baf8426 100644 (file)
@@ -56225,6 +56225,402 @@ dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_second
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
 dEQP-VK.pipeline.pipeline_library.stencil.format.s8_uint.states.fail_keep.pass_keep.dfail_keep.comp_never
 dEQP-VK.pipeline.pipeline_library.stencil.format.s8_uint.states.fail_keep.pass_keep.dfail_keep.comp_less
 dEQP-VK.pipeline.pipeline_library.stencil.format.s8_uint.states.fail_keep.pass_keep.dfail_keep.comp_equal
@@ -276163,6 +276559,402 @@ dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.4
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.0_1111
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.0_112
@@ -496140,3 +496932,399 @@ dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disab
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
index 311ad4e..06dff8e 100644 (file)
@@ -220894,6 +220894,402 @@ dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_second
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
 dEQP-VK.pipeline.monolithic.misc.position_to_ssbo
 dEQP-VK.pipeline.monolithic.misc.primitive_id_from_tess
 dEQP-VK.pipeline.monolithic.derivative.compute.derivative_by_handle
@@ -440852,6 +441248,402 @@ dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.4
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.0_1111
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.0_112
@@ -660829,3 +661621,399 @@ dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disab
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
index 628809c..115baad 100644 (file)
@@ -314,8 +314,8 @@ PACKAGES = [
                "spirv-headers"),
        GitRepo(
                "https://github.com/KhronosGroup/Vulkan-Docs.git",
-               None,
-               "2a31e99cbaa07dba4e2036c0bfe76aa3ebe8b2a4",
+               "git@github.com:KhronosGroup/Vulkan-Docs.git",
+               "5ca346bf39db36ff06e24686f0a815754c5f7c16",
                "vulkan-docs"),
        GitRepo(
                "https://github.com/google/amber.git",
index dde3547..14b415d 100644 (file)
@@ -131,6 +131,8 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 0, "VK_ARM_rasterization_order_attachment_access", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_4444_formats", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_astc_decode_mode", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_attachment_feedback_loop_layout", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_blend_operation_advanced", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
        std::make_tuple(0, 1, 1, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
        std::make_tuple(0, 1, 2, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
@@ -199,6 +201,10 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 0, "VK_EXT_host_query_reset", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_image_2d_view_of_3d", "VK_KHR_maintenance1"),
        std::make_tuple(0, 1, 0, "VK_EXT_image_2d_view_of_3d", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_image_compression_control_swapchain", "VK_EXT_image_compression_control"),
+       std::make_tuple(0, 1, 1, "VK_EXT_image_compression_control_swapchain", "VK_EXT_image_compression_control"),
+       std::make_tuple(0, 1, 2, "VK_EXT_image_compression_control_swapchain", "VK_EXT_image_compression_control"),
+       std::make_tuple(0, 1, 3, "VK_EXT_image_compression_control_swapchain", "VK_EXT_image_compression_control"),
        std::make_tuple(0, 1, 0, "VK_EXT_image_drm_format_modifier", "VK_KHR_bind_memory2"),
        std::make_tuple(0, 1, 0, "VK_EXT_image_drm_format_modifier", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_image_drm_format_modifier", "VK_KHR_image_format_list"),
@@ -211,12 +217,18 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 0, "VK_EXT_line_rasterization", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_memory_budget", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_memory_priority", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_multisampled_render_to_single_sampled", "VK_KHR_create_renderpass2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_multisampled_render_to_single_sampled", "VK_KHR_depth_stencil_resolve"),
+       std::make_tuple(0, 1, 1, "VK_EXT_multisampled_render_to_single_sampled", "VK_KHR_create_renderpass2"),
+       std::make_tuple(0, 1, 1, "VK_EXT_multisampled_render_to_single_sampled", "VK_KHR_depth_stencil_resolve"),
        std::make_tuple(0, 1, 0, "VK_EXT_pageable_device_local_memory", "VK_EXT_memory_priority"),
        std::make_tuple(0, 1, 1, "VK_EXT_pageable_device_local_memory", "VK_EXT_memory_priority"),
        std::make_tuple(0, 1, 2, "VK_EXT_pageable_device_local_memory", "VK_EXT_memory_priority"),
        std::make_tuple(0, 1, 3, "VK_EXT_pageable_device_local_memory", "VK_EXT_memory_priority"),
        std::make_tuple(0, 1, 0, "VK_EXT_pci_bus_info", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_physical_device_drm", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_pipeline_properties", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_pipeline_robustness", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_primitives_generated_query", "VK_EXT_transform_feedback"),
        std::make_tuple(0, 1, 1, "VK_EXT_primitives_generated_query", "VK_EXT_transform_feedback"),
        std::make_tuple(0, 1, 2, "VK_EXT_primitives_generated_query", "VK_EXT_transform_feedback"),
@@ -234,6 +246,10 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 3, "VK_EXT_shader_atomic_float2", "VK_EXT_shader_atomic_float"),
        std::make_tuple(0, 1, 0, "VK_EXT_shader_demote_to_helper_invocation", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_shader_image_atomic_int64", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_shader_module_identifier", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_EXT_shader_module_identifier", "VK_EXT_pipeline_creation_cache_control"),
+       std::make_tuple(0, 1, 1, "VK_EXT_shader_module_identifier", "VK_EXT_pipeline_creation_cache_control"),
+       std::make_tuple(0, 1, 2, "VK_EXT_shader_module_identifier", "VK_EXT_pipeline_creation_cache_control"),
        std::make_tuple(0, 1, 0, "VK_EXT_texel_buffer_alignment", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_texture_compression_astc_hdr", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_EXT_transform_feedback", "VK_KHR_get_physical_device_properties2"),
@@ -316,7 +332,9 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 3, "VK_KHR_display_swapchain", "VK_KHR_swapchain"),
        std::make_tuple(0, 1, 3, "VK_KHR_display_swapchain", "VK_KHR_display"),
        std::make_tuple(0, 1, 0, "VK_KHR_driver_properties", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_KHR_dynamic_rendering", "VK_KHR_depth_stencil_resolve"),
        std::make_tuple(0, 1, 0, "VK_KHR_dynamic_rendering", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 1, "VK_KHR_dynamic_rendering", "VK_KHR_depth_stencil_resolve"),
        std::make_tuple(0, 1, 0, "VK_KHR_external_fence", "VK_KHR_external_fence_capabilities"),
        std::make_tuple(0, 1, 0, "VK_KHR_external_fence_fd", "VK_KHR_external_fence"),
        std::make_tuple(0, 1, 0, "VK_KHR_external_fence_win32", "VK_KHR_external_fence"),
@@ -327,6 +345,7 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 0, "VK_KHR_external_semaphore_fd", "VK_KHR_external_semaphore"),
        std::make_tuple(0, 1, 0, "VK_KHR_external_semaphore_win32", "VK_KHR_external_semaphore"),
        std::make_tuple(0, 1, 0, "VK_KHR_format_feature_flags2", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_KHR_fragment_shader_barycentric", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_KHR_fragment_shading_rate", "VK_KHR_create_renderpass2"),
        std::make_tuple(0, 1, 0, "VK_KHR_fragment_shading_rate", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 1, "VK_KHR_fragment_shading_rate", "VK_KHR_create_renderpass2"),
@@ -359,6 +378,9 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 1, "VK_KHR_ray_query", "VK_KHR_acceleration_structure"),
        std::make_tuple(0, 1, 2, "VK_KHR_ray_query", "VK_KHR_acceleration_structure"),
        std::make_tuple(0, 1, 3, "VK_KHR_ray_query", "VK_KHR_acceleration_structure"),
+       std::make_tuple(0, 1, 1, "VK_KHR_ray_tracing_maintenance1", "VK_KHR_acceleration_structure"),
+       std::make_tuple(0, 1, 2, "VK_KHR_ray_tracing_maintenance1", "VK_KHR_acceleration_structure"),
+       std::make_tuple(0, 1, 3, "VK_KHR_ray_tracing_maintenance1", "VK_KHR_acceleration_structure"),
        std::make_tuple(0, 1, 1, "VK_KHR_ray_tracing_pipeline", "VK_KHR_spirv_1_4"),
        std::make_tuple(0, 1, 1, "VK_KHR_ray_tracing_pipeline", "VK_KHR_acceleration_structure"),
        std::make_tuple(0, 1, 2, "VK_KHR_ray_tracing_pipeline", "VK_KHR_acceleration_structure"),
@@ -416,8 +438,8 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 2, "VK_KHR_video_encode_queue", "VK_KHR_video_queue"),
        std::make_tuple(0, 1, 2, "VK_KHR_video_encode_queue", "VK_KHR_synchronization2"),
        std::make_tuple(0, 1, 3, "VK_KHR_video_encode_queue", "VK_KHR_video_queue"),
-       std::make_tuple(0, 1, 0, "VK_KHR_video_queue", "VK_KHR_get_physical_device_properties2"),
-       std::make_tuple(0, 1, 0, "VK_KHR_video_queue", "VK_KHR_sampler_ycbcr_conversion"),
+       std::make_tuple(0, 1, 1, "VK_KHR_video_queue", "VK_KHR_synchronization2"),
+       std::make_tuple(0, 1, 2, "VK_KHR_video_queue", "VK_KHR_synchronization2"),
        std::make_tuple(0, 1, 0, "VK_KHR_win32_keyed_mutex", "VK_KHR_external_memory_win32"),
        std::make_tuple(0, 1, 1, "VK_KHR_win32_keyed_mutex", "VK_KHR_external_memory_win32"),
        std::make_tuple(0, 1, 2, "VK_KHR_win32_keyed_mutex", "VK_KHR_external_memory_win32"),
@@ -473,6 +495,9 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 1, "VK_QCOM_fragment_density_map_offset", "VK_EXT_fragment_density_map"),
        std::make_tuple(0, 1, 2, "VK_QCOM_fragment_density_map_offset", "VK_EXT_fragment_density_map"),
        std::make_tuple(0, 1, 3, "VK_QCOM_fragment_density_map_offset", "VK_EXT_fragment_density_map"),
+       std::make_tuple(0, 1, 0, "VK_QCOM_image_processing", "VK_KHR_format_feature_flags2"),
+       std::make_tuple(0, 1, 1, "VK_QCOM_image_processing", "VK_KHR_format_feature_flags2"),
+       std::make_tuple(0, 1, 2, "VK_QCOM_image_processing", "VK_KHR_format_feature_flags2"),
        std::make_tuple(0, 1, 0, "VK_QCOM_render_pass_transform", "VK_KHR_swapchain"),
        std::make_tuple(0, 1, 0, "VK_QCOM_render_pass_transform", "VK_KHR_surface"),
        std::make_tuple(0, 1, 1, "VK_QCOM_render_pass_transform", "VK_KHR_swapchain"),
@@ -488,6 +513,8 @@ static const std::tuple<deUint32, deUint32, deUint32, const char*, const char*>
        std::make_tuple(0, 1, 2, "VK_QCOM_rotated_copy_commands", "VK_KHR_swapchain"),
        std::make_tuple(0, 1, 2, "VK_QCOM_rotated_copy_commands", "VK_KHR_copy_commands2"),
        std::make_tuple(0, 1, 3, "VK_QCOM_rotated_copy_commands", "VK_KHR_swapchain"),
+       std::make_tuple(0, 1, 0, "VK_QCOM_tile_properties", "VK_KHR_get_physical_device_properties2"),
+       std::make_tuple(0, 1, 0, "VK_SEC_amigo_profiling", "VK_KHR_get_physical_device_properties2"),
        std::make_tuple(0, 1, 0, "VK_VALVE_mutable_descriptor_type", "VK_KHR_maintenance3"),
 };
 static const std::tuple<deUint32, deUint32, deUint32, deUint32>        releasedApiVersions[]   =
@@ -514,6 +541,7 @@ static const std::tuple<deUint32, deUint32, const char*>    extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_AMD_shader_ballot"),
        std::make_tuple(1, 0, "VK_AMD_shader_core_properties"),
        std::make_tuple(1, 0, "VK_AMD_shader_core_properties2"),
+       std::make_tuple(1, 0, "VK_AMD_shader_early_and_late_fragment_tests"),
        std::make_tuple(1, 0, "VK_AMD_shader_explicit_vertex_parameter"),
        std::make_tuple(1, 0, "VK_AMD_shader_fragment_mask"),
        std::make_tuple(1, 0, "VK_AMD_shader_image_load_store_lod"),
@@ -526,6 +554,7 @@ static const std::tuple<deUint32, deUint32, const char*>    extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_EXT_acquire_drm_display"),
        std::make_tuple(1, 0, "VK_EXT_acquire_xlib_display"),
        std::make_tuple(1, 0, "VK_EXT_astc_decode_mode"),
+       std::make_tuple(1, 0, "VK_EXT_attachment_feedback_loop_layout"),
        std::make_tuple(1, 0, "VK_EXT_blend_operation_advanced"),
        std::make_tuple(1, 0, "VK_EXT_border_color_swizzle"),
        std::make_tuple(1, 0, "VK_EXT_buffer_device_address"),
@@ -563,6 +592,8 @@ static const std::tuple<deUint32, deUint32, const char*>    extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_EXT_headless_surface"),
        std::make_tuple(1, 0, "VK_EXT_host_query_reset"),
        std::make_tuple(1, 0, "VK_EXT_image_2d_view_of_3d"),
+       std::make_tuple(1, 0, "VK_EXT_image_compression_control"),
+       std::make_tuple(1, 0, "VK_EXT_image_compression_control_swapchain"),
        std::make_tuple(1, 0, "VK_EXT_image_drm_format_modifier"),
        std::make_tuple(1, 0, "VK_EXT_image_robustness"),
        std::make_tuple(1, 0, "VK_EXT_image_view_min_lod"),
@@ -572,13 +603,18 @@ static const std::tuple<deUint32, deUint32, const char*>  extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_EXT_load_store_op_none"),
        std::make_tuple(1, 0, "VK_EXT_memory_budget"),
        std::make_tuple(1, 0, "VK_EXT_memory_priority"),
+       std::make_tuple(1, 0, "VK_EXT_metal_objects"),
        std::make_tuple(1, 0, "VK_EXT_metal_surface"),
        std::make_tuple(1, 0, "VK_EXT_multi_draw"),
+       std::make_tuple(1, 0, "VK_EXT_multisampled_render_to_single_sampled"),
+       std::make_tuple(1, 0, "VK_EXT_non_seamless_cube_map"),
        std::make_tuple(1, 0, "VK_EXT_pageable_device_local_memory"),
        std::make_tuple(1, 0, "VK_EXT_pci_bus_info"),
        std::make_tuple(1, 0, "VK_EXT_physical_device_drm"),
        std::make_tuple(1, 0, "VK_EXT_pipeline_creation_cache_control"),
        std::make_tuple(1, 0, "VK_EXT_pipeline_creation_feedback"),
+       std::make_tuple(1, 0, "VK_EXT_pipeline_properties"),
+       std::make_tuple(1, 0, "VK_EXT_pipeline_robustness"),
        std::make_tuple(1, 0, "VK_EXT_post_depth_coverage"),
        std::make_tuple(1, 0, "VK_EXT_primitive_topology_list_restart"),
        std::make_tuple(1, 0, "VK_EXT_primitives_generated_query"),
@@ -595,11 +631,13 @@ static const std::tuple<deUint32, deUint32, const char*>  extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_EXT_shader_atomic_float2"),
        std::make_tuple(1, 0, "VK_EXT_shader_demote_to_helper_invocation"),
        std::make_tuple(1, 0, "VK_EXT_shader_image_atomic_int64"),
+       std::make_tuple(1, 0, "VK_EXT_shader_module_identifier"),
        std::make_tuple(1, 0, "VK_EXT_shader_stencil_export"),
        std::make_tuple(1, 0, "VK_EXT_shader_subgroup_ballot"),
        std::make_tuple(1, 0, "VK_EXT_shader_subgroup_vote"),
        std::make_tuple(1, 0, "VK_EXT_shader_viewport_index_layer"),
        std::make_tuple(1, 1, "VK_EXT_subgroup_size_control"),
+       std::make_tuple(1, 0, "VK_EXT_subpass_merge_feedback"),
        std::make_tuple(1, 0, "VK_EXT_swapchain_colorspace"),
        std::make_tuple(1, 0, "VK_EXT_texel_buffer_alignment"),
        std::make_tuple(1, 0, "VK_EXT_texture_compression_astc_hdr"),
@@ -665,6 +703,7 @@ static const std::tuple<deUint32, deUint32, const char*>    extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_KHR_external_semaphore_fd"),
        std::make_tuple(1, 0, "VK_KHR_external_semaphore_win32"),
        std::make_tuple(1, 0, "VK_KHR_format_feature_flags2"),
+       std::make_tuple(1, 0, "VK_KHR_fragment_shader_barycentric"),
        std::make_tuple(1, 0, "VK_KHR_fragment_shading_rate"),
        std::make_tuple(1, 0, "VK_KHR_get_display_properties2"),
        std::make_tuple(1, 0, "VK_KHR_get_memory_requirements2"),
@@ -688,6 +727,7 @@ static const std::tuple<deUint32, deUint32, const char*>    extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_KHR_present_wait"),
        std::make_tuple(1, 0, "VK_KHR_push_descriptor"),
        std::make_tuple(1, 1, "VK_KHR_ray_query"),
+       std::make_tuple(1, 1, "VK_KHR_ray_tracing_maintenance1"),
        std::make_tuple(1, 1, "VK_KHR_ray_tracing_pipeline"),
        std::make_tuple(1, 0, "VK_KHR_relaxed_block_layout"),
        std::make_tuple(1, 0, "VK_KHR_sampler_mirror_clamp_to_edge"),
@@ -716,7 +756,7 @@ static const std::tuple<deUint32, deUint32, const char*>    extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_KHR_variable_pointers"),
        std::make_tuple(1, 0, "VK_KHR_video_decode_queue"),
        std::make_tuple(1, 0, "VK_KHR_video_encode_queue"),
-       std::make_tuple(1, 0, "VK_KHR_video_queue"),
+       std::make_tuple(1, 1, "VK_KHR_video_queue"),
        std::make_tuple(1, 0, "VK_KHR_vulkan_memory_model"),
        std::make_tuple(1, 0, "VK_KHR_wayland_surface"),
        std::make_tuple(1, 0, "VK_KHR_win32_keyed_mutex"),
@@ -769,11 +809,14 @@ static const std::tuple<deUint32, deUint32, const char*>  extensionRequiredCoreVe
        std::make_tuple(1, 0, "VK_NV_viewport_swizzle"),
        std::make_tuple(1, 0, "VK_NV_win32_keyed_mutex"),
        std::make_tuple(1, 0, "VK_QCOM_fragment_density_map_offset"),
+       std::make_tuple(1, 0, "VK_QCOM_image_processing"),
        std::make_tuple(1, 0, "VK_QCOM_render_pass_shader_resolve"),
        std::make_tuple(1, 0, "VK_QCOM_render_pass_store_ops"),
        std::make_tuple(1, 0, "VK_QCOM_render_pass_transform"),
        std::make_tuple(1, 0, "VK_QCOM_rotated_copy_commands"),
+       std::make_tuple(1, 0, "VK_QCOM_tile_properties"),
        std::make_tuple(1, 0, "VK_QNX_screen_surface"),
+       std::make_tuple(1, 0, "VK_SEC_amigo_profiling"),
        std::make_tuple(1, 0, "VK_VALVE_descriptor_set_host_mapping"),
        std::make_tuple(1, 0, "VK_VALVE_mutable_descriptor_type"),
 };
index 91bf16e..17b32d7 100644 (file)
@@ -110,6 +110,12 @@ enum VkResult
        VK_ERROR_INCOMPATIBLE_DISPLAY_KHR                                               = -1000003001,
        VK_ERROR_VALIDATION_FAILED_EXT                                                  = -1000011001,
        VK_ERROR_INVALID_SHADER_NV                                                              = -1000012000,
+       VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR                                  = -1000023000,
+       VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR                 = -1000023001,
+       VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR              = -1000023002,
+       VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR                 = -1000023003,
+       VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR                  = -1000023004,
+       VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR                    = -1000023005,
        VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT   = -1000158000,
        VK_ERROR_NOT_PERMITTED_KHR                                                              = -1000174001,
        VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT                    = -1000255000,
@@ -117,6 +123,7 @@ enum VkResult
        VK_THREAD_DONE_KHR                                                                              = 1000268001,
        VK_OPERATION_DEFERRED_KHR                                                               = 1000268002,
        VK_OPERATION_NOT_DEFERRED_KHR                                                   = 1000268003,
+       VK_ERROR_COMPRESSION_EXHAUSTED_EXT                                              = -1000338000,
        VK_ERROR_OUT_OF_POOL_MEMORY_KHR                                                 = VK_ERROR_OUT_OF_POOL_MEMORY,
        VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR                                    = VK_ERROR_INVALID_EXTERNAL_HANDLE,
        VK_ERROR_FRAGMENTATION_EXT                                                              = VK_ERROR_FRAGMENTATION,
@@ -442,6 +449,9 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN                                                                                             = 1000062000,
        VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT                                                                               = 1000067000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT                                                              = 1000067001,
+       VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT                                                                   = 1000068000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT                                              = 1000068001,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT                                    = 1000068002,
        VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR                                                                   = 1000073000,
        VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR                                                                   = 1000073001,
        VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR                                                                    = 1000073002,
@@ -598,7 +608,6 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV                                = 1000201000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV                                                               = 1000202000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV                                                             = 1000202001,
-       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV                               = 1000203000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV                                    = 1000204000,
        VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV                              = 1000205000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV                                                 = 1000205002,
@@ -694,11 +703,26 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR                                                                                 = 1000299003,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV                                                = 1000300000,
        VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV                                                              = 1000300001,
+       VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT                                                                   = 1000311000,
+       VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT                                                                                 = 1000311001,
+       VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT                                                                                  = 1000311002,
+       VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT                                                                   = 1000311003,
+       VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT                                                                                  = 1000311004,
+       VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT                                                                                  = 1000311005,
+       VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT                                                                                 = 1000311006,
+       VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT                                                                                 = 1000311007,
+       VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT                                                                              = 1000311008,
+       VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT                                                                              = 1000311009,
+       VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT                                                                    = 1000311010,
+       VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT                                                                    = 1000311011,
        VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV                                                               = 1000314008,
        VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV                                                                                                  = 1000314009,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT                                = 1000320000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT                              = 1000320001,
        VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT                                                             = 1000320002,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD             = 1000321000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR                              = 1000203000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR                    = 1000322000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR             = 1000323000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV                             = 1000326000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV                               = 1000326001,
@@ -711,6 +735,12 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT                                 = 1000332001,
        VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM                                                                              = 1000333000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR                 = 1000336000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT                                = 1000338000,
+       VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT                                                                                 = 1000338001,
+       VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT                                                                                              = 1000338002,
+       VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT                                                                                               = 1000338003,
+       VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT                                                                              = 1000338004,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT                  = 1000339000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT                                                             = 1000340000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM    = 1000342000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT                                                 = 1000344000,
@@ -745,11 +775,17 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI                                               = 1000370000,
        VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV                                                                             = 1000371000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV                                              = 1000371001,
+       VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT                                                                    = 1000372000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT                                              = 1000372001,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT    = 1000376000,
+       VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT                                                                 = 1000376001,
+       VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT                                                = 1000376002,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT                                 = 1000377000,
        VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX                                                                                = 1000378000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT                                               = 1000381000,
        VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT                                                                  = 1000381001,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT                               = 1000382000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR                                = 1000386000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT                                               = 1000391000,
        VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT                                                                    = 1000391001,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT                                                               = 1000392000,
@@ -761,10 +797,27 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE                    = 1000420000,
        VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE                                                                = 1000420001,
        VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE                                                 = 1000420002,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT                                    = 1000422000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM                             = 1000425000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM                   = 1000425001,
        VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM                                             = 1000425002,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV                                   = 1000430000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT              = 1000437000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM                                                = 1000440000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM                                              = 1000440001,
+       VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM                                                             = 1000440002,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT                                   = 1000458000,
+       VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT                                                                              = 1000458001,
+       VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT                                                 = 1000458002,
+       VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT                                                  = 1000458003,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT                                 = 1000462000,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT                               = 1000462001,
+       VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT                               = 1000462002,
+       VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT                                                                                  = 1000462003,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM                                                 = 1000484000,
+       VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM                                                                                                  = 1000484001,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC                                                  = 1000485000,
+       VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC                                                                               = 1000485001,
        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                                                                                  = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
@@ -870,6 +923,7 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR                                                 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR                                  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES,
        VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR                                                 = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE,
+       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV                               = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR                                               = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR                                             = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES,
        VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR                                                                                = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO,
@@ -927,6 +981,7 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR                                                                                               = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2,
        VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR                                                                                                   = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2,
        VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR                                                                                               = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3,
+       VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT                                                                                                             = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT                                    = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR,
        VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT                                                   = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR                                                    = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES,
@@ -936,6 +991,12 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_MAX_ENUM                                                                                                                              = 0x7FFFFFFF,
 };
 
+enum VkPipelineCacheHeaderVersion
+{
+       VK_PIPELINE_CACHE_HEADER_VERSION_ONE            = 1,
+       VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM       = 0x7FFFFFFF,
+};
+
 enum VkImageLayout
 {
        VK_IMAGE_LAYOUT_UNDEFINED                                                                               = 0,
@@ -965,6 +1026,7 @@ enum VkImageLayout
        VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR                                                    = 1000299000,
        VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR                                                    = 1000299001,
        VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR                                                    = 1000299002,
+       VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT                    = 1000339000,
        VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR  = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
        VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR  = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
        VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV                                                 = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR,
@@ -1031,12 +1093,6 @@ enum VkObjectType
        VK_OBJECT_TYPE_MAX_ENUM                                                 = 0x7FFFFFFF,
 };
 
-enum VkPipelineCacheHeaderVersion
-{
-       VK_PIPELINE_CACHE_HEADER_VERSION_ONE            = 1,
-       VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM       = 0x7FFFFFFF,
-};
-
 enum VkVendorId
 {
        VK_VENDOR_ID_VIV                = 0x10001,
@@ -1402,19 +1458,21 @@ enum VkPhysicalDeviceType
 
 enum VkQueryType
 {
-       VK_QUERY_TYPE_OCCLUSION                                                                         = 0,
-       VK_QUERY_TYPE_PIPELINE_STATISTICS                                                       = 1,
-       VK_QUERY_TYPE_TIMESTAMP                                                                         = 2,
-       VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR                                            = 1000023000,
-       VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT                                     = 1000028004,
-       VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR                                                     = 1000116000,
-       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_PERFORMANCE_QUERY_INTEL                                           = 1000210000,
-       VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR           = 1000299000,
-       VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT                                          = 1000382000,
-       VK_QUERY_TYPE_MAX_ENUM                                                                          = 0x7FFFFFFF,
+       VK_QUERY_TYPE_OCCLUSION                                                                                                                 = 0,
+       VK_QUERY_TYPE_PIPELINE_STATISTICS                                                                                               = 1,
+       VK_QUERY_TYPE_TIMESTAMP                                                                                                                 = 2,
+       VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR                                                                                    = 1000023000,
+       VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT                                                                             = 1000028004,
+       VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR                                                                                             = 1000116000,
+       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_PERFORMANCE_QUERY_INTEL                                                                                   = 1000210000,
+       VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR                                                   = 1000299000,
+       VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT                                                                                  = 1000382000,
+       VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR    = 1000386000,
+       VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR                                                                   = 1000386001,
+       VK_QUERY_TYPE_MAX_ENUM                                                                                                                  = 0x7FFFFFFF,
 };
 
 enum VkSharingMode
@@ -1698,8 +1756,8 @@ enum VkFilter
 {
        VK_FILTER_NEAREST       = 0,
        VK_FILTER_LINEAR        = 1,
-       VK_FILTER_CUBIC_IMG     = 1000015000,
-       VK_FILTER_CUBIC_EXT     = VK_FILTER_CUBIC_IMG,
+       VK_FILTER_CUBIC_EXT     = 1000015000,
+       VK_FILTER_CUBIC_IMG     = VK_FILTER_CUBIC_EXT,
        VK_FILTER_MAX_ENUM      = 0x7FFFFFFF,
 };
 
@@ -1740,6 +1798,8 @@ enum VkDescriptorType
        VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR   = 1000150000,
        VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV    = 1000165000,
        VK_DESCRIPTOR_TYPE_MUTABLE_VALVE                                = 1000351000,
+       VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM             = 1000440000,
+       VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM               = 1000440001,
        VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT             = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK,
        VK_DESCRIPTOR_TYPE_MAX_ENUM                                             = 0x7FFFFFFF,
 };
@@ -1889,6 +1949,7 @@ enum VkDriverId
        VK_DRIVER_ID_MESA_PANVK                                         = 20,
        VK_DRIVER_ID_SAMSUNG_PROPRIETARY                        = 21,
        VK_DRIVER_ID_MESA_VENUS                                         = 22,
+       VK_DRIVER_ID_MESA_DOZEN                                         = 23,
        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,
@@ -2120,6 +2181,26 @@ enum VkValidationCheckEXT
        VK_VALIDATION_CHECK_MAX_ENUM_EXT        = 0x7FFFFFFF,
 };
 
+enum VkPipelineRobustnessBufferBehaviorEXT
+{
+       VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT                       = 0,
+       VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT                                     = 1,
+       VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT         = 2,
+       VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT       = 3,
+       VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_EXT_LAST,
+       VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_MAX_ENUM_EXT                                     = 0x7FFFFFFF,
+};
+
+enum VkPipelineRobustnessImageBehaviorEXT
+{
+       VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT                = 0,
+       VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT                              = 1,
+       VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT   = 2,
+       VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT = 3,
+       VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_EXT_LAST,
+       VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_MAX_ENUM_EXT                              = 0x7FFFFFFF,
+};
+
 enum VkDisplayPowerStateEXT
 {
        VK_DISPLAY_POWER_STATE_OFF_EXT          = 0,
@@ -2478,6 +2559,26 @@ enum VkAccelerationStructureMotionInstanceTypeNV
        VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MAX_ENUM_NV              = 0x7FFFFFFF,
 };
 
+enum VkSubpassMergeStatusEXT
+{
+       VK_SUBPASS_MERGE_STATUS_MERGED_EXT                                                                              = 0,
+       VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT                                                                  = 1,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT                                             = 2,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT                                 = 3,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT                                   = 4,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT                                                 = 5,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT                                             = 6,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT    = 7,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT                             = 8,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT                             = 9,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT                              = 10,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT                 = 11,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT                                   = 12,
+       VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT                                              = 13,
+       VK_SUBPASS_MERGE_STATUS_EXT_LAST,
+       VK_SUBPASS_MERGE_STATUS_MAX_ENUM_EXT                                                                    = 0x7FFFFFFF,
+};
+
 enum VkBuildAccelerationStructureModeKHR
 {
        VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR          = 0,
@@ -2874,14 +2975,15 @@ enum VkFormatFeatureFlagBits
        VK_FORMAT_FEATURE_DISJOINT_BIT                                                                                                                                          = 0x00400000,
        VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT                                                                                                            = 0x00800000,
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT                                                                                                       = 0x00010000,
-       VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG                                                                                            = 0x00002000,
        VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR                                                                                                           = 0x02000000,
        VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR                                                                                                                      = 0x04000000,
        VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR                                                                          = 0x20000000,
+       VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT                                                                                            = 0x00002000,
        VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT                                                                                                          = 0x01000000,
        VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR                                                                                      = 0x40000000,
        VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR                                                                                                            = 0x08000000,
        VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR                                                                                                                      = 0x10000000,
+       VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG                                                                                            = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT,
        VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR                                                                                                                          = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
        VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR                                                                                                                          = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT                                                                                           = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
@@ -2892,37 +2994,37 @@ enum VkFormatFeatureFlagBits
        VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR       = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,
        VK_FORMAT_FEATURE_DISJOINT_BIT_KHR                                                                                                                                      = VK_FORMAT_FEATURE_DISJOINT_BIT,
        VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR                                                                                                        = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
-       VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT                                                                                            = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
        VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM                                                                                                                            = 0x7FFFFFFF,
 };
 typedef uint32_t VkFormatFeatureFlags;
 
 enum VkImageCreateFlagBits
 {
-       VK_IMAGE_CREATE_SPARSE_BINDING_BIT                                                      = 0x00000001,
-       VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT                                            = 0x00000002,
-       VK_IMAGE_CREATE_SPARSE_ALIASED_BIT                                                      = 0x00000004,
-       VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT                                                      = 0x00000008,
-       VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT                                                     = 0x00000010,
-       VK_IMAGE_CREATE_ALIAS_BIT                                                                       = 0x00000400,
-       VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT                         = 0x00000040,
-       VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT                                         = 0x00000020,
-       VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT                         = 0x00000080,
-       VK_IMAGE_CREATE_EXTENDED_USAGE_BIT                                                      = 0x00000100,
-       VK_IMAGE_CREATE_PROTECTED_BIT                                                           = 0x00000800,
-       VK_IMAGE_CREATE_DISJOINT_BIT                                                            = 0x00000200,
-       VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV                                           = 0x00002000,
-       VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT       = 0x00001000,
-       VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT                                                      = 0x00004000,
-       VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT                                      = 0x00020000,
-       VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM            = 0x00008000,
-       VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR                     = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,
-       VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR                                     = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,
-       VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR                     = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,
-       VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR                                          = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,
-       VK_IMAGE_CREATE_DISJOINT_BIT_KHR                                                        = VK_IMAGE_CREATE_DISJOINT_BIT,
-       VK_IMAGE_CREATE_ALIAS_BIT_KHR                                                           = VK_IMAGE_CREATE_ALIAS_BIT,
-       VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM                                                      = 0x7FFFFFFF,
+       VK_IMAGE_CREATE_SPARSE_BINDING_BIT                                                              = 0x00000001,
+       VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT                                                    = 0x00000002,
+       VK_IMAGE_CREATE_SPARSE_ALIASED_BIT                                                              = 0x00000004,
+       VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT                                                              = 0x00000008,
+       VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT                                                             = 0x00000010,
+       VK_IMAGE_CREATE_ALIAS_BIT                                                                               = 0x00000400,
+       VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT                                 = 0x00000040,
+       VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT                                                 = 0x00000020,
+       VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT                                 = 0x00000080,
+       VK_IMAGE_CREATE_EXTENDED_USAGE_BIT                                                              = 0x00000100,
+       VK_IMAGE_CREATE_PROTECTED_BIT                                                                   = 0x00000800,
+       VK_IMAGE_CREATE_DISJOINT_BIT                                                                    = 0x00000200,
+       VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV                                                   = 0x00002000,
+       VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT               = 0x00001000,
+       VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT                                                              = 0x00004000,
+       VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT   = 0x00040000,
+       VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT                                              = 0x00020000,
+       VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM                    = 0x00008000,
+       VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR                             = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,
+       VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR                                             = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,
+       VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR                             = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,
+       VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR                                                  = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,
+       VK_IMAGE_CREATE_DISJOINT_BIT_KHR                                                                = VK_IMAGE_CREATE_DISJOINT_BIT,
+       VK_IMAGE_CREATE_ALIAS_BIT_KHR                                                                   = VK_IMAGE_CREATE_ALIAS_BIT,
+       VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM                                                              = 0x7FFFFFFF,
 };
 typedef uint32_t VkImageCreateFlags;
 
@@ -2957,7 +3059,10 @@ enum VkImageUsageFlagBits
        VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR                                 = 0x00002000,
        VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR                                 = 0x00004000,
        VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR                                 = 0x00008000,
+       VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT                 = 0x00080000,
        VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI                               = 0x00040000,
+       VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM                                   = 0x00100000,
+       VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM                              = 0x00200000,
        VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV                                = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
        VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM                                               = 0x7FFFFFFF,
 };
@@ -3204,6 +3309,8 @@ enum VkPipelineCreateFlagBits
        VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT                                   = 0x00800000,
        VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT                                                               = 0x00000400,
        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_DISPATCH_BASE                                                                                                = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
        VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
        VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT  = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT,
@@ -3290,6 +3397,8 @@ enum VkSamplerCreateFlagBits
 {
        VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT                                            = 0x00000001,
        VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT      = 0x00000002,
+       VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT                         = 0x00000004,
+       VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM                                     = 0x00000010,
        VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM                                            = 0x7FFFFFFF,
 };
 typedef uint32_t VkSamplerCreateFlags;
@@ -3326,6 +3435,7 @@ enum VkDependencyFlagBits
        VK_DEPENDENCY_BY_REGION_BIT                     = 0x00000001,
        VK_DEPENDENCY_DEVICE_GROUP_BIT          = 0x00000004,
        VK_DEPENDENCY_VIEW_LOCAL_BIT            = 0x00000002,
+       VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT     = 0x00000008,
        VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR        = VK_DEPENDENCY_VIEW_LOCAL_BIT,
        VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR      = VK_DEPENDENCY_DEVICE_GROUP_BIT,
        VK_DEPENDENCY_FLAG_BITS_MAX_ENUM        = 0x7FFFFFFF,
@@ -3853,6 +3963,7 @@ enum VkDeviceDiagnosticsConfigFlagBitsNV
        VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV            = 0x00000001,
        VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV            = 0x00000002,
        VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV        = 0x00000004,
+       VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV       = 0x00000008,
        VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV                                      = 0x7FFFFFFF,
 };
 typedef uint32_t VkDeviceDiagnosticsConfigFlagsNV;
@@ -3867,6 +3978,47 @@ enum VkGraphicsPipelineLibraryFlagBitsEXT
 };
 typedef uint32_t VkGraphicsPipelineLibraryFlagsEXT;
 
+enum VkImageCompressionFlagBitsEXT
+{
+       VK_IMAGE_COMPRESSION_DEFAULT_EXT                                = 0,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT             = 0x00000001,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT    = 0x00000002,
+       VK_IMAGE_COMPRESSION_DISABLED_EXT                               = 0x00000004,
+       VK_IMAGE_COMPRESSION_FLAG_BITS_MAX_ENUM_EXT             = 0x7FFFFFFF,
+};
+typedef uint32_t VkImageCompressionFlagsEXT;
+
+enum VkImageCompressionFixedRateFlagBitsEXT
+{
+       VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT                                = 0,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT                    = 0x00000001,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT                    = 0x00000002,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT                    = 0x00000004,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT                    = 0x00000008,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT                    = 0x00000010,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT                    = 0x00000020,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT                    = 0x00000040,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT                    = 0x00000080,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT                    = 0x00000100,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT                   = 0x00000200,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT                   = 0x00000400,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT                   = 0x00000800,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT                   = 0x00001000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT                   = 0x00002000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT                   = 0x00004000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT                   = 0x00008000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT                   = 0x00010000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT                   = 0x00020000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT                   = 0x00040000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT                   = 0x00080000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT                   = 0x00100000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT                   = 0x00200000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT                   = 0x00400000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT                   = 0x00800000,
+       VK_IMAGE_COMPRESSION_FIXED_RATE_FLAG_BITS_MAX_ENUM_EXT  = 0x7FFFFFFF,
+};
+typedef uint32_t VkImageCompressionFixedRateFlagsEXT;
+
 enum VkAccelerationStructureCreateFlagBitsKHR
 {
        VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR  = 0x00000001,
@@ -3992,29 +4144,31 @@ typedef uint32_t VkVideoEncodeRateControlFlagsKHR;
 
 enum VkVideoEncodeH264CapabilityFlagBitsEXT
 {
-       VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_BIT_EXT                    = 0x00000001,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT                   = 0x00000002,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT = 0x00000004,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT                                   = 0x00000008,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT                                  = 0x00000010,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT                                = 0x00000020,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT                 = 0x00000040,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_PIC_INIT_QP_MINUS26_BIT_EXT                             = 0x00000080,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_BIT_EXT                                   = 0x00000100,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_EXPLICIT_BIT_EXT                = 0x00000200,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_IMPLICIT_BIT_EXT                = 0x00000400,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT                  = 0x00000800,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT                                   = 0x00001000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT                                                   = 0x00002000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT                                                   = 0x00004000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT              = 0x00008000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT               = 0x00010000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT               = 0x00020000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_DISABLE_DIRECT_SPATIAL_MV_PRED_BIT_EXT  = 0x00040000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT                = 0x00080000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT                                  = 0x00100000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT                             = 0x00200000,
-       VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT                    = 0x00400000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT    = 0x00000001,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT   = 0x00000002,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT                   = 0x00000004,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT = 0x00000008,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT                                   = 0x00000010,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT                                  = 0x00000020,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT                                = 0x00000040,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT                 = 0x00000080,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_PIC_INIT_QP_MINUS26_BIT_EXT                             = 0x00000100,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_BIT_EXT                                   = 0x00000200,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_EXPLICIT_BIT_EXT                = 0x00000400,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_IMPLICIT_BIT_EXT                = 0x00000800,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT                  = 0x00001000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT                                   = 0x00002000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT                                                   = 0x00004000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT                                                   = 0x00008000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT              = 0x00010000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT               = 0x00020000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT               = 0x00040000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_DISABLE_DIRECT_SPATIAL_MV_PRED_BIT_EXT  = 0x00080000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT                = 0x00100000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT                                  = 0x00200000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT                             = 0x00400000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT                    = 0x00800000,
+       VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT                              = 0x01000000,
        VK_VIDEO_ENCODE_H264_CAPABILITY_FLAG_BITS_MAX_ENUM_EXT                                  = 0x7FFFFFFF,
 };
 typedef uint32_t VkVideoEncodeH264CapabilityFlagsEXT;
@@ -4144,6 +4298,18 @@ enum VkImageConstraintsInfoFlagBitsFUCHSIA
 };
 typedef uint32_t VkImageConstraintsInfoFlagsFUCHSIA;
 
+enum VkExportMetalObjectTypeFlagBitsEXT
+{
+       VK_EXPORT_METAL_OBJECT_TYPE_METAL_DEVICE_BIT_EXT                = 0x00000001,
+       VK_EXPORT_METAL_OBJECT_TYPE_METAL_COMMAND_QUEUE_BIT_EXT = 0x00000002,
+       VK_EXPORT_METAL_OBJECT_TYPE_METAL_BUFFER_BIT_EXT                = 0x00000004,
+       VK_EXPORT_METAL_OBJECT_TYPE_METAL_TEXTURE_BIT_EXT               = 0x00000008,
+       VK_EXPORT_METAL_OBJECT_TYPE_METAL_IOSURFACE_BIT_EXT             = 0x00000010,
+       VK_EXPORT_METAL_OBJECT_TYPE_METAL_SHARED_EVENT_BIT_EXT  = 0x00000020,
+       VK_EXPORT_METAL_OBJECT_TYPE_FLAG_BITS_MAX_ENUM_EXT              = 0x7FFFFFFF,
+};
+typedef uint32_t VkExportMetalObjectTypeFlagsEXT;
+
 typedef uint32_t VkDeviceCreateFlags;
 
 typedef uint32_t VkMemoryMapFlags;
@@ -4357,6 +4523,7 @@ static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV
 static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV                                           = 0x00100000ULL;
 static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI                           = 0x8000000000ULL;
 static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI                           = 0x10000000000ULL;
+static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR          = 0x10000000ULL;
 
 
 typedef uint64_t VkAccessFlags2;
@@ -4423,6 +4590,7 @@ static const VkAccessFlagBits2 VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV
 static const VkAccessFlagBits2 VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT                           = 0x01000000ULL;
 static const VkAccessFlagBits2 VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT           = 0x00080000ULL;
 static const VkAccessFlagBits2 VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI                                     = 0x8000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR                           = 0x10000000000ULL;
 
 
 typedef uint64_t VkFormatFeatureFlags2;
@@ -4490,6 +4658,10 @@ static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_
 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_LINEAR_COLOR_ATTACHMENT_BIT_NV                                                                                                       = 0x4000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM                                                                                                                                = 0x400000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM                                                                                                                = 0x800000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM                                                                                                                      = 0x1000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM                                                                                                          = 0x2000000000ULL;
 
 
 typedef VkPipelineStageFlags2 VkPipelineStageFlags2KHR;
@@ -4527,6 +4699,12 @@ VK_DEFINE_PLATFORM_TYPE(zx_handle_t,                             uint32_t)
 VK_DEFINE_PLATFORM_TYPE(GgpFrameToken,                         int32_t)
 VK_DEFINE_PLATFORM_TYPE(GgpStreamDescriptor,           int32_t)
 VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                          void*)
+VK_DEFINE_PLATFORM_TYPE(MTLDevice_id,                          void*)
+VK_DEFINE_PLATFORM_TYPE(MTLCommandQueue_id,                    void*)
+VK_DEFINE_PLATFORM_TYPE(MTLBuffer_id,                          void*)
+VK_DEFINE_PLATFORM_TYPE(MTLTexture_id,                         void*)
+VK_DEFINE_PLATFORM_TYPE(IOSurfaceRef,                          void*)
+VK_DEFINE_PLATFORM_TYPE(MTLSharedEvent_id,                     void*)
 #define VK_KHR_SURFACE_SPEC_VERSION 25
 #define VK_KHR_SWAPCHAIN_SPEC_VERSION 70
 #define VK_KHR_DISPLAY_SPEC_VERSION 23
@@ -4611,6 +4789,7 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION 1
 #define VK_KHR_PRESENT_ID_SPEC_VERSION 1
 #define VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION 1
+#define VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION 1
 #define VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION 1
 #define VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION 1
 #define VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION 1
@@ -4618,6 +4797,8 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME "VK_KHR_copy_commands2"
 #define VK_KHR_FORMAT_FEATURE_FLAGS_2_SPEC_VERSION 1
 #define VK_KHR_FORMAT_FEATURE_FLAGS_2_EXTENSION_NAME "VK_KHR_format_feature_flags2"
+#define VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION 1
+#define VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME "VK_KHR_ray_tracing_maintenance1"
 #define VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION 1
 #define VK_KHR_MAINTENANCE_4_SPEC_VERSION 2
 #define VK_KHR_MAINTENANCE_4_EXTENSION_NAME "VK_KHR_maintenance4"
@@ -4650,6 +4831,7 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION 1
 #define VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION 1
 #define VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION 1
+#define VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION 1
 #define VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION 2
 #define VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION 1
 #define VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION 1
@@ -4748,7 +4930,7 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION 3
 #define VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION 1
 #define VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION 1
-#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 2
+#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 3
 #define VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION 2
 #define VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION 1
 #define VK_EXT_ROBUSTNESS_2_SPEC_VERSION 1
@@ -4756,15 +4938,18 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                           void*)
 #define VK_GOOGLE_USER_TYPE_SPEC_VERSION 1
 #define VK_EXT_PRIVATE_DATA_SPEC_VERSION 1
 #define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION 3
-#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION 1
+#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION 2
 #define VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION 2
 #define VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION 1
+#define VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION 1
 #define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION 1
 #define VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION 1
 #define VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION 1
 #define VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION 1
 #define VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION 1
 #define VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION 1
+#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION 1
+#define VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION 2
 #define VK_EXT_4444_FORMATS_SPEC_VERSION 1
 #define VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION 1
 #define VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION 1
@@ -4777,6 +4962,8 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION 2
 #define VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION 1
 #define VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION 1
+#define VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION 1
+#define VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION 1
 #define VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION 1
 #define VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION 1
 #define VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION 1
@@ -4789,15 +4976,23 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                           void*)
 #define VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION 1
 #define VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION 1
 #define VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION 1
+#define VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION 1
 #define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION 1
 #define VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION 1
 #define VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION 1
+#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION 1
+#define VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION 1
+#define VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION 2
+#define VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT 32U
+#define VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION 1
+#define VK_QCOM_TILE_PROPERTIES_SPEC_VERSION 1
+#define VK_SEC_AMIGO_PROFILING_SPEC_VERSION 1
 #define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13
 #define VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION 1
 #define VK_KHR_RAY_QUERY_SPEC_VERSION 1
 #define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6
 #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 5
-#define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 3
+#define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 4
 #define VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION 4
 #define VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION 1
 #define VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION 5
@@ -4813,7 +5008,7 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6 VK_MAKE_VIDEO_STD_VERSION(0, 9, 6)
 #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6
 #define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_encode"
-#define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 6
+#define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 7
 #define vulkan_video_codec_h265std 1
 #define STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE 7
 #define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32
@@ -4827,15 +5022,14 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                           void*)
 #define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64
 #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3
 #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128
-#define STD_VIDEO_H265_SPS_MAX_SUB_LAYERS 8
 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19
 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21
 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6
 #define STD_VIDEO_H265_MAX_NUM_LIST_REF 15
 #define STD_VIDEO_H265_MAX_CHROMA_PLANES 2
 #define vulkan_video_codec_h265std_encode 1
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_6 VK_MAKE_VIDEO_STD_VERSION(0, 9, 6)
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_6
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_7 VK_MAKE_VIDEO_STD_VERSION(0, 9, 7)
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_7
 #define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_encode"
 #define VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION 7
 #define vulkan_video_codec_h264std_decode 1
@@ -4846,9 +5040,9 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_decode"
 #define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 5
 #define vulkan_video_codec_h265std_decode 1
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_6 VK_MAKE_VIDEO_STD_VERSION(0, 9, 6)
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7 VK_MAKE_VIDEO_STD_VERSION(0, 9, 7)
 #define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_6
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7
 #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_decode"
 #define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 3
 #define VK_FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION 1
@@ -4860,6 +5054,7 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_MVK_IOS_SURFACE_SPEC_VERSION 3
 #define VK_MVK_MACOS_SURFACE_SPEC_VERSION 3
 #define VK_EXT_METAL_SURFACE_SPEC_VERSION 1
+#define VK_EXT_METAL_OBJECTS_SPEC_VERSION 1
 #define VK_NN_VI_SURFACE_SPEC_VERSION 1
 #define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 6
 #define VK_KHR_WIN32_SURFACE_SPEC_VERSION 6
index a5c504d..e2bf97c 100644 (file)
@@ -221,6 +221,7 @@ virtual VkResult                    getPipelineExecutableStatisticsKHR                              (VkDevice device, const
 virtual VkResult                       getPipelineExecutableInternalRepresentationsKHR (VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pInternalRepresentationCount, VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations) const;
 virtual void                           cmdWriteBufferMarker2AMD                                                (VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker) const;
 virtual void                           getQueueCheckpointData2NV                                               (VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointData2NV* pCheckpointData) const;
+virtual void                           cmdTraceRaysIndirect2KHR                                                (VkCommandBuffer commandBuffer, VkDeviceAddress indirectDeviceAddress) const;
 virtual VkResult                       debugMarkerSetObjectTagEXT                                              (VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo) const;
 virtual VkResult                       debugMarkerSetObjectNameEXT                                             (VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo) const;
 virtual void                           cmdDebugMarkerBeginEXT                                                  (VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const;
@@ -311,11 +312,13 @@ virtual void                              cmdBindPipelineShaderGroupNV                                    (VkCommandBuffer commandBuffer,
 virtual VkResult                       createIndirectCommandsLayoutNV                                  (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout) const;
 virtual void                           destroyIndirectCommandsLayoutNV                                 (VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const;
 virtual void                           cmdSetFragmentShadingRateEnumNV                                 (VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) const;
+virtual void                           getImageSubresourceLayout2EXT                                   (VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout) const;
 virtual void                           cmdSetVertexInputEXT                                                    (VkCommandBuffer commandBuffer, uint32_t vertexBindingDescriptionCount, const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions, uint32_t vertexAttributeDescriptionCount, const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions) const;
 virtual VkResult                       getDeviceSubpassShadingMaxWorkgroupSizeHUAWEI   (VkDevice device, VkRenderPass renderpass, VkExtent2D* pMaxWorkgroupSize) const;
 virtual void                           cmdSubpassShadingHUAWEI                                                 (VkCommandBuffer commandBuffer) const;
 virtual void                           cmdBindInvocationMaskHUAWEI                                             (VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout) const;
 virtual VkResult                       getMemoryRemoteAddressNV                                                (VkDevice device, const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo, VkRemoteAddressNV* pAddress) const;
+virtual VkResult                       getPipelinePropertiesEXT                                                (VkDevice device, const VkPipelineInfoEXT* pPipelineInfo, VkBaseOutStructure* pPipelineProperties) const;
 virtual void                           cmdSetPatchControlPointsEXT                                             (VkCommandBuffer commandBuffer, uint32_t patchControlPoints) const;
 virtual void                           cmdSetLogicOpEXT                                                                (VkCommandBuffer commandBuffer, VkLogicOp logicOp) const;
 virtual void                           cmdSetColorWriteEnableEXT                                               (VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables) const;
@@ -324,6 +327,10 @@ virtual void                               cmdDrawMultiIndexedEXT                                                  (VkCommandBuffer commandBuffer, uin
 virtual void                           setDeviceMemoryPriorityEXT                                              (VkDevice device, VkDeviceMemory memory, float priority) const;
 virtual void                           getDescriptorSetLayoutHostMappingInfoVALVE              (VkDevice device, const VkDescriptorSetBindingReferenceVALVE* pBindingReference, VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping) const;
 virtual void                           getDescriptorSetHostMappingVALVE                                (VkDevice device, VkDescriptorSet descriptorSet, void** ppData) const;
+virtual void                           getShaderModuleIdentifierEXT                                    (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier) const;
+virtual void                           getShaderModuleCreateInfoIdentifierEXT                  (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier) const;
+virtual VkResult                       getFramebufferTilePropertiesQCOM                                (VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties) const;
+virtual VkResult                       getDynamicRenderingTilePropertiesQCOM                   (VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties) const;
 virtual VkResult                       createAccelerationStructureKHR                                  (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure) const;
 virtual void                           destroyAccelerationStructureKHR                                 (VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator) const;
 virtual void                           cmdBuildAccelerationStructuresKHR                               (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos) const;
@@ -369,6 +376,7 @@ virtual VkResult                    setBufferCollectionImageConstraintsFUCHSIA              (VkDevice device,
 virtual VkResult                       setBufferCollectionBufferConstraintsFUCHSIA             (VkDevice device, VkBufferCollectionFUCHSIA collection, const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo) const;
 virtual void                           destroyBufferCollectionFUCHSIA                                  (VkDevice device, VkBufferCollectionFUCHSIA collection, const VkAllocationCallbacks* pAllocator) const;
 virtual VkResult                       getBufferCollectionPropertiesFUCHSIA                    (VkDevice device, VkBufferCollectionFUCHSIA collection, VkBufferCollectionPropertiesFUCHSIA* pProperties) const;
+virtual void                           exportMetalObjectsEXT                                                   (VkDevice device, VkExportMetalObjectsInfoEXT* pMetalObjectsInfo) const;
 virtual VkResult                       getMemoryWin32HandleKHR                                                 (VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const;
 virtual VkResult                       getMemoryWin32HandlePropertiesKHR                               (VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, pt::Win32Handle handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties) const;
 virtual VkResult                       importSemaphoreWin32HandleKHR                                   (VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo) const;
index 4ae54e7..677029a 100644 (file)
@@ -1094,6 +1094,11 @@ void DeviceDriver::getQueueCheckpointData2NV (VkQueue queue, uint32_t* pCheckpoi
        m_vk.getQueueCheckpointData2NV(queue, pCheckpointDataCount, pCheckpointData);
 }
 
+void DeviceDriver::cmdTraceRaysIndirect2KHR (VkCommandBuffer commandBuffer, VkDeviceAddress indirectDeviceAddress) const
+{
+       m_vk.cmdTraceRaysIndirect2KHR(commandBuffer, indirectDeviceAddress);
+}
+
 VkResult DeviceDriver::debugMarkerSetObjectTagEXT (VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo) const
 {
        return m_vk.debugMarkerSetObjectTagEXT(device, pTagInfo);
@@ -1544,6 +1549,11 @@ void DeviceDriver::cmdSetFragmentShadingRateEnumNV (VkCommandBuffer commandBuffe
        m_vk.cmdSetFragmentShadingRateEnumNV(commandBuffer, shadingRate, combinerOps);
 }
 
+void DeviceDriver::getImageSubresourceLayout2EXT (VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout) const
+{
+       m_vk.getImageSubresourceLayout2EXT(device, image, pSubresource, pLayout);
+}
+
 void DeviceDriver::cmdSetVertexInputEXT (VkCommandBuffer commandBuffer, uint32_t vertexBindingDescriptionCount, const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions, uint32_t vertexAttributeDescriptionCount, const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions) const
 {
        m_vk.cmdSetVertexInputEXT(commandBuffer, vertexBindingDescriptionCount, pVertexBindingDescriptions, vertexAttributeDescriptionCount, pVertexAttributeDescriptions);
@@ -1569,6 +1579,11 @@ VkResult DeviceDriver::getMemoryRemoteAddressNV (VkDevice device, const VkMemory
        return m_vk.getMemoryRemoteAddressNV(device, pMemoryGetRemoteAddressInfo, pAddress);
 }
 
+VkResult DeviceDriver::getPipelinePropertiesEXT (VkDevice device, const VkPipelineInfoEXT* pPipelineInfo, VkBaseOutStructure* pPipelineProperties) const
+{
+       return m_vk.getPipelinePropertiesEXT(device, pPipelineInfo, pPipelineProperties);
+}
+
 void DeviceDriver::cmdSetPatchControlPointsEXT (VkCommandBuffer commandBuffer, uint32_t patchControlPoints) const
 {
        m_vk.cmdSetPatchControlPointsEXT(commandBuffer, patchControlPoints);
@@ -1609,6 +1624,26 @@ void DeviceDriver::getDescriptorSetHostMappingVALVE (VkDevice device, VkDescript
        m_vk.getDescriptorSetHostMappingVALVE(device, descriptorSet, ppData);
 }
 
+void DeviceDriver::getShaderModuleIdentifierEXT (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier) const
+{
+       m_vk.getShaderModuleIdentifierEXT(device, shaderModule, pIdentifier);
+}
+
+void DeviceDriver::getShaderModuleCreateInfoIdentifierEXT (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier) const
+{
+       m_vk.getShaderModuleCreateInfoIdentifierEXT(device, pCreateInfo, pIdentifier);
+}
+
+VkResult DeviceDriver::getFramebufferTilePropertiesQCOM (VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties) const
+{
+       return m_vk.getFramebufferTilePropertiesQCOM(device, framebuffer, pPropertiesCount, pProperties);
+}
+
+VkResult DeviceDriver::getDynamicRenderingTilePropertiesQCOM (VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties) const
+{
+       return m_vk.getDynamicRenderingTilePropertiesQCOM(device, pRenderingInfo, pProperties);
+}
+
 VkResult DeviceDriver::createAccelerationStructureKHR (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure) const
 {
        return m_vk.createAccelerationStructureKHR(device, pCreateInfo, pAllocator, pAccelerationStructure);
@@ -1834,6 +1869,11 @@ VkResult DeviceDriver::getBufferCollectionPropertiesFUCHSIA (VkDevice device, Vk
        return m_vk.getBufferCollectionPropertiesFUCHSIA(device, collection, pProperties);
 }
 
+void DeviceDriver::exportMetalObjectsEXT (VkDevice device, VkExportMetalObjectsInfoEXT* pMetalObjectsInfo) const
+{
+       m_vk.exportMetalObjectsEXT(device, pMetalObjectsInfo);
+}
+
 VkResult DeviceDriver::getMemoryWin32HandleKHR (VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const
 {
        return m_vk.getMemoryWin32HandleKHR(device, pGetWin32HandleInfo, pHandle);
index a52741c..cf59d8f 100644 (file)
@@ -534,6 +534,16 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR, fragmentShaderBarycentric),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>()))
 {
        static const Feature features[] =
@@ -557,6 +567,17 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 4, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR, rayTracingMaintenance1),
+               FEATURE_ITEM (VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR, rayTracingPipelineTraceRaysIndirect2),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 2, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceTransformFeedbackFeaturesEXT>()))
 {
        static const Feature features[] =
@@ -588,6 +609,16 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDevicePipelineRobustnessFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDevicePipelineRobustnessFeaturesEXT, pipelineRobustness),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDevicePipelineRobustnessFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceConditionalRenderingFeaturesEXT>()))
 {
        static const Feature features[] =
@@ -683,16 +714,6 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 2, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
-if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>()))
-{
-       static const Feature features[] =
-       {
-               FEATURE_ITEM (VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV, fragmentShaderBarycentric),
-       };
-       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV*>(featuresStruct);
-       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
-}
-
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceShaderImageFootprintFeaturesNV>()))
 {
        static const Feature features[] =
@@ -1002,6 +1023,16 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD, shaderEarlyAndLateFragmentTests),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>()))
 {
        static const Feature features[] =
@@ -1045,6 +1076,26 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceImageCompressionControlFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceImageCompressionControlFeaturesEXT, imageCompressionControl),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceImageCompressionControlFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT, attachmentFeedbackLoopLayout),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDevice4444FormatsFeaturesEXT>()))
 {
        static const Feature features[] =
@@ -1149,6 +1200,26 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDevicePipelinePropertiesFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDevicePipelinePropertiesFeaturesEXT, pipelinePropertiesIdentifier),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDevicePipelinePropertiesFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT, multisampledRenderToSingleSampled),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>()))
 {
        static const Feature features[] =
@@ -1245,6 +1316,16 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT, nonSeamlessCubeMap),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>()))
 {
        static const Feature features[] =
@@ -1265,6 +1346,68 @@ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(de
        checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
 }
 
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT, imageCompressionControlSwapchain),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceImageProcessingFeaturesQCOM>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceImageProcessingFeaturesQCOM, textureSampleWeighted),
+               FEATURE_ITEM (VkPhysicalDeviceImageProcessingFeaturesQCOM, textureBoxFilter),
+               FEATURE_ITEM (VkPhysicalDeviceImageProcessingFeaturesQCOM, textureBlockMatch),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceImageProcessingFeaturesQCOM*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 3, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT, subpassMergeFeedback),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT, shaderModuleIdentifier),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceTilePropertiesFeaturesQCOM>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceTilePropertiesFeaturesQCOM, tileProperties),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceTilePropertiesFeaturesQCOM*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
+if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceAmigoProfilingFeaturesSEC>()))
+{
+       static const Feature features[] =
+       {
+               FEATURE_ITEM (VkPhysicalDeviceAmigoProfilingFeaturesSEC, amigoProfiling),
+       };
+       auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceAmigoProfilingFeaturesSEC*>(featuresStruct);
+       checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+}
+
 if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceAccelerationStructureFeaturesKHR>()))
 {
        static const Feature features[] =
index 6d4e442..748f843 100644 (file)
@@ -11,7 +11,9 @@ namespace vk
 #define VK_EXT_4444_FORMATS_EXTENSION_NAME "VK_EXT_4444_formats"
 #define VK_KHR_8BIT_STORAGE_EXTENSION_NAME "VK_KHR_8bit_storage"
 #define VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME "VK_KHR_acceleration_structure"
+#define VK_SEC_AMIGO_PROFILING_EXTENSION_NAME "VK_SEC_amigo_profiling"
 #define VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME "VK_EXT_astc_decode_mode"
+#define VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME "VK_EXT_attachment_feedback_loop_layout"
 #define VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME "VK_EXT_blend_operation_advanced"
 #define VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME "VK_EXT_border_color_swizzle"
 #define VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME "VK_KHR_buffer_device_address"
@@ -40,7 +42,7 @@ namespace vk
 #define VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME "VK_EXT_fragment_density_map"
 #define VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME "VK_EXT_fragment_density_map2"
 #define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME "VK_QCOM_fragment_density_map_offset"
-#define VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME "VK_NV_fragment_shader_barycentric"
+#define VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME "VK_KHR_fragment_shader_barycentric"
 #define VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME "VK_EXT_fragment_shader_interlock"
 #define VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME "VK_KHR_fragment_shading_rate"
 #define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME "VK_NV_fragment_shading_rate_enums"
@@ -49,6 +51,9 @@ namespace vk
 #define VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME "VK_EXT_host_query_reset"
 #define VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME "VK_KHR_imageless_framebuffer"
 #define VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME "VK_EXT_image_2d_view_of_3d"
+#define VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME "VK_EXT_image_compression_control"
+#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME "VK_EXT_image_compression_control_swapchain"
+#define VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME "VK_QCOM_image_processing"
 #define VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME "VK_EXT_image_robustness"
 #define VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME "VK_EXT_image_view_min_lod"
 #define VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME "VK_EXT_index_type_uint8"
@@ -60,13 +65,17 @@ namespace vk
 #define DECL_MAINTENANCE4_EXTENSION_NAME "not_existent_feature"
 #define VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME "VK_EXT_memory_priority"
 #define VK_NV_MESH_SHADER_EXTENSION_NAME  "VK_NV_mesh_shader"
+#define VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME "VK_EXT_multisampled_render_to_single_sampled"
 #define VK_KHR_MULTIVIEW_EXTENSION_NAME   "VK_KHR_multiview"
 #define VK_EXT_MULTI_DRAW_EXTENSION_NAME  "VK_EXT_multi_draw"
 #define VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME "VK_VALVE_mutable_descriptor_type"
+#define VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME "VK_EXT_non_seamless_cube_map"
 #define VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME "VK_EXT_pageable_device_local_memory"
 #define VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME "VK_KHR_performance_query"
 #define VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME "VK_EXT_pipeline_creation_cache_control"
 #define VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME "VK_KHR_pipeline_executable_properties"
+#define VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME "VK_EXT_pipeline_properties"
+#define VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME "VK_EXT_pipeline_robustness"
 #define VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME "VK_KHR_portability_subset"
 #define VK_KHR_PRESENT_ID_EXTENSION_NAME  "VK_KHR_present_id"
 #define VK_KHR_PRESENT_WAIT_EXTENSION_NAME "VK_KHR_present_wait"
@@ -76,6 +85,7 @@ namespace vk
 #define DECL_PROTECTED_MEMORY_EXTENSION_NAME "not_existent_feature"
 #define VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME "VK_EXT_provoking_vertex"
 #define VK_KHR_RAY_QUERY_EXTENSION_NAME   "VK_KHR_ray_query"
+#define VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME "VK_KHR_ray_tracing_maintenance1"
 #define VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME "VK_NV_ray_tracing_motion_blur"
 #define VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME "VK_KHR_ray_tracing_pipeline"
 #define VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME "VK_NV_representative_fragment_test"
@@ -90,21 +100,25 @@ namespace vk
 #define VK_KHR_SHADER_CLOCK_EXTENSION_NAME "VK_KHR_shader_clock"
 #define VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME "VK_EXT_shader_demote_to_helper_invocation"
 #define VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME "VK_KHR_shader_draw_parameters"
+#define VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME "VK_AMD_shader_early_and_late_fragment_tests"
 #define VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME "VK_KHR_shader_float16_int8"
 #define VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME "VK_EXT_shader_image_atomic_int64"
 #define VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME "VK_NV_shader_image_footprint"
 #define VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME "VK_KHR_shader_integer_dot_product"
 #define VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME "VK_INTEL_shader_integer_functions2"
+#define VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME "VK_EXT_shader_module_identifier"
 #define VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME "VK_NV_shader_sm_builtins"
 #define VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME "VK_KHR_shader_subgroup_extended_types"
 #define VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME "VK_KHR_shader_subgroup_uniform_control_flow"
 #define VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME "VK_KHR_shader_terminate_invocation"
 #define VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME "VK_NV_shading_rate_image"
 #define VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME "VK_EXT_subgroup_size_control"
+#define VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME "VK_EXT_subpass_merge_feedback"
 #define VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME "VK_HUAWEI_subpass_shading"
 #define VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME "VK_KHR_synchronization2"
 #define VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME "VK_EXT_texel_buffer_alignment"
 #define VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME "VK_EXT_texture_compression_astc_hdr"
+#define VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME "VK_QCOM_tile_properties"
 #define VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME "VK_KHR_timeline_semaphore"
 #define VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME "VK_EXT_transform_feedback"
 #define VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME "VK_KHR_uniform_buffer_standard_layout"
@@ -290,11 +304,14 @@ template<> void initFeatureFromBlob<VkPhysicalDeviceFragmentShadingRateFeaturesK
 template<> void initFeatureFromBlob<VkPhysicalDevicePresentWaitFeaturesKHR>(VkPhysicalDevicePresentWaitFeaturesKHR&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDevicePresentIdFeaturesKHR>(VkPhysicalDevicePresentIdFeaturesKHR&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR>(VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR>(VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceTransformFeedbackFeaturesEXT>(VkPhysicalDeviceTransformFeedbackFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceCornerSampledImageFeaturesNV>(VkPhysicalDeviceCornerSampledImageFeaturesNV&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceASTCDecodeFeaturesEXT>(VkPhysicalDeviceASTCDecodeFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDevicePipelineRobustnessFeaturesEXT>(VkPhysicalDevicePipelineRobustnessFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceConditionalRenderingFeaturesEXT>(VkPhysicalDeviceConditionalRenderingFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceDepthClipEnableFeaturesEXT>(VkPhysicalDeviceDepthClipEnableFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT&, const AllFeaturesBlobs&) {}
@@ -304,7 +321,6 @@ template<> void initFeatureFromBlob<VkPhysicalDeviceRepresentativeFragmentTestFe
 template<> void initFeatureFromBlob<VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT>(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>(VkPhysicalDeviceComputeShaderDerivativesFeaturesNV&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceMeshShaderFeaturesNV>(VkPhysicalDeviceMeshShaderFeaturesNV&, const AllFeaturesBlobs&) {}
-template<> void initFeatureFromBlob<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>(VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceShaderImageFootprintFeaturesNV>(VkPhysicalDeviceShaderImageFootprintFeaturesNV&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceExclusiveScissorFeaturesNV>(VkPhysicalDeviceExclusiveScissorFeaturesNV&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>(VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL&, const AllFeaturesBlobs&) {}
@@ -332,10 +348,13 @@ template<> void initFeatureFromBlob<VkPhysicalDeviceRobustness2FeaturesEXT>(VkPh
 template<> void initFeatureFromBlob<VkPhysicalDeviceCustomBorderColorFeaturesEXT>(VkPhysicalDeviceCustomBorderColorFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>(VkPhysicalDeviceDiagnosticsConfigFeaturesNV&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>(VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD>(VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>(VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV>(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT>(VkPhysicalDeviceFragmentDensityMap2FeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceImageCompressionControlFeaturesEXT>(VkPhysicalDeviceImageCompressionControlFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>(VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDevice4444FormatsFeaturesEXT>(VkPhysicalDevice4444FormatsFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM>(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT&, const AllFeaturesBlobs&) {}
@@ -346,6 +365,8 @@ template<> void initFeatureFromBlob<VkPhysicalDevicePrimitiveTopologyListRestart
 template<> void initFeatureFromBlob<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI>(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV>(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDevicePipelinePropertiesFeaturesEXT>(VkPhysicalDevicePipelinePropertiesFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT>(VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceColorWriteEnableFeaturesEXT>(VkPhysicalDeviceColorWriteEnableFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT&, const AllFeaturesBlobs&) {}
@@ -355,112 +376,133 @@ template<> void initFeatureFromBlob<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>(
 template<> void initFeatureFromBlob<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>(VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT>(VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>(VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>(VkPhysicalDeviceLinearColorAttachmentFeaturesNV&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>(VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceImageProcessingFeaturesQCOM>(VkPhysicalDeviceImageProcessingFeaturesQCOM&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>(VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>(VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceTilePropertiesFeaturesQCOM>(VkPhysicalDeviceTilePropertiesFeaturesQCOM&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceAmigoProfilingFeaturesSEC>(VkPhysicalDeviceAmigoProfilingFeaturesSEC&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceAccelerationStructureFeaturesKHR>(VkPhysicalDeviceAccelerationStructureFeaturesKHR&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>(VkPhysicalDeviceRayTracingPipelineFeaturesKHR&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDeviceRayQueryFeaturesKHR>(VkPhysicalDeviceRayQueryFeaturesKHR&, const AllFeaturesBlobs&) {}
 template<> void initFeatureFromBlob<VkPhysicalDevicePortabilitySubsetFeaturesKHR>(VkPhysicalDevicePortabilitySubsetFeaturesKHR&, const AllFeaturesBlobs&) {}
 
 
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice16BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES, VK_KHR_16BIT_STORAGE_EXTENSION_NAME, VK_KHR_16BIT_STORAGE_SPEC_VERSION, 109}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice4444FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT, VK_EXT_4444_FORMATS_EXTENSION_NAME, VK_EXT_4444_FORMATS_SPEC_VERSION, 108}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice8BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES, VK_KHR_8BIT_STORAGE_EXTENSION_NAME, VK_KHR_8BIT_STORAGE_SPEC_VERSION, 107}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAccelerationStructureFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION, 106}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceASTCDecodeFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME, VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION, 105}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 104}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT, VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME, VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION, 103}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES, VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 102}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 101}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoherentMemoryFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, DECL_AMD_COHERENT_MEMORY_EXTENSION_NAME, 0, 100}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceColorWriteEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME, VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION, 99}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME, VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION, 98}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceConditionalRenderingFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME, VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION, 97}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCooperativeMatrixFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 96}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCornerSampledImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME, VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION, 95}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoverageReductionModeFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME, VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION, 94}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCustomBorderColorFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION, 93}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION, 92}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipControlFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT, VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION, 91}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION, 90}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorIndexingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 89}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE, VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME, VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION, 88}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 87}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT, VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME, VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION, 86}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV, DECL_NV_DIAGNOSTICS_CONFIG_EXTENSION_NAME, 0, 85}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDynamicRenderingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES, VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME, VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION, 84}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExclusiveScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME, VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION, 83}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION, 82}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION, 81}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV, VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME, VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION, 80}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 79}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION, 78}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION, 77}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 76}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME, VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION, 75}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShadingRateFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION, 74}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION, 73}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR, DECL_KHR_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME, 0, 72}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION, 71}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceHostQueryResetFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES, VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, VK_EXT_HOST_QUERY_RESET_SPEC_VERSION, 70}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImagelessFramebufferFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES, VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME, VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION, 69}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT, VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME, VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION, 68}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageRobustnessFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES, VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION, 67}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageViewMinLodFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT, VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME, VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION, 66}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME, VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION, 65}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInheritedViewportScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV, VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME, VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION, 64}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInlineUniformBlockFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 63}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI, VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME, VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION, 62}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV, VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME, VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION, 61}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLineRasterizationFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 60}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMaintenance4Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES, DECL_MAINTENANCE4_EXTENSION_NAME, 0, 59}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMemoryPriorityFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME, VK_EXT_MEMORY_PRIORITY_SPEC_VERSION, 58}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMeshShaderFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 57}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiviewFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 56}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiDrawFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION, 55}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION, 54}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION, 53}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePerformanceQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 52}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineCreationCacheControlFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION, 51}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION, 50}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePortabilitySubsetFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION, 49}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentIdFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION, 48}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentWaitFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR, VK_KHR_PRESENT_WAIT_EXTENSION_NAME, VK_KHR_PRESENT_WAIT_SPEC_VERSION, 47}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT, VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME, VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION, 46}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION, 45}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrivateDataFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES, VK_EXT_PRIVATE_DATA_EXTENSION_NAME, VK_EXT_PRIVATE_DATA_SPEC_VERSION, 44}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProtectedMemoryFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 43}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProvokingVertexFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION, 42}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR, VK_KHR_RAY_QUERY_EXTENSION_NAME, VK_KHR_RAY_QUERY_SPEC_VERSION, 41}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV, VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME, VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION, 40}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION, 39}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION, 38}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT, VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME, VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION, 37}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRobustness2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION, 36}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSamplerYcbcrConversionFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES, VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME, VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION, 35}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceScalarBlockLayoutFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES, VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME, VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION, 34}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES, VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME, VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION, 33}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT, VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME, VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION, 32}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT, VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME, VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION, 31}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicInt64Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES, VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME, VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION, 30}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderClockFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR, VK_KHR_SHADER_CLOCK_EXTENSION_NAME, VK_KHR_SHADER_CLOCK_SPEC_VERSION, 29}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION, 28}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderDrawParametersFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME, VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION, 27}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderFloat16Int8Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES, VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME, VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION, 26}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION, 25}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderImageFootprintFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV, VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME, VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION, 24}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderIntegerDotProductFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION, 23}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION, 22}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV, VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME, VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION, 21}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION, 20}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION, 19}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderTerminateInvocationFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES, VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME, VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION, 18}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShadingRateImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION, 17}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubgroupSizeControlFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION, 16}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION, 15}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSynchronization2Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES, VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME, VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION, 14}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT, VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME, VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION, 13}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTextureCompressionASTCHDRFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION, 12}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice16BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES, VK_KHR_16BIT_STORAGE_EXTENSION_NAME, VK_KHR_16BIT_STORAGE_SPEC_VERSION, 123}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice4444FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT, VK_EXT_4444_FORMATS_EXTENSION_NAME, VK_EXT_4444_FORMATS_SPEC_VERSION, 122}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice8BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES, VK_KHR_8BIT_STORAGE_EXTENSION_NAME, VK_KHR_8BIT_STORAGE_SPEC_VERSION, 121}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAccelerationStructureFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION, 120}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAmigoProfilingFeaturesSEC>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC, VK_SEC_AMIGO_PROFILING_EXTENSION_NAME, VK_SEC_AMIGO_PROFILING_SPEC_VERSION, 119}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceASTCDecodeFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME, VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION, 118}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION, 117}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 116}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT, VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME, VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION, 115}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES, VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 114}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 113}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoherentMemoryFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, DECL_AMD_COHERENT_MEMORY_EXTENSION_NAME, 0, 112}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceColorWriteEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME, VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION, 111}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME, VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION, 110}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceConditionalRenderingFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME, VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION, 109}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCooperativeMatrixFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 108}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCornerSampledImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME, VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION, 107}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoverageReductionModeFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME, VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION, 106}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCustomBorderColorFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION, 105}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION, 104}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipControlFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT, VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION, 103}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION, 102}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorIndexingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 101}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE, VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME, VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION, 100}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 99}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT, VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME, VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION, 98}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV, DECL_NV_DIAGNOSTICS_CONFIG_EXTENSION_NAME, 0, 97}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDynamicRenderingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES, VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME, VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION, 96}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExclusiveScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME, VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION, 95}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION, 94}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION, 93}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV, VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME, VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION, 92}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 91}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION, 90}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION, 89}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 88}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME, VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION, 87}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShadingRateFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION, 86}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION, 85}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR, DECL_KHR_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME, 0, 84}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION, 83}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceHostQueryResetFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES, VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, VK_EXT_HOST_QUERY_RESET_SPEC_VERSION, 82}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImagelessFramebufferFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES, VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME, VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION, 81}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT, VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME, VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION, 80}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageCompressionControlFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT, VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION, 79}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION, 78}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageProcessingFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION, 77}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageRobustnessFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES, VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION, 76}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageViewMinLodFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT, VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME, VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION, 75}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME, VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION, 74}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInheritedViewportScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV, VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME, VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION, 73}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInlineUniformBlockFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 72}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI, VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME, VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION, 71}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV, VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME, VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION, 70}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLineRasterizationFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 69}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMaintenance4Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES, DECL_MAINTENANCE4_EXTENSION_NAME, 0, 68}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMemoryPriorityFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME, VK_EXT_MEMORY_PRIORITY_SPEC_VERSION, 67}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMeshShaderFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 66}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT, VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME, VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION, 65}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiviewFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 64}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiDrawFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION, 63}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION, 62}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT, VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME, VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION, 61}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION, 60}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePerformanceQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 59}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineCreationCacheControlFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION, 58}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION, 57}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelinePropertiesFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT, VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME, VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION, 56}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineRobustnessFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT, VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION, 55}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePortabilitySubsetFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION, 54}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentIdFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION, 53}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentWaitFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR, VK_KHR_PRESENT_WAIT_EXTENSION_NAME, VK_KHR_PRESENT_WAIT_SPEC_VERSION, 52}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT, VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME, VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION, 51}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION, 50}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrivateDataFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES, VK_EXT_PRIVATE_DATA_EXTENSION_NAME, VK_EXT_PRIVATE_DATA_SPEC_VERSION, 49}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProtectedMemoryFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 48}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProvokingVertexFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION, 47}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR, VK_KHR_RAY_QUERY_EXTENSION_NAME, VK_KHR_RAY_QUERY_SPEC_VERSION, 46}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR, VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME, VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION, 45}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV, VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME, VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION, 44}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION, 43}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION, 42}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT, VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME, VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION, 41}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRobustness2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION, 40}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSamplerYcbcrConversionFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES, VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME, VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION, 39}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceScalarBlockLayoutFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES, VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME, VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION, 38}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES, VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME, VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION, 37}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT, VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME, VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION, 36}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT, VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME, VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION, 35}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicInt64Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES, VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME, VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION, 34}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderClockFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR, VK_KHR_SHADER_CLOCK_EXTENSION_NAME, VK_KHR_SHADER_CLOCK_SPEC_VERSION, 33}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION, 32}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderDrawParametersFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME, VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION, 31}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD, VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME, VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION, 30}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderFloat16Int8Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES, VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME, VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION, 29}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION, 28}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderImageFootprintFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV, VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME, VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION, 27}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderIntegerDotProductFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION, 26}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION, 25}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION, 24}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV, VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME, VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION, 23}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION, 22}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION, 21}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderTerminateInvocationFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES, VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME, VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION, 20}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShadingRateImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION, 19}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubgroupSizeControlFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION, 18}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT, VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME, VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION, 17}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION, 16}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSynchronization2Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES, VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME, VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION, 15}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT, VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME, VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION, 14}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTextureCompressionASTCHDRFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION, 13}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTilePropertiesFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM, VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME, VK_QCOM_TILE_PROPERTIES_SPEC_VERSION, 12}; }
 template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTimelineSemaphoreFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES, VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME, VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION, 11}; }
 template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTransformFeedbackFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT, VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME, VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION, 10}; }
 template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceUniformBufferStandardLayoutFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES, VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME, VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION, 9}; }
@@ -480,7 +522,9 @@ static const FeatureStructCreationData featureStructCreationArray[]
        { createFeatureStructWrapper<VkPhysicalDevice4444FormatsFeaturesEXT>, VK_EXT_4444_FORMATS_EXTENSION_NAME, VK_EXT_4444_FORMATS_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevice8BitStorageFeatures>, VK_KHR_8BIT_STORAGE_EXTENSION_NAME, VK_KHR_8BIT_STORAGE_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceAccelerationStructureFeaturesKHR>, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceAmigoProfilingFeaturesSEC>, VK_SEC_AMIGO_PROFILING_EXTENSION_NAME, VK_SEC_AMIGO_PROFILING_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceASTCDecodeFeaturesEXT>, VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME, VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>, VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME, VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceBufferDeviceAddressFeatures>, VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION },
@@ -509,7 +553,7 @@ static const FeatureStructCreationData featureStructCreationArray[]
        { createFeatureStructWrapper<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT>, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION },
-       { createFeatureStructWrapper<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR>, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>, VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME, VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceFragmentShadingRateFeaturesKHR>, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION },
@@ -518,6 +562,9 @@ static const FeatureStructCreationData featureStructCreationArray[]
        { createFeatureStructWrapper<VkPhysicalDeviceHostQueryResetFeatures>, VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, VK_EXT_HOST_QUERY_RESET_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceImagelessFramebufferFeatures>, VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME, VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>, VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME, VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceImageCompressionControlFeaturesEXT>, VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceImageProcessingFeaturesQCOM>, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceImageRobustnessFeatures>, VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceImageViewMinLodFeaturesEXT>, VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME, VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>, VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME, VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION },
@@ -529,13 +576,17 @@ static const FeatureStructCreationData featureStructCreationArray[]
        { createFeatureStructWrapper<VkPhysicalDeviceMaintenance4Features>, DECL_MAINTENANCE4_EXTENSION_NAME, 0 },
        { createFeatureStructWrapper<VkPhysicalDeviceMemoryPriorityFeaturesEXT>, VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME, VK_EXT_MEMORY_PRIORITY_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceMeshShaderFeaturesNV>, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT>, VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME, VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceMultiviewFeatures>, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceMultiDrawFeaturesEXT>, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT>, VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME, VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePerformanceQueryFeaturesKHR>, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePipelineCreationCacheControlFeatures>, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDevicePipelinePropertiesFeaturesEXT>, VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME, VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDevicePipelineRobustnessFeaturesEXT>, VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePortabilitySubsetFeaturesKHR>, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePresentIdFeaturesKHR>, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDevicePresentWaitFeaturesKHR>, VK_KHR_PRESENT_WAIT_EXTENSION_NAME, VK_KHR_PRESENT_WAIT_SPEC_VERSION },
@@ -545,6 +596,7 @@ static const FeatureStructCreationData featureStructCreationArray[]
        { createFeatureStructWrapper<VkPhysicalDeviceProtectedMemoryFeatures>, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0 },
        { createFeatureStructWrapper<VkPhysicalDeviceProvokingVertexFeaturesEXT>, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceRayQueryFeaturesKHR>, VK_KHR_RAY_QUERY_EXTENSION_NAME, VK_KHR_RAY_QUERY_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR>, VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME, VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV>, VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME, VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION },
@@ -559,21 +611,25 @@ static const FeatureStructCreationData featureStructCreationArray[]
        { createFeatureStructWrapper<VkPhysicalDeviceShaderClockFeaturesKHR>, VK_KHR_SHADER_CLOCK_EXTENSION_NAME, VK_KHR_SHADER_CLOCK_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures>, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderDrawParametersFeatures>, VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME, VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD>, VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME, VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderFloat16Int8Features>, VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME, VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT>, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderImageFootprintFeaturesNV>, VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME, VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderIntegerDotProductFeatures>, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV>, VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME, VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures>, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShaderTerminateInvocationFeatures>, VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME, VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceShadingRateImageFeaturesNV>, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceSubgroupSizeControlFeatures>, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>, VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME, VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceSynchronization2Features>, VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME, VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT>, VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME, VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceTextureCompressionASTCHDRFeatures>, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION },
+       { createFeatureStructWrapper<VkPhysicalDeviceTilePropertiesFeaturesQCOM>, VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME, VK_QCOM_TILE_PROPERTIES_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceTimelineSemaphoreFeatures>, VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME, VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceTransformFeedbackFeaturesEXT>, VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME, VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION },
        { createFeatureStructWrapper<VkPhysicalDeviceUniformBufferStandardLayoutFeatures>, VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME, VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION },
index 234a2ce..6b214f6 100644 (file)
  * This file was generated by /scripts/gen_framework.py
  */
 
-const vk::VkPhysicalDevice16BitStorageFeatures&                                                        get16BitStorageFeatures                                         (void) const;
-const vk::VkPhysicalDevice4444FormatsFeaturesEXT&                                              get4444FormatsFeaturesEXT                                       (void) const;
-const vk::VkPhysicalDevice8BitStorageFeatures&                                                 get8BitStorageFeatures                                          (void) const;
-const vk::VkPhysicalDeviceAccelerationStructureFeaturesKHR&                            getAccelerationStructureFeatures                        (void) const;
-const vk::VkPhysicalDeviceASTCDecodeFeaturesEXT&                                               getASTCDecodeFeaturesEXT                                        (void) const;
-const vk::VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT&                   getBlendOperationAdvancedFeaturesEXT            (void) const;
-const vk::VkPhysicalDeviceBorderColorSwizzleFeaturesEXT&                               getBorderColorSwizzleFeaturesEXT                        (void) const;
-const vk::VkPhysicalDeviceBufferDeviceAddressFeatures&                                 getBufferDeviceAddressFeatures                          (void) const;
-const vk::VkPhysicalDeviceBufferDeviceAddressFeaturesEXT&                              getBufferDeviceAddressFeaturesEXT                       (void) const;
-const vk::VkPhysicalDeviceCoherentMemoryFeaturesAMD&                                   getCoherentMemoryFeaturesAMD                            (void) const;
-const vk::VkPhysicalDeviceColorWriteEnableFeaturesEXT&                                 getColorWriteEnableFeaturesEXT                          (void) const;
-const vk::VkPhysicalDeviceComputeShaderDerivativesFeaturesNV&                  getComputeShaderDerivativesFeatures                     (void) const;
-const vk::VkPhysicalDeviceConditionalRenderingFeaturesEXT&                             getConditionalRenderingFeaturesEXT                      (void) const;
-const vk::VkPhysicalDeviceCooperativeMatrixFeaturesNV&                                 getCooperativeMatrixFeatures                            (void) const;
-const vk::VkPhysicalDeviceCornerSampledImageFeaturesNV&                                        getCornerSampledImageFeatures                           (void) const;
-const vk::VkPhysicalDeviceCoverageReductionModeFeaturesNV&                             getCoverageReductionModeFeatures                        (void) const;
-const vk::VkPhysicalDeviceCustomBorderColorFeaturesEXT&                                        getCustomBorderColorFeaturesEXT                         (void) const;
-const vk::VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&  getDedicatedAllocationImageAliasingFeatures     (void) const;
-const vk::VkPhysicalDeviceDepthClipControlFeaturesEXT&                                 getDepthClipControlFeaturesEXT                          (void) const;
-const vk::VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                  getDepthClipEnableFeaturesEXT                           (void) const;
-const vk::VkPhysicalDeviceDescriptorIndexingFeatures&                                  getDescriptorIndexingFeatures                           (void) const;
-const vk::VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE&               getDescriptorSetHostMappingFeaturesVALVE        (void) const;
-const vk::VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                   getDeviceGeneratedCommandsFeatures                      (void) const;
-const vk::VkPhysicalDeviceDeviceMemoryReportFeaturesEXT&                               getDeviceMemoryReportFeaturesEXT                        (void) const;
-const vk::VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                 getDiagnosticsConfigFeatures                            (void) const;
-const vk::VkPhysicalDeviceDynamicRenderingFeatures&                                            getDynamicRenderingFeatures                                     (void) const;
-const vk::VkPhysicalDeviceExclusiveScissorFeaturesNV&                                  getExclusiveScissorFeatures                                     (void) const;
-const vk::VkPhysicalDeviceExtendedDynamicStateFeaturesEXT&                             getExtendedDynamicStateFeaturesEXT                      (void) const;
-const vk::VkPhysicalDeviceExtendedDynamicState2FeaturesEXT&                            getExtendedDynamicState2FeaturesEXT                     (void) const;
-const vk::VkPhysicalDeviceExternalMemoryRDMAFeaturesNV&                                        getExternalMemoryRDMAFeatures                           (void) const;
-const vk::VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                               getFragmentDensityMapFeaturesEXT                        (void) const;
-const vk::VkPhysicalDeviceFragmentDensityMap2FeaturesEXT&                              getFragmentDensityMap2FeaturesEXT                       (void) const;
-const vk::VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM&                        getFragmentDensityMapOffsetFeaturesQCOM         (void) const;
-const vk::VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV&                 getFragmentShaderBarycentricFeatures            (void) const;
-const vk::VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT&                  getFragmentShaderInterlockFeaturesEXT           (void) const;
-const vk::VkPhysicalDeviceFragmentShadingRateFeaturesKHR&                              getFragmentShadingRateFeatures                          (void) const;
-const vk::VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV&                  getFragmentShadingRateEnumsFeatures                     (void) const;
-const vk::VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR&                              getGlobalPriorityQueryFeatures                          (void) const;
-const vk::VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT&                  getGraphicsPipelineLibraryFeaturesEXT           (void) const;
-const vk::VkPhysicalDeviceHostQueryResetFeatures&                                              getHostQueryResetFeatures                                       (void) const;
-const vk::VkPhysicalDeviceImagelessFramebufferFeatures&                                        getImagelessFramebufferFeatures                         (void) const;
-const vk::VkPhysicalDeviceImage2DViewOf3DFeaturesEXT&                                  getImage2DViewOf3DFeaturesEXT                           (void) const;
-const vk::VkPhysicalDeviceImageRobustnessFeatures&                                             getImageRobustnessFeatures                                      (void) const;
-const vk::VkPhysicalDeviceImageViewMinLodFeaturesEXT&                                  getImageViewMinLodFeaturesEXT                           (void) const;
-const vk::VkPhysicalDeviceIndexTypeUint8FeaturesEXT&                                   getIndexTypeUint8FeaturesEXT                            (void) const;
-const vk::VkPhysicalDeviceInheritedViewportScissorFeaturesNV&                  getInheritedViewportScissorFeatures                     (void) const;
-const vk::VkPhysicalDeviceInlineUniformBlockFeatures&                                  getInlineUniformBlockFeatures                           (void) const;
-const vk::VkPhysicalDeviceInvocationMaskFeaturesHUAWEI&                                        getInvocationMaskFeaturesHUAWEI                         (void) const;
-const vk::VkPhysicalDeviceLinearColorAttachmentFeaturesNV&                             getLinearColorAttachmentFeatures                        (void) const;
-const vk::VkPhysicalDeviceLineRasterizationFeaturesEXT&                                        getLineRasterizationFeaturesEXT                         (void) const;
-const vk::VkPhysicalDeviceMaintenance4Features&                                                        getMaintenance4Features                                         (void) const;
-const vk::VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                   getMemoryPriorityFeaturesEXT                            (void) const;
-const vk::VkPhysicalDeviceMeshShaderFeaturesNV&                                                        getMeshShaderFeatures                                           (void) const;
-const vk::VkPhysicalDeviceMultiviewFeatures&                                                   getMultiviewFeatures                                            (void) const;
-const vk::VkPhysicalDeviceMultiDrawFeaturesEXT&                                                        getMultiDrawFeaturesEXT                                         (void) const;
-const vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE&                  getMutableDescriptorTypeFeaturesVALVE           (void) const;
-const vk::VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT&                        getPageableDeviceLocalMemoryFeaturesEXT         (void) const;
-const vk::VkPhysicalDevicePerformanceQueryFeaturesKHR&                                 getPerformanceQueryFeatures                                     (void) const;
-const vk::VkPhysicalDevicePipelineCreationCacheControlFeatures&                        getPipelineCreationCacheControlFeatures         (void) const;
-const vk::VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&             getPipelineExecutablePropertiesFeatures         (void) const;
-const vk::VkPhysicalDevicePortabilitySubsetFeaturesKHR&                                        getPortabilitySubsetFeatures                            (void) const;
-const vk::VkPhysicalDevicePresentIdFeaturesKHR&                                                        getPresentIdFeatures                                            (void) const;
-const vk::VkPhysicalDevicePresentWaitFeaturesKHR&                                              getPresentWaitFeatures                                          (void) const;
-const vk::VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT&                 getPrimitivesGeneratedQueryFeaturesEXT          (void) const;
-const vk::VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT&             getPrimitiveTopologyListRestartFeaturesEXT      (void) const;
-const vk::VkPhysicalDevicePrivateDataFeatures&                                                 getPrivateDataFeatures                                          (void) const;
-const vk::VkPhysicalDeviceProtectedMemoryFeatures&                                             getProtectedMemoryFeatures                                      (void) const;
-const vk::VkPhysicalDeviceProvokingVertexFeaturesEXT&                                  getProvokingVertexFeaturesEXT                           (void) const;
-const vk::VkPhysicalDeviceRayQueryFeaturesKHR&                                                 getRayQueryFeatures                                                     (void) const;
-const vk::VkPhysicalDeviceRayTracingMotionBlurFeaturesNV&                              getRayTracingMotionBlurFeatures                         (void) const;
-const vk::VkPhysicalDeviceRayTracingPipelineFeaturesKHR&                               getRayTracingPipelineFeatures                           (void) const;
-const vk::VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                        getRepresentativeFragmentTestFeatures           (void) const;
-const vk::VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT&                                  getRGBA10X6FormatsFeaturesEXT                           (void) const;
-const vk::VkPhysicalDeviceRobustness2FeaturesEXT&                                              getRobustness2FeaturesEXT                                       (void) const;
-const vk::VkPhysicalDeviceSamplerYcbcrConversionFeatures&                              getSamplerYcbcrConversionFeatures                       (void) const;
-const vk::VkPhysicalDeviceScalarBlockLayoutFeatures&                                   getScalarBlockLayoutFeatures                            (void) const;
-const vk::VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures&                 getSeparateDepthStencilLayoutsFeatures          (void) const;
-const vk::VkPhysicalDeviceShaderAtomicFloatFeaturesEXT&                                        getShaderAtomicFloatFeaturesEXT                         (void) const;
-const vk::VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT&                               getShaderAtomicFloat2FeaturesEXT                        (void) const;
-const vk::VkPhysicalDeviceShaderAtomicInt64Features&                                   getShaderAtomicInt64Features                            (void) const;
-const vk::VkPhysicalDeviceShaderClockFeaturesKHR&                                              getShaderClockFeatures                                          (void) const;
-const vk::VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures&              getShaderDemoteToHelperInvocationFeatures       (void) const;
-const vk::VkPhysicalDeviceShaderDrawParametersFeatures&                                        getShaderDrawParametersFeatures                         (void) const;
-const vk::VkPhysicalDeviceShaderFloat16Int8Features&                                   getShaderFloat16Int8Features                            (void) const;
-const vk::VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT&                   getShaderImageAtomicInt64FeaturesEXT            (void) const;
-const vk::VkPhysicalDeviceShaderImageFootprintFeaturesNV&                              getShaderImageFootprintFeatures                         (void) const;
-const vk::VkPhysicalDeviceShaderIntegerDotProductFeatures&                             getShaderIntegerDotProductFeatures                      (void) const;
-const vk::VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL&                        getShaderIntegerFunctions2FeaturesINTEL         (void) const;
-const vk::VkPhysicalDeviceShaderSMBuiltinsFeaturesNV&                                  getShaderSMBuiltinsFeatures                                     (void) const;
-const vk::VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures&                 getShaderSubgroupExtendedTypesFeatures          (void) const;
-const vk::VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR& getShaderSubgroupUniformControlFlowFeatures     (void) const;
-const vk::VkPhysicalDeviceShaderTerminateInvocationFeatures&                   getShaderTerminateInvocationFeatures            (void) const;
-const vk::VkPhysicalDeviceShadingRateImageFeaturesNV&                                  getShadingRateImageFeatures                                     (void) const;
-const vk::VkPhysicalDeviceSubgroupSizeControlFeatures&                                 getSubgroupSizeControlFeatures                          (void) const;
-const vk::VkPhysicalDeviceSubpassShadingFeaturesHUAWEI&                                        getSubpassShadingFeaturesHUAWEI                         (void) const;
-const vk::VkPhysicalDeviceSynchronization2Features&                                            getSynchronization2Features                                     (void) const;
-const vk::VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT&                             getTexelBufferAlignmentFeaturesEXT                      (void) const;
-const vk::VkPhysicalDeviceTextureCompressionASTCHDRFeatures&                   getTextureCompressionASTCHDRFeatures            (void) const;
-const vk::VkPhysicalDeviceTimelineSemaphoreFeatures&                                   getTimelineSemaphoreFeatures                            (void) const;
-const vk::VkPhysicalDeviceTransformFeedbackFeaturesEXT&                                        getTransformFeedbackFeaturesEXT                         (void) const;
-const vk::VkPhysicalDeviceUniformBufferStandardLayoutFeatures&                 getUniformBufferStandardLayoutFeatures          (void) const;
-const vk::VkPhysicalDeviceVariablePointersFeatures&                                            getVariablePointersFeatures                                     (void) const;
-const vk::VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT&                   getVertexAttributeDivisorFeaturesEXT            (void) const;
-const vk::VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT&                  getVertexInputDynamicStateFeaturesEXT           (void) const;
-const vk::VkPhysicalDeviceVulkanMemoryModelFeatures&                                   getVulkanMemoryModelFeatures                            (void) const;
-const vk::VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR&            getWorkgroupMemoryExplicitLayoutFeatures        (void) const;
-const vk::VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT&                            getYcbcr2Plane444FormatsFeaturesEXT                     (void) const;
-const vk::VkPhysicalDeviceYcbcrImageArraysFeaturesEXT&                                 getYcbcrImageArraysFeaturesEXT                          (void) const;
-const vk::VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures&               getZeroInitializeWorkgroupMemoryFeatures        (void) const;
+const vk::VkPhysicalDevice16BitStorageFeatures&                                                        get16BitStorageFeatures                                                 (void) const;
+const vk::VkPhysicalDevice4444FormatsFeaturesEXT&                                              get4444FormatsFeaturesEXT                                               (void) const;
+const vk::VkPhysicalDevice8BitStorageFeatures&                                                 get8BitStorageFeatures                                                  (void) const;
+const vk::VkPhysicalDeviceAccelerationStructureFeaturesKHR&                            getAccelerationStructureFeatures                                (void) const;
+const vk::VkPhysicalDeviceAmigoProfilingFeaturesSEC&                                   getAmigoProfilingFeaturesSEC                                    (void) const;
+const vk::VkPhysicalDeviceASTCDecodeFeaturesEXT&                                               getASTCDecodeFeaturesEXT                                                (void) const;
+const vk::VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT&             getAttachmentFeedbackLoopLayoutFeaturesEXT              (void) const;
+const vk::VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT&                   getBlendOperationAdvancedFeaturesEXT                    (void) const;
+const vk::VkPhysicalDeviceBorderColorSwizzleFeaturesEXT&                               getBorderColorSwizzleFeaturesEXT                                (void) const;
+const vk::VkPhysicalDeviceBufferDeviceAddressFeatures&                                 getBufferDeviceAddressFeatures                                  (void) const;
+const vk::VkPhysicalDeviceBufferDeviceAddressFeaturesEXT&                              getBufferDeviceAddressFeaturesEXT                               (void) const;
+const vk::VkPhysicalDeviceCoherentMemoryFeaturesAMD&                                   getCoherentMemoryFeaturesAMD                                    (void) const;
+const vk::VkPhysicalDeviceColorWriteEnableFeaturesEXT&                                 getColorWriteEnableFeaturesEXT                                  (void) const;
+const vk::VkPhysicalDeviceComputeShaderDerivativesFeaturesNV&                  getComputeShaderDerivativesFeatures                             (void) const;
+const vk::VkPhysicalDeviceConditionalRenderingFeaturesEXT&                             getConditionalRenderingFeaturesEXT                              (void) const;
+const vk::VkPhysicalDeviceCooperativeMatrixFeaturesNV&                                 getCooperativeMatrixFeatures                                    (void) const;
+const vk::VkPhysicalDeviceCornerSampledImageFeaturesNV&                                        getCornerSampledImageFeatures                                   (void) const;
+const vk::VkPhysicalDeviceCoverageReductionModeFeaturesNV&                             getCoverageReductionModeFeatures                                (void) const;
+const vk::VkPhysicalDeviceCustomBorderColorFeaturesEXT&                                        getCustomBorderColorFeaturesEXT                                 (void) const;
+const vk::VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&  getDedicatedAllocationImageAliasingFeatures             (void) const;
+const vk::VkPhysicalDeviceDepthClipControlFeaturesEXT&                                 getDepthClipControlFeaturesEXT                                  (void) const;
+const vk::VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                  getDepthClipEnableFeaturesEXT                                   (void) const;
+const vk::VkPhysicalDeviceDescriptorIndexingFeatures&                                  getDescriptorIndexingFeatures                                   (void) const;
+const vk::VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE&               getDescriptorSetHostMappingFeaturesVALVE                (void) const;
+const vk::VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                   getDeviceGeneratedCommandsFeatures                              (void) const;
+const vk::VkPhysicalDeviceDeviceMemoryReportFeaturesEXT&                               getDeviceMemoryReportFeaturesEXT                                (void) const;
+const vk::VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                 getDiagnosticsConfigFeatures                                    (void) const;
+const vk::VkPhysicalDeviceDynamicRenderingFeatures&                                            getDynamicRenderingFeatures                                             (void) const;
+const vk::VkPhysicalDeviceExclusiveScissorFeaturesNV&                                  getExclusiveScissorFeatures                                             (void) const;
+const vk::VkPhysicalDeviceExtendedDynamicStateFeaturesEXT&                             getExtendedDynamicStateFeaturesEXT                              (void) const;
+const vk::VkPhysicalDeviceExtendedDynamicState2FeaturesEXT&                            getExtendedDynamicState2FeaturesEXT                             (void) const;
+const vk::VkPhysicalDeviceExternalMemoryRDMAFeaturesNV&                                        getExternalMemoryRDMAFeatures                                   (void) const;
+const vk::VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                               getFragmentDensityMapFeaturesEXT                                (void) const;
+const vk::VkPhysicalDeviceFragmentDensityMap2FeaturesEXT&                              getFragmentDensityMap2FeaturesEXT                               (void) const;
+const vk::VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM&                        getFragmentDensityMapOffsetFeaturesQCOM                 (void) const;
+const vk::VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR&                        getFragmentShaderBarycentricFeatures                    (void) const;
+const vk::VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT&                  getFragmentShaderInterlockFeaturesEXT                   (void) const;
+const vk::VkPhysicalDeviceFragmentShadingRateFeaturesKHR&                              getFragmentShadingRateFeatures                                  (void) const;
+const vk::VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV&                  getFragmentShadingRateEnumsFeatures                             (void) const;
+const vk::VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR&                              getGlobalPriorityQueryFeatures                                  (void) const;
+const vk::VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT&                  getGraphicsPipelineLibraryFeaturesEXT                   (void) const;
+const vk::VkPhysicalDeviceHostQueryResetFeatures&                                              getHostQueryResetFeatures                                               (void) const;
+const vk::VkPhysicalDeviceImagelessFramebufferFeatures&                                        getImagelessFramebufferFeatures                                 (void) const;
+const vk::VkPhysicalDeviceImage2DViewOf3DFeaturesEXT&                                  getImage2DViewOf3DFeaturesEXT                                   (void) const;
+const vk::VkPhysicalDeviceImageCompressionControlFeaturesEXT&                  getImageCompressionControlFeaturesEXT                   (void) const;
+const vk::VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT& getImageCompressionControlSwapchainFeaturesEXT  (void) const;
+const vk::VkPhysicalDeviceImageProcessingFeaturesQCOM&                                 getImageProcessingFeaturesQCOM                                  (void) const;
+const vk::VkPhysicalDeviceImageRobustnessFeatures&                                             getImageRobustnessFeatures                                              (void) const;
+const vk::VkPhysicalDeviceImageViewMinLodFeaturesEXT&                                  getImageViewMinLodFeaturesEXT                                   (void) const;
+const vk::VkPhysicalDeviceIndexTypeUint8FeaturesEXT&                                   getIndexTypeUint8FeaturesEXT                                    (void) const;
+const vk::VkPhysicalDeviceInheritedViewportScissorFeaturesNV&                  getInheritedViewportScissorFeatures                             (void) const;
+const vk::VkPhysicalDeviceInlineUniformBlockFeatures&                                  getInlineUniformBlockFeatures                                   (void) const;
+const vk::VkPhysicalDeviceInvocationMaskFeaturesHUAWEI&                                        getInvocationMaskFeaturesHUAWEI                                 (void) const;
+const vk::VkPhysicalDeviceLinearColorAttachmentFeaturesNV&                             getLinearColorAttachmentFeatures                                (void) const;
+const vk::VkPhysicalDeviceLineRasterizationFeaturesEXT&                                        getLineRasterizationFeaturesEXT                                 (void) const;
+const vk::VkPhysicalDeviceMaintenance4Features&                                                        getMaintenance4Features                                                 (void) const;
+const vk::VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                   getMemoryPriorityFeaturesEXT                                    (void) const;
+const vk::VkPhysicalDeviceMeshShaderFeaturesNV&                                                        getMeshShaderFeatures                                                   (void) const;
+const vk::VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT&        getMultisampledRenderToSingleSampledFeaturesEXT (void) const;
+const vk::VkPhysicalDeviceMultiviewFeatures&                                                   getMultiviewFeatures                                                    (void) const;
+const vk::VkPhysicalDeviceMultiDrawFeaturesEXT&                                                        getMultiDrawFeaturesEXT                                                 (void) const;
+const vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE&                  getMutableDescriptorTypeFeaturesVALVE                   (void) const;
+const vk::VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT&                               getNonSeamlessCubeMapFeaturesEXT                                (void) const;
+const vk::VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT&                        getPageableDeviceLocalMemoryFeaturesEXT                 (void) const;
+const vk::VkPhysicalDevicePerformanceQueryFeaturesKHR&                                 getPerformanceQueryFeatures                                             (void) const;
+const vk::VkPhysicalDevicePipelineCreationCacheControlFeatures&                        getPipelineCreationCacheControlFeatures                 (void) const;
+const vk::VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&             getPipelineExecutablePropertiesFeatures                 (void) const;
+const vk::VkPhysicalDevicePipelinePropertiesFeaturesEXT&                               getPipelinePropertiesFeaturesEXT                                (void) const;
+const vk::VkPhysicalDevicePipelineRobustnessFeaturesEXT&                               getPipelineRobustnessFeaturesEXT                                (void) const;
+const vk::VkPhysicalDevicePortabilitySubsetFeaturesKHR&                                        getPortabilitySubsetFeatures                                    (void) const;
+const vk::VkPhysicalDevicePresentIdFeaturesKHR&                                                        getPresentIdFeatures                                                    (void) const;
+const vk::VkPhysicalDevicePresentWaitFeaturesKHR&                                              getPresentWaitFeatures                                                  (void) const;
+const vk::VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT&                 getPrimitivesGeneratedQueryFeaturesEXT                  (void) const;
+const vk::VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT&             getPrimitiveTopologyListRestartFeaturesEXT              (void) const;
+const vk::VkPhysicalDevicePrivateDataFeatures&                                                 getPrivateDataFeatures                                                  (void) const;
+const vk::VkPhysicalDeviceProtectedMemoryFeatures&                                             getProtectedMemoryFeatures                                              (void) const;
+const vk::VkPhysicalDeviceProvokingVertexFeaturesEXT&                                  getProvokingVertexFeaturesEXT                                   (void) const;
+const vk::VkPhysicalDeviceRayQueryFeaturesKHR&                                                 getRayQueryFeatures                                                             (void) const;
+const vk::VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR&                   getRayTracingMaintenance1Features                               (void) const;
+const vk::VkPhysicalDeviceRayTracingMotionBlurFeaturesNV&                              getRayTracingMotionBlurFeatures                                 (void) const;
+const vk::VkPhysicalDeviceRayTracingPipelineFeaturesKHR&                               getRayTracingPipelineFeatures                                   (void) const;
+const vk::VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                        getRepresentativeFragmentTestFeatures                   (void) const;
+const vk::VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT&                                  getRGBA10X6FormatsFeaturesEXT                                   (void) const;
+const vk::VkPhysicalDeviceRobustness2FeaturesEXT&                                              getRobustness2FeaturesEXT                                               (void) const;
+const vk::VkPhysicalDeviceSamplerYcbcrConversionFeatures&                              getSamplerYcbcrConversionFeatures                               (void) const;
+const vk::VkPhysicalDeviceScalarBlockLayoutFeatures&                                   getScalarBlockLayoutFeatures                                    (void) const;
+const vk::VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures&                 getSeparateDepthStencilLayoutsFeatures                  (void) const;
+const vk::VkPhysicalDeviceShaderAtomicFloatFeaturesEXT&                                        getShaderAtomicFloatFeaturesEXT                                 (void) const;
+const vk::VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT&                               getShaderAtomicFloat2FeaturesEXT                                (void) const;
+const vk::VkPhysicalDeviceShaderAtomicInt64Features&                                   getShaderAtomicInt64Features                                    (void) const;
+const vk::VkPhysicalDeviceShaderClockFeaturesKHR&                                              getShaderClockFeatures                                                  (void) const;
+const vk::VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures&              getShaderDemoteToHelperInvocationFeatures               (void) const;
+const vk::VkPhysicalDeviceShaderDrawParametersFeatures&                                        getShaderDrawParametersFeatures                                 (void) const;
+const vk::VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD&  getShaderEarlyAndLateFragmentTestsFeaturesAMD   (void) const;
+const vk::VkPhysicalDeviceShaderFloat16Int8Features&                                   getShaderFloat16Int8Features                                    (void) const;
+const vk::VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT&                   getShaderImageAtomicInt64FeaturesEXT                    (void) const;
+const vk::VkPhysicalDeviceShaderImageFootprintFeaturesNV&                              getShaderImageFootprintFeatures                                 (void) const;
+const vk::VkPhysicalDeviceShaderIntegerDotProductFeatures&                             getShaderIntegerDotProductFeatures                              (void) const;
+const vk::VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL&                        getShaderIntegerFunctions2FeaturesINTEL                 (void) const;
+const vk::VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT&                   getShaderModuleIdentifierFeaturesEXT                    (void) const;
+const vk::VkPhysicalDeviceShaderSMBuiltinsFeaturesNV&                                  getShaderSMBuiltinsFeatures                                             (void) const;
+const vk::VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures&                 getShaderSubgroupExtendedTypesFeatures                  (void) const;
+const vk::VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR& getShaderSubgroupUniformControlFlowFeatures             (void) const;
+const vk::VkPhysicalDeviceShaderTerminateInvocationFeatures&                   getShaderTerminateInvocationFeatures                    (void) const;
+const vk::VkPhysicalDeviceShadingRateImageFeaturesNV&                                  getShadingRateImageFeatures                                             (void) const;
+const vk::VkPhysicalDeviceSubgroupSizeControlFeatures&                                 getSubgroupSizeControlFeatures                                  (void) const;
+const vk::VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT&                             getSubpassMergeFeedbackFeaturesEXT                              (void) const;
+const vk::VkPhysicalDeviceSubpassShadingFeaturesHUAWEI&                                        getSubpassShadingFeaturesHUAWEI                                 (void) const;
+const vk::VkPhysicalDeviceSynchronization2Features&                                            getSynchronization2Features                                             (void) const;
+const vk::VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT&                             getTexelBufferAlignmentFeaturesEXT                              (void) const;
+const vk::VkPhysicalDeviceTextureCompressionASTCHDRFeatures&                   getTextureCompressionASTCHDRFeatures                    (void) const;
+const vk::VkPhysicalDeviceTilePropertiesFeaturesQCOM&                                  getTilePropertiesFeaturesQCOM                                   (void) const;
+const vk::VkPhysicalDeviceTimelineSemaphoreFeatures&                                   getTimelineSemaphoreFeatures                                    (void) const;
+const vk::VkPhysicalDeviceTransformFeedbackFeaturesEXT&                                        getTransformFeedbackFeaturesEXT                                 (void) const;
+const vk::VkPhysicalDeviceUniformBufferStandardLayoutFeatures&                 getUniformBufferStandardLayoutFeatures                  (void) const;
+const vk::VkPhysicalDeviceVariablePointersFeatures&                                            getVariablePointersFeatures                                             (void) const;
+const vk::VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT&                   getVertexAttributeDivisorFeaturesEXT                    (void) const;
+const vk::VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT&                  getVertexInputDynamicStateFeaturesEXT                   (void) const;
+const vk::VkPhysicalDeviceVulkanMemoryModelFeatures&                                   getVulkanMemoryModelFeatures                                    (void) const;
+const vk::VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR&            getWorkgroupMemoryExplicitLayoutFeatures                (void) const;
+const vk::VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT&                            getYcbcr2Plane444FormatsFeaturesEXT                             (void) const;
+const vk::VkPhysicalDeviceYcbcrImageArraysFeaturesEXT&                                 getYcbcrImageArraysFeaturesEXT                                  (void) const;
+const vk::VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures&               getZeroInitializeWorkgroupMemoryFeatures                (void) const;
index 5e5b0af..dcbdcb4 100644 (file)
  * This file was generated by /scripts/gen_framework.py
  */
 
-const vk::VkPhysicalDevice16BitStorageFeatures&                                                        Context::get16BitStorageFeatures                                                (void) const { return m_device->get16BitStorageFeatures();                                              }
-const vk::VkPhysicalDevice4444FormatsFeaturesEXT&                                              Context::get4444FormatsFeaturesEXT                                              (void) const { return m_device->get4444FormatsFeaturesEXT();                                    }
-const vk::VkPhysicalDevice8BitStorageFeatures&                                                 Context::get8BitStorageFeatures                                                 (void) const { return m_device->get8BitStorageFeatures();                                               }
-const vk::VkPhysicalDeviceAccelerationStructureFeaturesKHR&                            Context::getAccelerationStructureFeatures                               (void) const { return m_device->getAccelerationStructureFeatures();                             }
-const vk::VkPhysicalDeviceASTCDecodeFeaturesEXT&                                               Context::getASTCDecodeFeaturesEXT                                               (void) const { return m_device->getASTCDecodeFeaturesEXT();                                             }
-const vk::VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT&                   Context::getBlendOperationAdvancedFeaturesEXT                   (void) const { return m_device->getBlendOperationAdvancedFeaturesEXT();                 }
-const vk::VkPhysicalDeviceBorderColorSwizzleFeaturesEXT&                               Context::getBorderColorSwizzleFeaturesEXT                               (void) const { return m_device->getBorderColorSwizzleFeaturesEXT();                             }
-const vk::VkPhysicalDeviceBufferDeviceAddressFeatures&                                 Context::getBufferDeviceAddressFeatures                                 (void) const { return m_device->getBufferDeviceAddressFeatures();                               }
-const vk::VkPhysicalDeviceBufferDeviceAddressFeaturesEXT&                              Context::getBufferDeviceAddressFeaturesEXT                              (void) const { return m_device->getBufferDeviceAddressFeaturesEXT();                    }
-const vk::VkPhysicalDeviceCoherentMemoryFeaturesAMD&                                   Context::getCoherentMemoryFeaturesAMD                                   (void) const { return m_device->getCoherentMemoryFeaturesAMD();                                 }
-const vk::VkPhysicalDeviceColorWriteEnableFeaturesEXT&                                 Context::getColorWriteEnableFeaturesEXT                                 (void) const { return m_device->getColorWriteEnableFeaturesEXT();                               }
-const vk::VkPhysicalDeviceComputeShaderDerivativesFeaturesNV&                  Context::getComputeShaderDerivativesFeatures                    (void) const { return m_device->getComputeShaderDerivativesFeatures();                  }
-const vk::VkPhysicalDeviceConditionalRenderingFeaturesEXT&                             Context::getConditionalRenderingFeaturesEXT                             (void) const { return m_device->getConditionalRenderingFeaturesEXT();                   }
-const vk::VkPhysicalDeviceCooperativeMatrixFeaturesNV&                                 Context::getCooperativeMatrixFeatures                                   (void) const { return m_device->getCooperativeMatrixFeatures();                                 }
-const vk::VkPhysicalDeviceCornerSampledImageFeaturesNV&                                        Context::getCornerSampledImageFeatures                                  (void) const { return m_device->getCornerSampledImageFeatures();                                }
-const vk::VkPhysicalDeviceCoverageReductionModeFeaturesNV&                             Context::getCoverageReductionModeFeatures                               (void) const { return m_device->getCoverageReductionModeFeatures();                             }
-const vk::VkPhysicalDeviceCustomBorderColorFeaturesEXT&                                        Context::getCustomBorderColorFeaturesEXT                                (void) const { return m_device->getCustomBorderColorFeaturesEXT();                              }
-const vk::VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&  Context::getDedicatedAllocationImageAliasingFeatures    (void) const { return m_device->getDedicatedAllocationImageAliasingFeatures();  }
-const vk::VkPhysicalDeviceDepthClipControlFeaturesEXT&                                 Context::getDepthClipControlFeaturesEXT                                 (void) const { return m_device->getDepthClipControlFeaturesEXT();                               }
-const vk::VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                  Context::getDepthClipEnableFeaturesEXT                                  (void) const { return m_device->getDepthClipEnableFeaturesEXT();                                }
-const vk::VkPhysicalDeviceDescriptorIndexingFeatures&                                  Context::getDescriptorIndexingFeatures                                  (void) const { return m_device->getDescriptorIndexingFeatures();                                }
-const vk::VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE&               Context::getDescriptorSetHostMappingFeaturesVALVE               (void) const { return m_device->getDescriptorSetHostMappingFeaturesVALVE();             }
-const vk::VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                   Context::getDeviceGeneratedCommandsFeatures                             (void) const { return m_device->getDeviceGeneratedCommandsFeatures();                   }
-const vk::VkPhysicalDeviceDeviceMemoryReportFeaturesEXT&                               Context::getDeviceMemoryReportFeaturesEXT                               (void) const { return m_device->getDeviceMemoryReportFeaturesEXT();                             }
-const vk::VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                 Context::getDiagnosticsConfigFeatures                                   (void) const { return m_device->getDiagnosticsConfigFeatures();                                 }
-const vk::VkPhysicalDeviceDynamicRenderingFeatures&                                            Context::getDynamicRenderingFeatures                                    (void) const { return m_device->getDynamicRenderingFeatures();                                  }
-const vk::VkPhysicalDeviceExclusiveScissorFeaturesNV&                                  Context::getExclusiveScissorFeatures                                    (void) const { return m_device->getExclusiveScissorFeatures();                                  }
-const vk::VkPhysicalDeviceExtendedDynamicStateFeaturesEXT&                             Context::getExtendedDynamicStateFeaturesEXT                             (void) const { return m_device->getExtendedDynamicStateFeaturesEXT();                   }
-const vk::VkPhysicalDeviceExtendedDynamicState2FeaturesEXT&                            Context::getExtendedDynamicState2FeaturesEXT                    (void) const { return m_device->getExtendedDynamicState2FeaturesEXT();                  }
-const vk::VkPhysicalDeviceExternalMemoryRDMAFeaturesNV&                                        Context::getExternalMemoryRDMAFeatures                                  (void) const { return m_device->getExternalMemoryRDMAFeatures();                                }
-const vk::VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                               Context::getFragmentDensityMapFeaturesEXT                               (void) const { return m_device->getFragmentDensityMapFeaturesEXT();                             }
-const vk::VkPhysicalDeviceFragmentDensityMap2FeaturesEXT&                              Context::getFragmentDensityMap2FeaturesEXT                              (void) const { return m_device->getFragmentDensityMap2FeaturesEXT();                    }
-const vk::VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM&                        Context::getFragmentDensityMapOffsetFeaturesQCOM                (void) const { return m_device->getFragmentDensityMapOffsetFeaturesQCOM();              }
-const vk::VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV&                 Context::getFragmentShaderBarycentricFeatures                   (void) const { return m_device->getFragmentShaderBarycentricFeatures();                 }
-const vk::VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT&                  Context::getFragmentShaderInterlockFeaturesEXT                  (void) const { return m_device->getFragmentShaderInterlockFeaturesEXT();                }
-const vk::VkPhysicalDeviceFragmentShadingRateFeaturesKHR&                              Context::getFragmentShadingRateFeatures                                 (void) const { return m_device->getFragmentShadingRateFeatures();                               }
-const vk::VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV&                  Context::getFragmentShadingRateEnumsFeatures                    (void) const { return m_device->getFragmentShadingRateEnumsFeatures();                  }
-const vk::VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR&                              Context::getGlobalPriorityQueryFeatures                                 (void) const { return m_device->getGlobalPriorityQueryFeatures();                               }
-const vk::VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT&                  Context::getGraphicsPipelineLibraryFeaturesEXT                  (void) const { return m_device->getGraphicsPipelineLibraryFeaturesEXT();                }
-const vk::VkPhysicalDeviceHostQueryResetFeatures&                                              Context::getHostQueryResetFeatures                                              (void) const { return m_device->getHostQueryResetFeatures();                                    }
-const vk::VkPhysicalDeviceImagelessFramebufferFeatures&                                        Context::getImagelessFramebufferFeatures                                (void) const { return m_device->getImagelessFramebufferFeatures();                              }
-const vk::VkPhysicalDeviceImage2DViewOf3DFeaturesEXT&                                  Context::getImage2DViewOf3DFeaturesEXT                                  (void) const { return m_device->getImage2DViewOf3DFeaturesEXT();                                }
-const vk::VkPhysicalDeviceImageRobustnessFeatures&                                             Context::getImageRobustnessFeatures                                             (void) const { return m_device->getImageRobustnessFeatures();                                   }
-const vk::VkPhysicalDeviceImageViewMinLodFeaturesEXT&                                  Context::getImageViewMinLodFeaturesEXT                                  (void) const { return m_device->getImageViewMinLodFeaturesEXT();                                }
-const vk::VkPhysicalDeviceIndexTypeUint8FeaturesEXT&                                   Context::getIndexTypeUint8FeaturesEXT                                   (void) const { return m_device->getIndexTypeUint8FeaturesEXT();                                 }
-const vk::VkPhysicalDeviceInheritedViewportScissorFeaturesNV&                  Context::getInheritedViewportScissorFeatures                    (void) const { return m_device->getInheritedViewportScissorFeatures();                  }
-const vk::VkPhysicalDeviceInlineUniformBlockFeatures&                                  Context::getInlineUniformBlockFeatures                                  (void) const { return m_device->getInlineUniformBlockFeatures();                                }
-const vk::VkPhysicalDeviceInvocationMaskFeaturesHUAWEI&                                        Context::getInvocationMaskFeaturesHUAWEI                                (void) const { return m_device->getInvocationMaskFeaturesHUAWEI();                              }
-const vk::VkPhysicalDeviceLinearColorAttachmentFeaturesNV&                             Context::getLinearColorAttachmentFeatures                               (void) const { return m_device->getLinearColorAttachmentFeatures();                             }
-const vk::VkPhysicalDeviceLineRasterizationFeaturesEXT&                                        Context::getLineRasterizationFeaturesEXT                                (void) const { return m_device->getLineRasterizationFeaturesEXT();                              }
-const vk::VkPhysicalDeviceMaintenance4Features&                                                        Context::getMaintenance4Features                                                (void) const { return m_device->getMaintenance4Features();                                              }
-const vk::VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                   Context::getMemoryPriorityFeaturesEXT                                   (void) const { return m_device->getMemoryPriorityFeaturesEXT();                                 }
-const vk::VkPhysicalDeviceMeshShaderFeaturesNV&                                                        Context::getMeshShaderFeatures                                                  (void) const { return m_device->getMeshShaderFeatures();                                                }
-const vk::VkPhysicalDeviceMultiviewFeatures&                                                   Context::getMultiviewFeatures                                                   (void) const { return m_device->getMultiviewFeatures();                                                 }
-const vk::VkPhysicalDeviceMultiDrawFeaturesEXT&                                                        Context::getMultiDrawFeaturesEXT                                                (void) const { return m_device->getMultiDrawFeaturesEXT();                                              }
-const vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE&                  Context::getMutableDescriptorTypeFeaturesVALVE                  (void) const { return m_device->getMutableDescriptorTypeFeaturesVALVE();                }
-const vk::VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT&                        Context::getPageableDeviceLocalMemoryFeaturesEXT                (void) const { return m_device->getPageableDeviceLocalMemoryFeaturesEXT();              }
-const vk::VkPhysicalDevicePerformanceQueryFeaturesKHR&                                 Context::getPerformanceQueryFeatures                                    (void) const { return m_device->getPerformanceQueryFeatures();                                  }
-const vk::VkPhysicalDevicePipelineCreationCacheControlFeatures&                        Context::getPipelineCreationCacheControlFeatures                (void) const { return m_device->getPipelineCreationCacheControlFeatures();              }
-const vk::VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&             Context::getPipelineExecutablePropertiesFeatures                (void) const { return m_device->getPipelineExecutablePropertiesFeatures();              }
-const vk::VkPhysicalDevicePortabilitySubsetFeaturesKHR&                                        Context::getPortabilitySubsetFeatures                                   (void) const { return m_device->getPortabilitySubsetFeatures();                                 }
-const vk::VkPhysicalDevicePresentIdFeaturesKHR&                                                        Context::getPresentIdFeatures                                                   (void) const { return m_device->getPresentIdFeatures();                                                 }
-const vk::VkPhysicalDevicePresentWaitFeaturesKHR&                                              Context::getPresentWaitFeatures                                                 (void) const { return m_device->getPresentWaitFeatures();                                               }
-const vk::VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT&                 Context::getPrimitivesGeneratedQueryFeaturesEXT                 (void) const { return m_device->getPrimitivesGeneratedQueryFeaturesEXT();               }
-const vk::VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT&             Context::getPrimitiveTopologyListRestartFeaturesEXT             (void) const { return m_device->getPrimitiveTopologyListRestartFeaturesEXT();   }
-const vk::VkPhysicalDevicePrivateDataFeatures&                                                 Context::getPrivateDataFeatures                                                 (void) const { return m_device->getPrivateDataFeatures();                                               }
-const vk::VkPhysicalDeviceProtectedMemoryFeatures&                                             Context::getProtectedMemoryFeatures                                             (void) const { return m_device->getProtectedMemoryFeatures();                                   }
-const vk::VkPhysicalDeviceProvokingVertexFeaturesEXT&                                  Context::getProvokingVertexFeaturesEXT                                  (void) const { return m_device->getProvokingVertexFeaturesEXT();                                }
-const vk::VkPhysicalDeviceRayQueryFeaturesKHR&                                                 Context::getRayQueryFeatures                                                    (void) const { return m_device->getRayQueryFeatures();                                                  }
-const vk::VkPhysicalDeviceRayTracingMotionBlurFeaturesNV&                              Context::getRayTracingMotionBlurFeatures                                (void) const { return m_device->getRayTracingMotionBlurFeatures();                              }
-const vk::VkPhysicalDeviceRayTracingPipelineFeaturesKHR&                               Context::getRayTracingPipelineFeatures                                  (void) const { return m_device->getRayTracingPipelineFeatures();                                }
-const vk::VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                        Context::getRepresentativeFragmentTestFeatures                  (void) const { return m_device->getRepresentativeFragmentTestFeatures();                }
-const vk::VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT&                                  Context::getRGBA10X6FormatsFeaturesEXT                                  (void) const { return m_device->getRGBA10X6FormatsFeaturesEXT();                                }
-const vk::VkPhysicalDeviceRobustness2FeaturesEXT&                                              Context::getRobustness2FeaturesEXT                                              (void) const { return m_device->getRobustness2FeaturesEXT();                                    }
-const vk::VkPhysicalDeviceSamplerYcbcrConversionFeatures&                              Context::getSamplerYcbcrConversionFeatures                              (void) const { return m_device->getSamplerYcbcrConversionFeatures();                    }
-const vk::VkPhysicalDeviceScalarBlockLayoutFeatures&                                   Context::getScalarBlockLayoutFeatures                                   (void) const { return m_device->getScalarBlockLayoutFeatures();                                 }
-const vk::VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures&                 Context::getSeparateDepthStencilLayoutsFeatures                 (void) const { return m_device->getSeparateDepthStencilLayoutsFeatures();               }
-const vk::VkPhysicalDeviceShaderAtomicFloatFeaturesEXT&                                        Context::getShaderAtomicFloatFeaturesEXT                                (void) const { return m_device->getShaderAtomicFloatFeaturesEXT();                              }
-const vk::VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT&                               Context::getShaderAtomicFloat2FeaturesEXT                               (void) const { return m_device->getShaderAtomicFloat2FeaturesEXT();                             }
-const vk::VkPhysicalDeviceShaderAtomicInt64Features&                                   Context::getShaderAtomicInt64Features                                   (void) const { return m_device->getShaderAtomicInt64Features();                                 }
-const vk::VkPhysicalDeviceShaderClockFeaturesKHR&                                              Context::getShaderClockFeatures                                                 (void) const { return m_device->getShaderClockFeatures();                                               }
-const vk::VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures&              Context::getShaderDemoteToHelperInvocationFeatures              (void) const { return m_device->getShaderDemoteToHelperInvocationFeatures();    }
-const vk::VkPhysicalDeviceShaderDrawParametersFeatures&                                        Context::getShaderDrawParametersFeatures                                (void) const { return m_device->getShaderDrawParametersFeatures();                              }
-const vk::VkPhysicalDeviceShaderFloat16Int8Features&                                   Context::getShaderFloat16Int8Features                                   (void) const { return m_device->getShaderFloat16Int8Features();                                 }
-const vk::VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT&                   Context::getShaderImageAtomicInt64FeaturesEXT                   (void) const { return m_device->getShaderImageAtomicInt64FeaturesEXT();                 }
-const vk::VkPhysicalDeviceShaderImageFootprintFeaturesNV&                              Context::getShaderImageFootprintFeatures                                (void) const { return m_device->getShaderImageFootprintFeatures();                              }
-const vk::VkPhysicalDeviceShaderIntegerDotProductFeatures&                             Context::getShaderIntegerDotProductFeatures                             (void) const { return m_device->getShaderIntegerDotProductFeatures();                   }
-const vk::VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL&                        Context::getShaderIntegerFunctions2FeaturesINTEL                (void) const { return m_device->getShaderIntegerFunctions2FeaturesINTEL();              }
-const vk::VkPhysicalDeviceShaderSMBuiltinsFeaturesNV&                                  Context::getShaderSMBuiltinsFeatures                                    (void) const { return m_device->getShaderSMBuiltinsFeatures();                                  }
-const vk::VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures&                 Context::getShaderSubgroupExtendedTypesFeatures                 (void) const { return m_device->getShaderSubgroupExtendedTypesFeatures();               }
-const vk::VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR& Context::getShaderSubgroupUniformControlFlowFeatures    (void) const { return m_device->getShaderSubgroupUniformControlFlowFeatures();  }
-const vk::VkPhysicalDeviceShaderTerminateInvocationFeatures&                   Context::getShaderTerminateInvocationFeatures                   (void) const { return m_device->getShaderTerminateInvocationFeatures();                 }
-const vk::VkPhysicalDeviceShadingRateImageFeaturesNV&                                  Context::getShadingRateImageFeatures                                    (void) const { return m_device->getShadingRateImageFeatures();                                  }
-const vk::VkPhysicalDeviceSubgroupSizeControlFeatures&                                 Context::getSubgroupSizeControlFeatures                                 (void) const { return m_device->getSubgroupSizeControlFeatures();                               }
-const vk::VkPhysicalDeviceSubpassShadingFeaturesHUAWEI&                                        Context::getSubpassShadingFeaturesHUAWEI                                (void) const { return m_device->getSubpassShadingFeaturesHUAWEI();                              }
-const vk::VkPhysicalDeviceSynchronization2Features&                                            Context::getSynchronization2Features                                    (void) const { return m_device->getSynchronization2Features();                                  }
-const vk::VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT&                             Context::getTexelBufferAlignmentFeaturesEXT                             (void) const { return m_device->getTexelBufferAlignmentFeaturesEXT();                   }
-const vk::VkPhysicalDeviceTextureCompressionASTCHDRFeatures&                   Context::getTextureCompressionASTCHDRFeatures                   (void) const { return m_device->getTextureCompressionASTCHDRFeatures();                 }
-const vk::VkPhysicalDeviceTimelineSemaphoreFeatures&                                   Context::getTimelineSemaphoreFeatures                                   (void) const { return m_device->getTimelineSemaphoreFeatures();                                 }
-const vk::VkPhysicalDeviceTransformFeedbackFeaturesEXT&                                        Context::getTransformFeedbackFeaturesEXT                                (void) const { return m_device->getTransformFeedbackFeaturesEXT();                              }
-const vk::VkPhysicalDeviceUniformBufferStandardLayoutFeatures&                 Context::getUniformBufferStandardLayoutFeatures                 (void) const { return m_device->getUniformBufferStandardLayoutFeatures();               }
-const vk::VkPhysicalDeviceVariablePointersFeatures&                                            Context::getVariablePointersFeatures                                    (void) const { return m_device->getVariablePointersFeatures();                                  }
-const vk::VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT&                   Context::getVertexAttributeDivisorFeaturesEXT                   (void) const { return m_device->getVertexAttributeDivisorFeaturesEXT();                 }
-const vk::VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT&                  Context::getVertexInputDynamicStateFeaturesEXT                  (void) const { return m_device->getVertexInputDynamicStateFeaturesEXT();                }
-const vk::VkPhysicalDeviceVulkanMemoryModelFeatures&                                   Context::getVulkanMemoryModelFeatures                                   (void) const { return m_device->getVulkanMemoryModelFeatures();                                 }
-const vk::VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR&            Context::getWorkgroupMemoryExplicitLayoutFeatures               (void) const { return m_device->getWorkgroupMemoryExplicitLayoutFeatures();             }
-const vk::VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT&                            Context::getYcbcr2Plane444FormatsFeaturesEXT                    (void) const { return m_device->getYcbcr2Plane444FormatsFeaturesEXT();                  }
-const vk::VkPhysicalDeviceYcbcrImageArraysFeaturesEXT&                                 Context::getYcbcrImageArraysFeaturesEXT                                 (void) const { return m_device->getYcbcrImageArraysFeaturesEXT();                               }
-const vk::VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures&               Context::getZeroInitializeWorkgroupMemoryFeatures               (void) const { return m_device->getZeroInitializeWorkgroupMemoryFeatures();             }
+const vk::VkPhysicalDevice16BitStorageFeatures&                                                        Context::get16BitStorageFeatures                                                        (void) const { return m_device->get16BitStorageFeatures();                                                      }
+const vk::VkPhysicalDevice4444FormatsFeaturesEXT&                                              Context::get4444FormatsFeaturesEXT                                                      (void) const { return m_device->get4444FormatsFeaturesEXT();                                            }
+const vk::VkPhysicalDevice8BitStorageFeatures&                                                 Context::get8BitStorageFeatures                                                         (void) const { return m_device->get8BitStorageFeatures();                                                       }
+const vk::VkPhysicalDeviceAccelerationStructureFeaturesKHR&                            Context::getAccelerationStructureFeatures                                       (void) const { return m_device->getAccelerationStructureFeatures();                                     }
+const vk::VkPhysicalDeviceAmigoProfilingFeaturesSEC&                                   Context::getAmigoProfilingFeaturesSEC                                           (void) const { return m_device->getAmigoProfilingFeaturesSEC();                                         }
+const vk::VkPhysicalDeviceASTCDecodeFeaturesEXT&                                               Context::getASTCDecodeFeaturesEXT                                                       (void) const { return m_device->getASTCDecodeFeaturesEXT();                                                     }
+const vk::VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT&             Context::getAttachmentFeedbackLoopLayoutFeaturesEXT                     (void) const { return m_device->getAttachmentFeedbackLoopLayoutFeaturesEXT();           }
+const vk::VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT&                   Context::getBlendOperationAdvancedFeaturesEXT                           (void) const { return m_device->getBlendOperationAdvancedFeaturesEXT();                         }
+const vk::VkPhysicalDeviceBorderColorSwizzleFeaturesEXT&                               Context::getBorderColorSwizzleFeaturesEXT                                       (void) const { return m_device->getBorderColorSwizzleFeaturesEXT();                                     }
+const vk::VkPhysicalDeviceBufferDeviceAddressFeatures&                                 Context::getBufferDeviceAddressFeatures                                         (void) const { return m_device->getBufferDeviceAddressFeatures();                                       }
+const vk::VkPhysicalDeviceBufferDeviceAddressFeaturesEXT&                              Context::getBufferDeviceAddressFeaturesEXT                                      (void) const { return m_device->getBufferDeviceAddressFeaturesEXT();                            }
+const vk::VkPhysicalDeviceCoherentMemoryFeaturesAMD&                                   Context::getCoherentMemoryFeaturesAMD                                           (void) const { return m_device->getCoherentMemoryFeaturesAMD();                                         }
+const vk::VkPhysicalDeviceColorWriteEnableFeaturesEXT&                                 Context::getColorWriteEnableFeaturesEXT                                         (void) const { return m_device->getColorWriteEnableFeaturesEXT();                                       }
+const vk::VkPhysicalDeviceComputeShaderDerivativesFeaturesNV&                  Context::getComputeShaderDerivativesFeatures                            (void) const { return m_device->getComputeShaderDerivativesFeatures();                          }
+const vk::VkPhysicalDeviceConditionalRenderingFeaturesEXT&                             Context::getConditionalRenderingFeaturesEXT                                     (void) const { return m_device->getConditionalRenderingFeaturesEXT();                           }
+const vk::VkPhysicalDeviceCooperativeMatrixFeaturesNV&                                 Context::getCooperativeMatrixFeatures                                           (void) const { return m_device->getCooperativeMatrixFeatures();                                         }
+const vk::VkPhysicalDeviceCornerSampledImageFeaturesNV&                                        Context::getCornerSampledImageFeatures                                          (void) const { return m_device->getCornerSampledImageFeatures();                                        }
+const vk::VkPhysicalDeviceCoverageReductionModeFeaturesNV&                             Context::getCoverageReductionModeFeatures                                       (void) const { return m_device->getCoverageReductionModeFeatures();                                     }
+const vk::VkPhysicalDeviceCustomBorderColorFeaturesEXT&                                        Context::getCustomBorderColorFeaturesEXT                                        (void) const { return m_device->getCustomBorderColorFeaturesEXT();                                      }
+const vk::VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&  Context::getDedicatedAllocationImageAliasingFeatures            (void) const { return m_device->getDedicatedAllocationImageAliasingFeatures();          }
+const vk::VkPhysicalDeviceDepthClipControlFeaturesEXT&                                 Context::getDepthClipControlFeaturesEXT                                         (void) const { return m_device->getDepthClipControlFeaturesEXT();                                       }
+const vk::VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                  Context::getDepthClipEnableFeaturesEXT                                          (void) const { return m_device->getDepthClipEnableFeaturesEXT();                                        }
+const vk::VkPhysicalDeviceDescriptorIndexingFeatures&                                  Context::getDescriptorIndexingFeatures                                          (void) const { return m_device->getDescriptorIndexingFeatures();                                        }
+const vk::VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE&               Context::getDescriptorSetHostMappingFeaturesVALVE                       (void) const { return m_device->getDescriptorSetHostMappingFeaturesVALVE();                     }
+const vk::VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                   Context::getDeviceGeneratedCommandsFeatures                                     (void) const { return m_device->getDeviceGeneratedCommandsFeatures();                           }
+const vk::VkPhysicalDeviceDeviceMemoryReportFeaturesEXT&                               Context::getDeviceMemoryReportFeaturesEXT                                       (void) const { return m_device->getDeviceMemoryReportFeaturesEXT();                                     }
+const vk::VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                 Context::getDiagnosticsConfigFeatures                                           (void) const { return m_device->getDiagnosticsConfigFeatures();                                         }
+const vk::VkPhysicalDeviceDynamicRenderingFeatures&                                            Context::getDynamicRenderingFeatures                                            (void) const { return m_device->getDynamicRenderingFeatures();                                          }
+const vk::VkPhysicalDeviceExclusiveScissorFeaturesNV&                                  Context::getExclusiveScissorFeatures                                            (void) const { return m_device->getExclusiveScissorFeatures();                                          }
+const vk::VkPhysicalDeviceExtendedDynamicStateFeaturesEXT&                             Context::getExtendedDynamicStateFeaturesEXT                                     (void) const { return m_device->getExtendedDynamicStateFeaturesEXT();                           }
+const vk::VkPhysicalDeviceExtendedDynamicState2FeaturesEXT&                            Context::getExtendedDynamicState2FeaturesEXT                            (void) const { return m_device->getExtendedDynamicState2FeaturesEXT();                          }
+const vk::VkPhysicalDeviceExternalMemoryRDMAFeaturesNV&                                        Context::getExternalMemoryRDMAFeatures                                          (void) const { return m_device->getExternalMemoryRDMAFeatures();                                        }
+const vk::VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                               Context::getFragmentDensityMapFeaturesEXT                                       (void) const { return m_device->getFragmentDensityMapFeaturesEXT();                                     }
+const vk::VkPhysicalDeviceFragmentDensityMap2FeaturesEXT&                              Context::getFragmentDensityMap2FeaturesEXT                                      (void) const { return m_device->getFragmentDensityMap2FeaturesEXT();                            }
+const vk::VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM&                        Context::getFragmentDensityMapOffsetFeaturesQCOM                        (void) const { return m_device->getFragmentDensityMapOffsetFeaturesQCOM();                      }
+const vk::VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR&                        Context::getFragmentShaderBarycentricFeatures                           (void) const { return m_device->getFragmentShaderBarycentricFeatures();                         }
+const vk::VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT&                  Context::getFragmentShaderInterlockFeaturesEXT                          (void) const { return m_device->getFragmentShaderInterlockFeaturesEXT();                        }
+const vk::VkPhysicalDeviceFragmentShadingRateFeaturesKHR&                              Context::getFragmentShadingRateFeatures                                         (void) const { return m_device->getFragmentShadingRateFeatures();                                       }
+const vk::VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV&                  Context::getFragmentShadingRateEnumsFeatures                            (void) const { return m_device->getFragmentShadingRateEnumsFeatures();                          }
+const vk::VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR&                              Context::getGlobalPriorityQueryFeatures                                         (void) const { return m_device->getGlobalPriorityQueryFeatures();                                       }
+const vk::VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT&                  Context::getGraphicsPipelineLibraryFeaturesEXT                          (void) const { return m_device->getGraphicsPipelineLibraryFeaturesEXT();                        }
+const vk::VkPhysicalDeviceHostQueryResetFeatures&                                              Context::getHostQueryResetFeatures                                                      (void) const { return m_device->getHostQueryResetFeatures();                                            }
+const vk::VkPhysicalDeviceImagelessFramebufferFeatures&                                        Context::getImagelessFramebufferFeatures                                        (void) const { return m_device->getImagelessFramebufferFeatures();                                      }
+const vk::VkPhysicalDeviceImage2DViewOf3DFeaturesEXT&                                  Context::getImage2DViewOf3DFeaturesEXT                                          (void) const { return m_device->getImage2DViewOf3DFeaturesEXT();                                        }
+const vk::VkPhysicalDeviceImageCompressionControlFeaturesEXT&                  Context::getImageCompressionControlFeaturesEXT                          (void) const { return m_device->getImageCompressionControlFeaturesEXT();                        }
+const vk::VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT& Context::getImageCompressionControlSwapchainFeaturesEXT         (void) const { return m_device->getImageCompressionControlSwapchainFeaturesEXT();       }
+const vk::VkPhysicalDeviceImageProcessingFeaturesQCOM&                                 Context::getImageProcessingFeaturesQCOM                                         (void) const { return m_device->getImageProcessingFeaturesQCOM();                                       }
+const vk::VkPhysicalDeviceImageRobustnessFeatures&                                             Context::getImageRobustnessFeatures                                                     (void) const { return m_device->getImageRobustnessFeatures();                                           }
+const vk::VkPhysicalDeviceImageViewMinLodFeaturesEXT&                                  Context::getImageViewMinLodFeaturesEXT                                          (void) const { return m_device->getImageViewMinLodFeaturesEXT();                                        }
+const vk::VkPhysicalDeviceIndexTypeUint8FeaturesEXT&                                   Context::getIndexTypeUint8FeaturesEXT                                           (void) const { return m_device->getIndexTypeUint8FeaturesEXT();                                         }
+const vk::VkPhysicalDeviceInheritedViewportScissorFeaturesNV&                  Context::getInheritedViewportScissorFeatures                            (void) const { return m_device->getInheritedViewportScissorFeatures();                          }
+const vk::VkPhysicalDeviceInlineUniformBlockFeatures&                                  Context::getInlineUniformBlockFeatures                                          (void) const { return m_device->getInlineUniformBlockFeatures();                                        }
+const vk::VkPhysicalDeviceInvocationMaskFeaturesHUAWEI&                                        Context::getInvocationMaskFeaturesHUAWEI                                        (void) const { return m_device->getInvocationMaskFeaturesHUAWEI();                                      }
+const vk::VkPhysicalDeviceLinearColorAttachmentFeaturesNV&                             Context::getLinearColorAttachmentFeatures                                       (void) const { return m_device->getLinearColorAttachmentFeatures();                                     }
+const vk::VkPhysicalDeviceLineRasterizationFeaturesEXT&                                        Context::getLineRasterizationFeaturesEXT                                        (void) const { return m_device->getLineRasterizationFeaturesEXT();                                      }
+const vk::VkPhysicalDeviceMaintenance4Features&                                                        Context::getMaintenance4Features                                                        (void) const { return m_device->getMaintenance4Features();                                                      }
+const vk::VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                   Context::getMemoryPriorityFeaturesEXT                                           (void) const { return m_device->getMemoryPriorityFeaturesEXT();                                         }
+const vk::VkPhysicalDeviceMeshShaderFeaturesNV&                                                        Context::getMeshShaderFeatures                                                          (void) const { return m_device->getMeshShaderFeatures();                                                        }
+const vk::VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT&        Context::getMultisampledRenderToSingleSampledFeaturesEXT        (void) const { return m_device->getMultisampledRenderToSingleSampledFeaturesEXT();      }
+const vk::VkPhysicalDeviceMultiviewFeatures&                                                   Context::getMultiviewFeatures                                                           (void) const { return m_device->getMultiviewFeatures();                                                         }
+const vk::VkPhysicalDeviceMultiDrawFeaturesEXT&                                                        Context::getMultiDrawFeaturesEXT                                                        (void) const { return m_device->getMultiDrawFeaturesEXT();                                                      }
+const vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE&                  Context::getMutableDescriptorTypeFeaturesVALVE                          (void) const { return m_device->getMutableDescriptorTypeFeaturesVALVE();                        }
+const vk::VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT&                               Context::getNonSeamlessCubeMapFeaturesEXT                                       (void) const { return m_device->getNonSeamlessCubeMapFeaturesEXT();                                     }
+const vk::VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT&                        Context::getPageableDeviceLocalMemoryFeaturesEXT                        (void) const { return m_device->getPageableDeviceLocalMemoryFeaturesEXT();                      }
+const vk::VkPhysicalDevicePerformanceQueryFeaturesKHR&                                 Context::getPerformanceQueryFeatures                                            (void) const { return m_device->getPerformanceQueryFeatures();                                          }
+const vk::VkPhysicalDevicePipelineCreationCacheControlFeatures&                        Context::getPipelineCreationCacheControlFeatures                        (void) const { return m_device->getPipelineCreationCacheControlFeatures();                      }
+const vk::VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&             Context::getPipelineExecutablePropertiesFeatures                        (void) const { return m_device->getPipelineExecutablePropertiesFeatures();                      }
+const vk::VkPhysicalDevicePipelinePropertiesFeaturesEXT&                               Context::getPipelinePropertiesFeaturesEXT                                       (void) const { return m_device->getPipelinePropertiesFeaturesEXT();                                     }
+const vk::VkPhysicalDevicePipelineRobustnessFeaturesEXT&                               Context::getPipelineRobustnessFeaturesEXT                                       (void) const { return m_device->getPipelineRobustnessFeaturesEXT();                                     }
+const vk::VkPhysicalDevicePortabilitySubsetFeaturesKHR&                                        Context::getPortabilitySubsetFeatures                                           (void) const { return m_device->getPortabilitySubsetFeatures();                                         }
+const vk::VkPhysicalDevicePresentIdFeaturesKHR&                                                        Context::getPresentIdFeatures                                                           (void) const { return m_device->getPresentIdFeatures();                                                         }
+const vk::VkPhysicalDevicePresentWaitFeaturesKHR&                                              Context::getPresentWaitFeatures                                                         (void) const { return m_device->getPresentWaitFeatures();                                                       }
+const vk::VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT&                 Context::getPrimitivesGeneratedQueryFeaturesEXT                         (void) const { return m_device->getPrimitivesGeneratedQueryFeaturesEXT();                       }
+const vk::VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT&             Context::getPrimitiveTopologyListRestartFeaturesEXT                     (void) const { return m_device->getPrimitiveTopologyListRestartFeaturesEXT();           }
+const vk::VkPhysicalDevicePrivateDataFeatures&                                                 Context::getPrivateDataFeatures                                                         (void) const { return m_device->getPrivateDataFeatures();                                                       }
+const vk::VkPhysicalDeviceProtectedMemoryFeatures&                                             Context::getProtectedMemoryFeatures                                                     (void) const { return m_device->getProtectedMemoryFeatures();                                           }
+const vk::VkPhysicalDeviceProvokingVertexFeaturesEXT&                                  Context::getProvokingVertexFeaturesEXT                                          (void) const { return m_device->getProvokingVertexFeaturesEXT();                                        }
+const vk::VkPhysicalDeviceRayQueryFeaturesKHR&                                                 Context::getRayQueryFeatures                                                            (void) const { return m_device->getRayQueryFeatures();                                                          }
+const vk::VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR&                   Context::getRayTracingMaintenance1Features                                      (void) const { return m_device->getRayTracingMaintenance1Features();                            }
+const vk::VkPhysicalDeviceRayTracingMotionBlurFeaturesNV&                              Context::getRayTracingMotionBlurFeatures                                        (void) const { return m_device->getRayTracingMotionBlurFeatures();                                      }
+const vk::VkPhysicalDeviceRayTracingPipelineFeaturesKHR&                               Context::getRayTracingPipelineFeatures                                          (void) const { return m_device->getRayTracingPipelineFeatures();                                        }
+const vk::VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                        Context::getRepresentativeFragmentTestFeatures                          (void) const { return m_device->getRepresentativeFragmentTestFeatures();                        }
+const vk::VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT&                                  Context::getRGBA10X6FormatsFeaturesEXT                                          (void) const { return m_device->getRGBA10X6FormatsFeaturesEXT();                                        }
+const vk::VkPhysicalDeviceRobustness2FeaturesEXT&                                              Context::getRobustness2FeaturesEXT                                                      (void) const { return m_device->getRobustness2FeaturesEXT();                                            }
+const vk::VkPhysicalDeviceSamplerYcbcrConversionFeatures&                              Context::getSamplerYcbcrConversionFeatures                                      (void) const { return m_device->getSamplerYcbcrConversionFeatures();                            }
+const vk::VkPhysicalDeviceScalarBlockLayoutFeatures&                                   Context::getScalarBlockLayoutFeatures                                           (void) const { return m_device->getScalarBlockLayoutFeatures();                                         }
+const vk::VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures&                 Context::getSeparateDepthStencilLayoutsFeatures                         (void) const { return m_device->getSeparateDepthStencilLayoutsFeatures();                       }
+const vk::VkPhysicalDeviceShaderAtomicFloatFeaturesEXT&                                        Context::getShaderAtomicFloatFeaturesEXT                                        (void) const { return m_device->getShaderAtomicFloatFeaturesEXT();                                      }
+const vk::VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT&                               Context::getShaderAtomicFloat2FeaturesEXT                                       (void) const { return m_device->getShaderAtomicFloat2FeaturesEXT();                                     }
+const vk::VkPhysicalDeviceShaderAtomicInt64Features&                                   Context::getShaderAtomicInt64Features                                           (void) const { return m_device->getShaderAtomicInt64Features();                                         }
+const vk::VkPhysicalDeviceShaderClockFeaturesKHR&                                              Context::getShaderClockFeatures                                                         (void) const { return m_device->getShaderClockFeatures();                                                       }
+const vk::VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures&              Context::getShaderDemoteToHelperInvocationFeatures                      (void) const { return m_device->getShaderDemoteToHelperInvocationFeatures();            }
+const vk::VkPhysicalDeviceShaderDrawParametersFeatures&                                        Context::getShaderDrawParametersFeatures                                        (void) const { return m_device->getShaderDrawParametersFeatures();                                      }
+const vk::VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD&  Context::getShaderEarlyAndLateFragmentTestsFeaturesAMD          (void) const { return m_device->getShaderEarlyAndLateFragmentTestsFeaturesAMD();        }
+const vk::VkPhysicalDeviceShaderFloat16Int8Features&                                   Context::getShaderFloat16Int8Features                                           (void) const { return m_device->getShaderFloat16Int8Features();                                         }
+const vk::VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT&                   Context::getShaderImageAtomicInt64FeaturesEXT                           (void) const { return m_device->getShaderImageAtomicInt64FeaturesEXT();                         }
+const vk::VkPhysicalDeviceShaderImageFootprintFeaturesNV&                              Context::getShaderImageFootprintFeatures                                        (void) const { return m_device->getShaderImageFootprintFeatures();                                      }
+const vk::VkPhysicalDeviceShaderIntegerDotProductFeatures&                             Context::getShaderIntegerDotProductFeatures                                     (void) const { return m_device->getShaderIntegerDotProductFeatures();                           }
+const vk::VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL&                        Context::getShaderIntegerFunctions2FeaturesINTEL                        (void) const { return m_device->getShaderIntegerFunctions2FeaturesINTEL();                      }
+const vk::VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT&                   Context::getShaderModuleIdentifierFeaturesEXT                           (void) const { return m_device->getShaderModuleIdentifierFeaturesEXT();                         }
+const vk::VkPhysicalDeviceShaderSMBuiltinsFeaturesNV&                                  Context::getShaderSMBuiltinsFeatures                                            (void) const { return m_device->getShaderSMBuiltinsFeatures();                                          }
+const vk::VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures&                 Context::getShaderSubgroupExtendedTypesFeatures                         (void) const { return m_device->getShaderSubgroupExtendedTypesFeatures();                       }
+const vk::VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR& Context::getShaderSubgroupUniformControlFlowFeatures            (void) const { return m_device->getShaderSubgroupUniformControlFlowFeatures();          }
+const vk::VkPhysicalDeviceShaderTerminateInvocationFeatures&                   Context::getShaderTerminateInvocationFeatures                           (void) const { return m_device->getShaderTerminateInvocationFeatures();                         }
+const vk::VkPhysicalDeviceShadingRateImageFeaturesNV&                                  Context::getShadingRateImageFeatures                                            (void) const { return m_device->getShadingRateImageFeatures();                                          }
+const vk::VkPhysicalDeviceSubgroupSizeControlFeatures&                                 Context::getSubgroupSizeControlFeatures                                         (void) const { return m_device->getSubgroupSizeControlFeatures();                                       }
+const vk::VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT&                             Context::getSubpassMergeFeedbackFeaturesEXT                                     (void) const { return m_device->getSubpassMergeFeedbackFeaturesEXT();                           }
+const vk::VkPhysicalDeviceSubpassShadingFeaturesHUAWEI&                                        Context::getSubpassShadingFeaturesHUAWEI                                        (void) const { return m_device->getSubpassShadingFeaturesHUAWEI();                                      }
+const vk::VkPhysicalDeviceSynchronization2Features&                                            Context::getSynchronization2Features                                            (void) const { return m_device->getSynchronization2Features();                                          }
+const vk::VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT&                             Context::getTexelBufferAlignmentFeaturesEXT                                     (void) const { return m_device->getTexelBufferAlignmentFeaturesEXT();                           }
+const vk::VkPhysicalDeviceTextureCompressionASTCHDRFeatures&                   Context::getTextureCompressionASTCHDRFeatures                           (void) const { return m_device->getTextureCompressionASTCHDRFeatures();                         }
+const vk::VkPhysicalDeviceTilePropertiesFeaturesQCOM&                                  Context::getTilePropertiesFeaturesQCOM                                          (void) const { return m_device->getTilePropertiesFeaturesQCOM();                                        }
+const vk::VkPhysicalDeviceTimelineSemaphoreFeatures&                                   Context::getTimelineSemaphoreFeatures                                           (void) const { return m_device->getTimelineSemaphoreFeatures();                                         }
+const vk::VkPhysicalDeviceTransformFeedbackFeaturesEXT&                                        Context::getTransformFeedbackFeaturesEXT                                        (void) const { return m_device->getTransformFeedbackFeaturesEXT();                                      }
+const vk::VkPhysicalDeviceUniformBufferStandardLayoutFeatures&                 Context::getUniformBufferStandardLayoutFeatures                         (void) const { return m_device->getUniformBufferStandardLayoutFeatures();                       }
+const vk::VkPhysicalDeviceVariablePointersFeatures&                                            Context::getVariablePointersFeatures                                            (void) const { return m_device->getVariablePointersFeatures();                                          }
+const vk::VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT&                   Context::getVertexAttributeDivisorFeaturesEXT                           (void) const { return m_device->getVertexAttributeDivisorFeaturesEXT();                         }
+const vk::VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT&                  Context::getVertexInputDynamicStateFeaturesEXT                          (void) const { return m_device->getVertexInputDynamicStateFeaturesEXT();                        }
+const vk::VkPhysicalDeviceVulkanMemoryModelFeatures&                                   Context::getVulkanMemoryModelFeatures                                           (void) const { return m_device->getVulkanMemoryModelFeatures();                                         }
+const vk::VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR&            Context::getWorkgroupMemoryExplicitLayoutFeatures                       (void) const { return m_device->getWorkgroupMemoryExplicitLayoutFeatures();                     }
+const vk::VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT&                            Context::getYcbcr2Plane444FormatsFeaturesEXT                            (void) const { return m_device->getYcbcr2Plane444FormatsFeaturesEXT();                          }
+const vk::VkPhysicalDeviceYcbcrImageArraysFeaturesEXT&                                 Context::getYcbcrImageArraysFeaturesEXT                                         (void) const { return m_device->getYcbcrImageArraysFeaturesEXT();                                       }
+const vk::VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures&               Context::getZeroInitializeWorkgroupMemoryFeatures                       (void) const { return m_device->getZeroInitializeWorkgroupMemoryFeatures();                     }
index 772b586..f3deae4 100644 (file)
  * This file was generated by /scripts/gen_framework.py
  */
 
-const VkPhysicalDevice16BitStorageFeatures&                                                    get16BitStorageFeatures                                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevice16BitStorageFeatures>();                                                  }
-const VkPhysicalDevice4444FormatsFeaturesEXT&                                          get4444FormatsFeaturesEXT                                       (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevice4444FormatsFeaturesEXT>();                                                }
-const VkPhysicalDevice8BitStorageFeatures&                                                     get8BitStorageFeatures                                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevice8BitStorageFeatures>();                                                   }
-const VkPhysicalDeviceAccelerationStructureFeaturesKHR&                                getAccelerationStructureFeatures                        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceAccelerationStructureFeaturesKHR>();                              }
-const VkPhysicalDeviceASTCDecodeFeaturesEXT&                                           getASTCDecodeFeaturesEXT                                        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceASTCDecodeFeaturesEXT>();                                                 }
-const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT&                       getBlendOperationAdvancedFeaturesEXT            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>();                             }
-const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT&                           getBorderColorSwizzleFeaturesEXT                        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>();                                 }
-const VkPhysicalDeviceBufferDeviceAddressFeatures&                                     getBufferDeviceAddressFeatures                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBufferDeviceAddressFeatures>();                                   }
-const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT&                          getBufferDeviceAddressFeaturesEXT                       (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>();                                }
-const VkPhysicalDeviceCoherentMemoryFeaturesAMD&                                       getCoherentMemoryFeaturesAMD                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCoherentMemoryFeaturesAMD>();                                             }
-const VkPhysicalDeviceColorWriteEnableFeaturesEXT&                                     getColorWriteEnableFeaturesEXT                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceColorWriteEnableFeaturesEXT>();                                   }
-const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV&                      getComputeShaderDerivativesFeatures                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>();                    }
-const VkPhysicalDeviceConditionalRenderingFeaturesEXT&                         getConditionalRenderingFeaturesEXT                      (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceConditionalRenderingFeaturesEXT>();                               }
-const VkPhysicalDeviceCooperativeMatrixFeaturesNV&                                     getCooperativeMatrixFeatures                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCooperativeMatrixFeaturesNV>();                                   }
-const VkPhysicalDeviceCornerSampledImageFeaturesNV&                                    getCornerSampledImageFeatures                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCornerSampledImageFeaturesNV>();                                  }
-const VkPhysicalDeviceCoverageReductionModeFeaturesNV&                         getCoverageReductionModeFeatures                        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCoverageReductionModeFeaturesNV>();                               }
-const VkPhysicalDeviceCustomBorderColorFeaturesEXT&                                    getCustomBorderColorFeaturesEXT                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCustomBorderColorFeaturesEXT>();                                  }
-const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&      getDedicatedAllocationImageAliasingFeatures     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>();    }
-const VkPhysicalDeviceDepthClipControlFeaturesEXT&                                     getDepthClipControlFeaturesEXT                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDepthClipControlFeaturesEXT>();                                   }
-const VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                      getDepthClipEnableFeaturesEXT                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDepthClipEnableFeaturesEXT>();                                    }
-const VkPhysicalDeviceDescriptorIndexingFeatures&                                      getDescriptorIndexingFeatures                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDescriptorIndexingFeatures>();                                    }
-const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE&           getDescriptorSetHostMappingFeaturesVALVE        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>();                 }
-const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                       getDeviceGeneratedCommandsFeatures                      (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>();                             }
-const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT&                           getDeviceMemoryReportFeaturesEXT                        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT>();                                 }
-const VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                     getDiagnosticsConfigFeatures                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>();                                   }
-const VkPhysicalDeviceDynamicRenderingFeatures&                                                getDynamicRenderingFeatures                                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDynamicRenderingFeatures>();                                              }
-const VkPhysicalDeviceExclusiveScissorFeaturesNV&                                      getExclusiveScissorFeatures                                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExclusiveScissorFeaturesNV>();                                    }
-const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT&                         getExtendedDynamicStateFeaturesEXT                      (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT>();                               }
-const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT&                                getExtendedDynamicState2FeaturesEXT                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>();                              }
-const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV&                                    getExternalMemoryRDMAFeatures                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV>();                                  }
-const VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                           getFragmentDensityMapFeaturesEXT                        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>();                                 }
-const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT&                          getFragmentDensityMap2FeaturesEXT                       (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT>();                                }
-const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM&                    getFragmentDensityMapOffsetFeaturesQCOM         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>();                  }
-const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV&                     getFragmentShaderBarycentricFeatures            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV>();                   }
-const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT&                      getFragmentShaderInterlockFeaturesEXT           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>();                    }
-const VkPhysicalDeviceFragmentShadingRateFeaturesKHR&                          getFragmentShadingRateFeatures                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShadingRateFeaturesKHR>();                                }
-const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV&                      getFragmentShadingRateEnumsFeatures                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>();                    }
-const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR&                          getGlobalPriorityQueryFeatures                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR>();                                }
-const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT&                      getGraphicsPipelineLibraryFeaturesEXT           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>();                    }
-const VkPhysicalDeviceHostQueryResetFeatures&                                          getHostQueryResetFeatures                                       (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceHostQueryResetFeatures>();                                                }
-const VkPhysicalDeviceImagelessFramebufferFeatures&                                    getImagelessFramebufferFeatures                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImagelessFramebufferFeatures>();                                  }
-const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT&                                      getImage2DViewOf3DFeaturesEXT                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>();                                    }
-const VkPhysicalDeviceImageRobustnessFeatures&                                         getImageRobustnessFeatures                                      (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageRobustnessFeatures>();                                               }
-const VkPhysicalDeviceImageViewMinLodFeaturesEXT&                                      getImageViewMinLodFeaturesEXT                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageViewMinLodFeaturesEXT>();                                    }
-const VkPhysicalDeviceIndexTypeUint8FeaturesEXT&                                       getIndexTypeUint8FeaturesEXT                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>();                                             }
-const VkPhysicalDeviceInheritedViewportScissorFeaturesNV&                      getInheritedViewportScissorFeatures                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceInheritedViewportScissorFeaturesNV>();                    }
-const VkPhysicalDeviceInlineUniformBlockFeatures&                                      getInlineUniformBlockFeatures                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceInlineUniformBlockFeatures>();                                    }
-const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI&                                    getInvocationMaskFeaturesHUAWEI                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI>();                                  }
-const VkPhysicalDeviceLinearColorAttachmentFeaturesNV&                         getLinearColorAttachmentFeatures                        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>();                               }
-const VkPhysicalDeviceLineRasterizationFeaturesEXT&                                    getLineRasterizationFeaturesEXT                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceLineRasterizationFeaturesEXT>();                                  }
-const VkPhysicalDeviceMaintenance4Features&                                                    getMaintenance4Features                                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMaintenance4Features>();                                                  }
-const VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                       getMemoryPriorityFeaturesEXT                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMemoryPriorityFeaturesEXT>();                                             }
-const VkPhysicalDeviceMeshShaderFeaturesNV&                                                    getMeshShaderFeatures                                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMeshShaderFeaturesNV>();                                                  }
-const VkPhysicalDeviceMultiviewFeatures&                                                       getMultiviewFeatures                                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMultiviewFeatures>();                                                             }
-const VkPhysicalDeviceMultiDrawFeaturesEXT&                                                    getMultiDrawFeaturesEXT                                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMultiDrawFeaturesEXT>();                                                  }
-const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE&                      getMutableDescriptorTypeFeaturesVALVE           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>();                    }
-const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT&                    getPageableDeviceLocalMemoryFeaturesEXT         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>();                  }
-const VkPhysicalDevicePerformanceQueryFeaturesKHR&                                     getPerformanceQueryFeatures                                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePerformanceQueryFeaturesKHR>();                                   }
-const VkPhysicalDevicePipelineCreationCacheControlFeatures&                    getPipelineCreationCacheControlFeatures         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineCreationCacheControlFeatures>();                  }
-const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&         getPipelineExecutablePropertiesFeatures         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>();               }
-const VkPhysicalDevicePortabilitySubsetFeaturesKHR&                                    getPortabilitySubsetFeatures                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePortabilitySubsetFeaturesKHR>();                                  }
-const VkPhysicalDevicePresentIdFeaturesKHR&                                                    getPresentIdFeatures                                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePresentIdFeaturesKHR>();                                                  }
-const VkPhysicalDevicePresentWaitFeaturesKHR&                                          getPresentWaitFeatures                                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePresentWaitFeaturesKHR>();                                                }
-const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT&                     getPrimitivesGeneratedQueryFeaturesEXT          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>();                   }
-const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT&         getPrimitiveTopologyListRestartFeaturesEXT      (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>();               }
-const VkPhysicalDevicePrivateDataFeatures&                                                     getPrivateDataFeatures                                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePrivateDataFeatures>();                                                   }
-const VkPhysicalDeviceProtectedMemoryFeatures&                                         getProtectedMemoryFeatures                                      (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceProtectedMemoryFeatures>();                                               }
-const VkPhysicalDeviceProvokingVertexFeaturesEXT&                                      getProvokingVertexFeaturesEXT                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceProvokingVertexFeaturesEXT>();                                    }
-const VkPhysicalDeviceRayQueryFeaturesKHR&                                                     getRayQueryFeatures                                                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRayQueryFeaturesKHR>();                                                   }
-const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV&                          getRayTracingMotionBlurFeatures                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV>();                                }
-const VkPhysicalDeviceRayTracingPipelineFeaturesKHR&                           getRayTracingPipelineFeatures                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>();                                 }
-const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                    getRepresentativeFragmentTestFeatures           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>();                  }
-const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT&                                      getRGBA10X6FormatsFeaturesEXT                           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>();                                    }
-const VkPhysicalDeviceRobustness2FeaturesEXT&                                          getRobustness2FeaturesEXT                                       (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRobustness2FeaturesEXT>();                                                }
-const VkPhysicalDeviceSamplerYcbcrConversionFeatures&                          getSamplerYcbcrConversionFeatures                       (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSamplerYcbcrConversionFeatures>();                                }
-const VkPhysicalDeviceScalarBlockLayoutFeatures&                                       getScalarBlockLayoutFeatures                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceScalarBlockLayoutFeatures>();                                             }
-const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures&                     getSeparateDepthStencilLayoutsFeatures          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures>();                   }
-const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT&                                    getShaderAtomicFloatFeaturesEXT                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>();                                  }
-const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT&                           getShaderAtomicFloat2FeaturesEXT                        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT>();                                 }
-const VkPhysicalDeviceShaderAtomicInt64Features&                                       getShaderAtomicInt64Features                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderAtomicInt64Features>();                                             }
-const VkPhysicalDeviceShaderClockFeaturesKHR&                                          getShaderClockFeatures                                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderClockFeaturesKHR>();                                                }
-const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures&          getShaderDemoteToHelperInvocationFeatures       (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures>();                }
-const VkPhysicalDeviceShaderDrawParametersFeatures&                                    getShaderDrawParametersFeatures                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderDrawParametersFeatures>();                                  }
-const VkPhysicalDeviceShaderFloat16Int8Features&                                       getShaderFloat16Int8Features                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderFloat16Int8Features>();                                             }
-const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT&                       getShaderImageAtomicInt64FeaturesEXT            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT>();                             }
-const VkPhysicalDeviceShaderImageFootprintFeaturesNV&                          getShaderImageFootprintFeatures                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderImageFootprintFeaturesNV>();                                }
-const VkPhysicalDeviceShaderIntegerDotProductFeatures&                         getShaderIntegerDotProductFeatures                      (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderIntegerDotProductFeatures>();                               }
-const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL&                    getShaderIntegerFunctions2FeaturesINTEL         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>();                  }
-const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV&                                      getShaderSMBuiltinsFeatures                                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV>();                                    }
-const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures&                     getShaderSubgroupExtendedTypesFeatures          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures>();                   }
-const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR&     getShaderSubgroupUniformControlFlowFeatures     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>();   }
-const VkPhysicalDeviceShaderTerminateInvocationFeatures&                       getShaderTerminateInvocationFeatures            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderTerminateInvocationFeatures>();                             }
-const VkPhysicalDeviceShadingRateImageFeaturesNV&                                      getShadingRateImageFeatures                                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShadingRateImageFeaturesNV>();                                    }
-const VkPhysicalDeviceSubgroupSizeControlFeatures&                                     getSubgroupSizeControlFeatures                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSubgroupSizeControlFeatures>();                                   }
-const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI&                                    getSubpassShadingFeaturesHUAWEI                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>();                                  }
-const VkPhysicalDeviceSynchronization2Features&                                                getSynchronization2Features                                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSynchronization2Features>();                                              }
-const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT&                         getTexelBufferAlignmentFeaturesEXT                      (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT>();                               }
-const VkPhysicalDeviceTextureCompressionASTCHDRFeatures&                       getTextureCompressionASTCHDRFeatures            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTextureCompressionASTCHDRFeatures>();                             }
-const VkPhysicalDeviceTimelineSemaphoreFeatures&                                       getTimelineSemaphoreFeatures                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTimelineSemaphoreFeatures>();                                             }
-const VkPhysicalDeviceTransformFeedbackFeaturesEXT&                                    getTransformFeedbackFeaturesEXT                         (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTransformFeedbackFeaturesEXT>();                                  }
-const VkPhysicalDeviceUniformBufferStandardLayoutFeatures&                     getUniformBufferStandardLayoutFeatures          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceUniformBufferStandardLayoutFeatures>();                   }
-const VkPhysicalDeviceVariablePointersFeatures&                                                getVariablePointersFeatures                                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVariablePointersFeatures>();                                              }
-const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT&                       getVertexAttributeDivisorFeaturesEXT            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT>();                             }
-const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT&                      getVertexInputDynamicStateFeaturesEXT           (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT>();                    }
-const VkPhysicalDeviceVulkanMemoryModelFeatures&                                       getVulkanMemoryModelFeatures                            (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVulkanMemoryModelFeatures>();                                             }
-const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR&                getWorkgroupMemoryExplicitLayoutFeatures        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>();              }
-const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT&                                getYcbcr2Plane444FormatsFeaturesEXT                     (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>();                              }
-const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT&                                     getYcbcrImageArraysFeaturesEXT                          (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT>();                                   }
-const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures&           getZeroInitializeWorkgroupMemoryFeatures        (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures>();                 }
+const VkPhysicalDevice16BitStorageFeatures&                                                    get16BitStorageFeatures                                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevice16BitStorageFeatures>();                                                  }
+const VkPhysicalDevice4444FormatsFeaturesEXT&                                          get4444FormatsFeaturesEXT                                               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevice4444FormatsFeaturesEXT>();                                                }
+const VkPhysicalDevice8BitStorageFeatures&                                                     get8BitStorageFeatures                                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevice8BitStorageFeatures>();                                                   }
+const VkPhysicalDeviceAccelerationStructureFeaturesKHR&                                getAccelerationStructureFeatures                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceAccelerationStructureFeaturesKHR>();                              }
+const VkPhysicalDeviceAmigoProfilingFeaturesSEC&                                       getAmigoProfilingFeaturesSEC                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceAmigoProfilingFeaturesSEC>();                                             }
+const VkPhysicalDeviceASTCDecodeFeaturesEXT&                                           getASTCDecodeFeaturesEXT                                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceASTCDecodeFeaturesEXT>();                                                 }
+const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT&         getAttachmentFeedbackLoopLayoutFeaturesEXT              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>();               }
+const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT&                       getBlendOperationAdvancedFeaturesEXT                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>();                             }
+const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT&                           getBorderColorSwizzleFeaturesEXT                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>();                                 }
+const VkPhysicalDeviceBufferDeviceAddressFeatures&                                     getBufferDeviceAddressFeatures                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBufferDeviceAddressFeatures>();                                   }
+const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT&                          getBufferDeviceAddressFeaturesEXT                               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>();                                }
+const VkPhysicalDeviceCoherentMemoryFeaturesAMD&                                       getCoherentMemoryFeaturesAMD                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCoherentMemoryFeaturesAMD>();                                             }
+const VkPhysicalDeviceColorWriteEnableFeaturesEXT&                                     getColorWriteEnableFeaturesEXT                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceColorWriteEnableFeaturesEXT>();                                   }
+const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV&                      getComputeShaderDerivativesFeatures                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>();                    }
+const VkPhysicalDeviceConditionalRenderingFeaturesEXT&                         getConditionalRenderingFeaturesEXT                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceConditionalRenderingFeaturesEXT>();                               }
+const VkPhysicalDeviceCooperativeMatrixFeaturesNV&                                     getCooperativeMatrixFeatures                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCooperativeMatrixFeaturesNV>();                                   }
+const VkPhysicalDeviceCornerSampledImageFeaturesNV&                                    getCornerSampledImageFeatures                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCornerSampledImageFeaturesNV>();                                  }
+const VkPhysicalDeviceCoverageReductionModeFeaturesNV&                         getCoverageReductionModeFeatures                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCoverageReductionModeFeaturesNV>();                               }
+const VkPhysicalDeviceCustomBorderColorFeaturesEXT&                                    getCustomBorderColorFeaturesEXT                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCustomBorderColorFeaturesEXT>();                                  }
+const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV&      getDedicatedAllocationImageAliasingFeatures             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>();    }
+const VkPhysicalDeviceDepthClipControlFeaturesEXT&                                     getDepthClipControlFeaturesEXT                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDepthClipControlFeaturesEXT>();                                   }
+const VkPhysicalDeviceDepthClipEnableFeaturesEXT&                                      getDepthClipEnableFeaturesEXT                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDepthClipEnableFeaturesEXT>();                                    }
+const VkPhysicalDeviceDescriptorIndexingFeatures&                                      getDescriptorIndexingFeatures                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDescriptorIndexingFeatures>();                                    }
+const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE&           getDescriptorSetHostMappingFeaturesVALVE                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>();                 }
+const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV&                       getDeviceGeneratedCommandsFeatures                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>();                             }
+const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT&                           getDeviceMemoryReportFeaturesEXT                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT>();                                 }
+const VkPhysicalDeviceDiagnosticsConfigFeaturesNV&                                     getDiagnosticsConfigFeatures                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>();                                   }
+const VkPhysicalDeviceDynamicRenderingFeatures&                                                getDynamicRenderingFeatures                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDynamicRenderingFeatures>();                                              }
+const VkPhysicalDeviceExclusiveScissorFeaturesNV&                                      getExclusiveScissorFeatures                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExclusiveScissorFeaturesNV>();                                    }
+const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT&                         getExtendedDynamicStateFeaturesEXT                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT>();                               }
+const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT&                                getExtendedDynamicState2FeaturesEXT                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>();                              }
+const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV&                                    getExternalMemoryRDMAFeatures                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV>();                                  }
+const VkPhysicalDeviceFragmentDensityMapFeaturesEXT&                           getFragmentDensityMapFeaturesEXT                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>();                                 }
+const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT&                          getFragmentDensityMap2FeaturesEXT                               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT>();                                }
+const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM&                    getFragmentDensityMapOffsetFeaturesQCOM                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>();                  }
+const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR&                    getFragmentShaderBarycentricFeatures                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR>();                  }
+const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT&                      getFragmentShaderInterlockFeaturesEXT                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>();                    }
+const VkPhysicalDeviceFragmentShadingRateFeaturesKHR&                          getFragmentShadingRateFeatures                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShadingRateFeaturesKHR>();                                }
+const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV&                      getFragmentShadingRateEnumsFeatures                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>();                    }
+const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR&                          getGlobalPriorityQueryFeatures                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR>();                                }
+const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT&                      getGraphicsPipelineLibraryFeaturesEXT                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>();                    }
+const VkPhysicalDeviceHostQueryResetFeatures&                                          getHostQueryResetFeatures                                               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceHostQueryResetFeatures>();                                                }
+const VkPhysicalDeviceImagelessFramebufferFeatures&                                    getImagelessFramebufferFeatures                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImagelessFramebufferFeatures>();                                  }
+const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT&                                      getImage2DViewOf3DFeaturesEXT                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>();                                    }
+const VkPhysicalDeviceImageCompressionControlFeaturesEXT&                      getImageCompressionControlFeaturesEXT                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageCompressionControlFeaturesEXT>();                    }
+const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT&     getImageCompressionControlSwapchainFeaturesEXT  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>();   }
+const VkPhysicalDeviceImageProcessingFeaturesQCOM&                                     getImageProcessingFeaturesQCOM                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageProcessingFeaturesQCOM>();                                   }
+const VkPhysicalDeviceImageRobustnessFeatures&                                         getImageRobustnessFeatures                                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageRobustnessFeatures>();                                               }
+const VkPhysicalDeviceImageViewMinLodFeaturesEXT&                                      getImageViewMinLodFeaturesEXT                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageViewMinLodFeaturesEXT>();                                    }
+const VkPhysicalDeviceIndexTypeUint8FeaturesEXT&                                       getIndexTypeUint8FeaturesEXT                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>();                                             }
+const VkPhysicalDeviceInheritedViewportScissorFeaturesNV&                      getInheritedViewportScissorFeatures                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceInheritedViewportScissorFeaturesNV>();                    }
+const VkPhysicalDeviceInlineUniformBlockFeatures&                                      getInlineUniformBlockFeatures                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceInlineUniformBlockFeatures>();                                    }
+const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI&                                    getInvocationMaskFeaturesHUAWEI                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI>();                                  }
+const VkPhysicalDeviceLinearColorAttachmentFeaturesNV&                         getLinearColorAttachmentFeatures                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>();                               }
+const VkPhysicalDeviceLineRasterizationFeaturesEXT&                                    getLineRasterizationFeaturesEXT                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceLineRasterizationFeaturesEXT>();                                  }
+const VkPhysicalDeviceMaintenance4Features&                                                    getMaintenance4Features                                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMaintenance4Features>();                                                  }
+const VkPhysicalDeviceMemoryPriorityFeaturesEXT&                                       getMemoryPriorityFeaturesEXT                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMemoryPriorityFeaturesEXT>();                                             }
+const VkPhysicalDeviceMeshShaderFeaturesNV&                                                    getMeshShaderFeatures                                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMeshShaderFeaturesNV>();                                                  }
+const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT&    getMultisampledRenderToSingleSampledFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT>();  }
+const VkPhysicalDeviceMultiviewFeatures&                                                       getMultiviewFeatures                                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMultiviewFeatures>();                                                             }
+const VkPhysicalDeviceMultiDrawFeaturesEXT&                                                    getMultiDrawFeaturesEXT                                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMultiDrawFeaturesEXT>();                                                  }
+const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE&                      getMutableDescriptorTypeFeaturesVALVE                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>();                    }
+const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT&                           getNonSeamlessCubeMapFeaturesEXT                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT>();                                 }
+const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT&                    getPageableDeviceLocalMemoryFeaturesEXT                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>();                  }
+const VkPhysicalDevicePerformanceQueryFeaturesKHR&                                     getPerformanceQueryFeatures                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePerformanceQueryFeaturesKHR>();                                   }
+const VkPhysicalDevicePipelineCreationCacheControlFeatures&                    getPipelineCreationCacheControlFeatures                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineCreationCacheControlFeatures>();                  }
+const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&         getPipelineExecutablePropertiesFeatures                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>();               }
+const VkPhysicalDevicePipelinePropertiesFeaturesEXT&                           getPipelinePropertiesFeaturesEXT                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelinePropertiesFeaturesEXT>();                                 }
+const VkPhysicalDevicePipelineRobustnessFeaturesEXT&                           getPipelineRobustnessFeaturesEXT                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineRobustnessFeaturesEXT>();                                 }
+const VkPhysicalDevicePortabilitySubsetFeaturesKHR&                                    getPortabilitySubsetFeatures                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePortabilitySubsetFeaturesKHR>();                                  }
+const VkPhysicalDevicePresentIdFeaturesKHR&                                                    getPresentIdFeatures                                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePresentIdFeaturesKHR>();                                                  }
+const VkPhysicalDevicePresentWaitFeaturesKHR&                                          getPresentWaitFeatures                                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePresentWaitFeaturesKHR>();                                                }
+const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT&                     getPrimitivesGeneratedQueryFeaturesEXT                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>();                   }
+const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT&         getPrimitiveTopologyListRestartFeaturesEXT              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>();               }
+const VkPhysicalDevicePrivateDataFeatures&                                                     getPrivateDataFeatures                                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePrivateDataFeatures>();                                                   }
+const VkPhysicalDeviceProtectedMemoryFeatures&                                         getProtectedMemoryFeatures                                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceProtectedMemoryFeatures>();                                               }
+const VkPhysicalDeviceProvokingVertexFeaturesEXT&                                      getProvokingVertexFeaturesEXT                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceProvokingVertexFeaturesEXT>();                                    }
+const VkPhysicalDeviceRayQueryFeaturesKHR&                                                     getRayQueryFeatures                                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRayQueryFeaturesKHR>();                                                   }
+const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR&                       getRayTracingMaintenance1Features                               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR>();                             }
+const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV&                          getRayTracingMotionBlurFeatures                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV>();                                }
+const VkPhysicalDeviceRayTracingPipelineFeaturesKHR&                           getRayTracingPipelineFeatures                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>();                                 }
+const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV&                    getRepresentativeFragmentTestFeatures                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>();                  }
+const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT&                                      getRGBA10X6FormatsFeaturesEXT                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>();                                    }
+const VkPhysicalDeviceRobustness2FeaturesEXT&                                          getRobustness2FeaturesEXT                                               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRobustness2FeaturesEXT>();                                                }
+const VkPhysicalDeviceSamplerYcbcrConversionFeatures&                          getSamplerYcbcrConversionFeatures                               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSamplerYcbcrConversionFeatures>();                                }
+const VkPhysicalDeviceScalarBlockLayoutFeatures&                                       getScalarBlockLayoutFeatures                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceScalarBlockLayoutFeatures>();                                             }
+const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures&                     getSeparateDepthStencilLayoutsFeatures                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures>();                   }
+const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT&                                    getShaderAtomicFloatFeaturesEXT                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>();                                  }
+const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT&                           getShaderAtomicFloat2FeaturesEXT                                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT>();                                 }
+const VkPhysicalDeviceShaderAtomicInt64Features&                                       getShaderAtomicInt64Features                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderAtomicInt64Features>();                                             }
+const VkPhysicalDeviceShaderClockFeaturesKHR&                                          getShaderClockFeatures                                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderClockFeaturesKHR>();                                                }
+const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures&          getShaderDemoteToHelperInvocationFeatures               (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures>();                }
+const VkPhysicalDeviceShaderDrawParametersFeatures&                                    getShaderDrawParametersFeatures                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderDrawParametersFeatures>();                                  }
+const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD&      getShaderEarlyAndLateFragmentTestsFeaturesAMD   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD>();    }
+const VkPhysicalDeviceShaderFloat16Int8Features&                                       getShaderFloat16Int8Features                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderFloat16Int8Features>();                                             }
+const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT&                       getShaderImageAtomicInt64FeaturesEXT                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT>();                             }
+const VkPhysicalDeviceShaderImageFootprintFeaturesNV&                          getShaderImageFootprintFeatures                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderImageFootprintFeaturesNV>();                                }
+const VkPhysicalDeviceShaderIntegerDotProductFeatures&                         getShaderIntegerDotProductFeatures                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderIntegerDotProductFeatures>();                               }
+const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL&                    getShaderIntegerFunctions2FeaturesINTEL                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>();                  }
+const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT&                       getShaderModuleIdentifierFeaturesEXT                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>();                             }
+const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV&                                      getShaderSMBuiltinsFeatures                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV>();                                    }
+const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures&                     getShaderSubgroupExtendedTypesFeatures                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures>();                   }
+const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR&     getShaderSubgroupUniformControlFlowFeatures             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>();   }
+const VkPhysicalDeviceShaderTerminateInvocationFeatures&                       getShaderTerminateInvocationFeatures                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderTerminateInvocationFeatures>();                             }
+const VkPhysicalDeviceShadingRateImageFeaturesNV&                                      getShadingRateImageFeatures                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShadingRateImageFeaturesNV>();                                    }
+const VkPhysicalDeviceSubgroupSizeControlFeatures&                                     getSubgroupSizeControlFeatures                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSubgroupSizeControlFeatures>();                                   }
+const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT&                         getSubpassMergeFeedbackFeaturesEXT                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>();                               }
+const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI&                                    getSubpassShadingFeaturesHUAWEI                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>();                                  }
+const VkPhysicalDeviceSynchronization2Features&                                                getSynchronization2Features                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSynchronization2Features>();                                              }
+const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT&                         getTexelBufferAlignmentFeaturesEXT                              (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT>();                               }
+const VkPhysicalDeviceTextureCompressionASTCHDRFeatures&                       getTextureCompressionASTCHDRFeatures                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTextureCompressionASTCHDRFeatures>();                             }
+const VkPhysicalDeviceTilePropertiesFeaturesQCOM&                                      getTilePropertiesFeaturesQCOM                                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTilePropertiesFeaturesQCOM>();                                    }
+const VkPhysicalDeviceTimelineSemaphoreFeatures&                                       getTimelineSemaphoreFeatures                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTimelineSemaphoreFeatures>();                                             }
+const VkPhysicalDeviceTransformFeedbackFeaturesEXT&                                    getTransformFeedbackFeaturesEXT                                 (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTransformFeedbackFeaturesEXT>();                                  }
+const VkPhysicalDeviceUniformBufferStandardLayoutFeatures&                     getUniformBufferStandardLayoutFeatures                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceUniformBufferStandardLayoutFeatures>();                   }
+const VkPhysicalDeviceVariablePointersFeatures&                                                getVariablePointersFeatures                                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVariablePointersFeatures>();                                              }
+const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT&                       getVertexAttributeDivisorFeaturesEXT                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT>();                             }
+const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT&                      getVertexInputDynamicStateFeaturesEXT                   (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT>();                    }
+const VkPhysicalDeviceVulkanMemoryModelFeatures&                                       getVulkanMemoryModelFeatures                                    (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVulkanMemoryModelFeatures>();                                             }
+const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR&                getWorkgroupMemoryExplicitLayoutFeatures                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>();              }
+const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT&                                getYcbcr2Plane444FormatsFeaturesEXT                             (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>();                              }
+const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT&                                     getYcbcrImageArraysFeaturesEXT                                  (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT>();                                   }
+const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures&           getZeroInitializeWorkgroupMemoryFeatures                (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures>();                 }
index e98e3f1..a1bdea8 100644 (file)
@@ -221,6 +221,7 @@ GetPipelineExecutableStatisticsKHRFunc                              getPipelineExecutableStatisticsKHR;
 GetPipelineExecutableInternalRepresentationsKHRFunc    getPipelineExecutableInternalRepresentationsKHR;
 CmdWriteBufferMarker2AMDFunc                                           cmdWriteBufferMarker2AMD;
 GetQueueCheckpointData2NVFunc                                          getQueueCheckpointData2NV;
+CmdTraceRaysIndirect2KHRFunc                                           cmdTraceRaysIndirect2KHR;
 DebugMarkerSetObjectTagEXTFunc                                         debugMarkerSetObjectTagEXT;
 DebugMarkerSetObjectNameEXTFunc                                                debugMarkerSetObjectNameEXT;
 CmdDebugMarkerBeginEXTFunc                                                     cmdDebugMarkerBeginEXT;
@@ -311,11 +312,13 @@ CmdBindPipelineShaderGroupNVFunc                                  cmdBindPipelineShaderGroupNV;
 CreateIndirectCommandsLayoutNVFunc                                     createIndirectCommandsLayoutNV;
 DestroyIndirectCommandsLayoutNVFunc                                    destroyIndirectCommandsLayoutNV;
 CmdSetFragmentShadingRateEnumNVFunc                                    cmdSetFragmentShadingRateEnumNV;
+GetImageSubresourceLayout2EXTFunc                                      getImageSubresourceLayout2EXT;
 CmdSetVertexInputEXTFunc                                                       cmdSetVertexInputEXT;
 GetDeviceSubpassShadingMaxWorkgroupSizeHUAWEIFunc      getDeviceSubpassShadingMaxWorkgroupSizeHUAWEI;
 CmdSubpassShadingHUAWEIFunc                                                    cmdSubpassShadingHUAWEI;
 CmdBindInvocationMaskHUAWEIFunc                                                cmdBindInvocationMaskHUAWEI;
 GetMemoryRemoteAddressNVFunc                                           getMemoryRemoteAddressNV;
+GetPipelinePropertiesEXTFunc                                           getPipelinePropertiesEXT;
 CmdSetPatchControlPointsEXTFunc                                                cmdSetPatchControlPointsEXT;
 CmdSetLogicOpEXTFunc                                                           cmdSetLogicOpEXT;
 CmdSetColorWriteEnableEXTFunc                                          cmdSetColorWriteEnableEXT;
@@ -324,6 +327,10 @@ CmdDrawMultiIndexedEXTFunc                                                 cmdDrawMultiIndexedEXT;
 SetDeviceMemoryPriorityEXTFunc                                         setDeviceMemoryPriorityEXT;
 GetDescriptorSetLayoutHostMappingInfoVALVEFunc         getDescriptorSetLayoutHostMappingInfoVALVE;
 GetDescriptorSetHostMappingVALVEFunc                           getDescriptorSetHostMappingVALVE;
+GetShaderModuleIdentifierEXTFunc                                       getShaderModuleIdentifierEXT;
+GetShaderModuleCreateInfoIdentifierEXTFunc                     getShaderModuleCreateInfoIdentifierEXT;
+GetFramebufferTilePropertiesQCOMFunc                           getFramebufferTilePropertiesQCOM;
+GetDynamicRenderingTilePropertiesQCOMFunc                      getDynamicRenderingTilePropertiesQCOM;
 CreateAccelerationStructureKHRFunc                                     createAccelerationStructureKHR;
 DestroyAccelerationStructureKHRFunc                                    destroyAccelerationStructureKHR;
 CmdBuildAccelerationStructuresKHRFunc                          cmdBuildAccelerationStructuresKHR;
@@ -369,6 +376,7 @@ SetBufferCollectionImageConstraintsFUCHSIAFunc              setBufferCollectionImageConstrai
 SetBufferCollectionBufferConstraintsFUCHSIAFunc                setBufferCollectionBufferConstraintsFUCHSIA;
 DestroyBufferCollectionFUCHSIAFunc                                     destroyBufferCollectionFUCHSIA;
 GetBufferCollectionPropertiesFUCHSIAFunc                       getBufferCollectionPropertiesFUCHSIA;
+ExportMetalObjectsEXTFunc                                                      exportMetalObjectsEXT;
 GetMemoryWin32HandleKHRFunc                                                    getMemoryWin32HandleKHR;
 GetMemoryWin32HandlePropertiesKHRFunc                          getMemoryWin32HandlePropertiesKHR;
 ImportSemaphoreWin32HandleKHRFunc                                      importSemaphoreWin32HandleKHR;
index 9a40c0f..f35cdf3 100644 (file)
@@ -23,10 +23,12 @@ namespace vk
 #define VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME "VK_EXT_fragment_density_map"
 #define VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME "VK_EXT_fragment_density_map2"
 #define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME "VK_QCOM_fragment_density_map_offset"
+#define VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME "VK_KHR_fragment_shader_barycentric"
 #define VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME "VK_KHR_fragment_shading_rate"
 #define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME "VK_NV_fragment_shading_rate_enums"
 #define VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME "VK_EXT_graphics_pipeline_library"
 #define VK_KHR_PRESENT_ID_EXTENSION_NAME  "VK_KHR_present_id"
+#define VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME "VK_QCOM_image_processing"
 #define VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME "VK_EXT_inline_uniform_block"
 #define VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME "VK_EXT_line_rasterization"
 #define VK_KHR_MAINTENANCE_3_EXTENSION_NAME "VK_KHR_maintenance3"
@@ -36,6 +38,7 @@ namespace vk
 #define VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME "VK_NVX_multiview_per_view_attributes"
 #define VK_EXT_MULTI_DRAW_EXTENSION_NAME  "VK_EXT_multi_draw"
 #define VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME "VK_KHR_performance_query"
+#define VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME "VK_EXT_pipeline_robustness"
 #define VK_KHR_MAINTENANCE_2_EXTENSION_NAME "VK_KHR_maintenance2"
 #define VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME "VK_KHR_portability_subset"
 #define DECL_PROTECTED_MEMORY_EXTENSION_NAME "core_property"
@@ -49,6 +52,7 @@ namespace vk
 #define VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME "VK_AMD_shader_core_properties"
 #define VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME "VK_AMD_shader_core_properties2"
 #define VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME "VK_KHR_shader_integer_dot_product"
+#define VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME "VK_EXT_shader_module_identifier"
 #define VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME "VK_NV_shading_rate_image"
 #define DECL_SUBGROUP_EXTENSION_NAME "core_property"
 #define VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME "VK_EXT_subgroup_size_control"
@@ -231,7 +235,9 @@ template<> void initPropertyFromBlob<VkPhysicalDevicePushDescriptorPropertiesKHR
 template<> void initPropertyFromBlob<VkPhysicalDevicePerformanceQueryPropertiesKHR>(VkPhysicalDevicePerformanceQueryPropertiesKHR&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceFragmentShadingRatePropertiesKHR>(VkPhysicalDeviceFragmentShadingRatePropertiesKHR&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR>(VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceTransformFeedbackPropertiesEXT>(VkPhysicalDeviceTransformFeedbackPropertiesEXT&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDevicePipelineRobustnessPropertiesEXT>(VkPhysicalDevicePipelineRobustnessPropertiesEXT&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>(VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceDiscardRectanglePropertiesEXT>(VkPhysicalDeviceDiscardRectanglePropertiesEXT&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceConservativeRasterizationPropertiesEXT>(VkPhysicalDeviceConservativeRasterizationPropertiesEXT&, const AllPropertiesBlobs&) {}
@@ -259,55 +265,63 @@ template<> void initPropertyFromBlob<VkPhysicalDeviceFragmentShadingRateEnumsPro
 template<> void initPropertyFromBlob<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT>(VkPhysicalDeviceFragmentDensityMap2PropertiesEXT&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceDrmPropertiesEXT>(VkPhysicalDeviceDrmPropertiesEXT&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI>(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDevicePipelinePropertiesFeaturesEXT>(VkPhysicalDevicePipelinePropertiesFeaturesEXT&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceMultiDrawPropertiesEXT>(VkPhysicalDeviceMultiDrawPropertiesEXT&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>(VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDeviceImageProcessingPropertiesQCOM>(VkPhysicalDeviceImageProcessingPropertiesQCOM&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>(VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDeviceTilePropertiesFeaturesQCOM>(VkPhysicalDeviceTilePropertiesFeaturesQCOM&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceAccelerationStructurePropertiesKHR>(VkPhysicalDeviceAccelerationStructurePropertiesKHR&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDeviceRayTracingPipelinePropertiesKHR>(VkPhysicalDeviceRayTracingPipelinePropertiesKHR&, const AllPropertiesBlobs&) {}
 template<> void initPropertyFromBlob<VkPhysicalDevicePortabilitySubsetPropertiesKHR>(VkPhysicalDevicePortabilitySubsetPropertiesKHR&, const AllPropertiesBlobs&) {}
 
 
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceAccelerationStructurePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION, 50}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 49}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceConservativeRasterizationPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME, VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION, 48}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCooperativeMatrixPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 47}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCustomBorderColorPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION, 46}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDepthStencilResolveProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES, VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME, VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION, 45}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDescriptorIndexingProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 44}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 43}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDiscardRectanglePropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME, VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION, 42}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDriverProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES, VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME, VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION, 41}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDrmPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT, VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME, VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION, 40}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceExternalMemoryHostPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME, VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION, 39}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFloatControlsProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES, VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME, VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION, 38}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 37}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION, 36}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION, 35}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShadingRatePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION, 34}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION, 33}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION, 32}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceIDProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION, 31}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceInlineUniformBlockProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 30}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceLineRasterizationPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 29}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance3Properties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES, VK_KHR_MAINTENANCE_3_EXTENSION_NAME, VK_KHR_MAINTENANCE_3_SPEC_VERSION, 28}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance4Properties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES, VK_KHR_MAINTENANCE_4_EXTENSION_NAME, VK_KHR_MAINTENANCE_4_SPEC_VERSION, 27}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMeshShaderPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 26}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 25}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION, 24}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiDrawPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION, 23}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePerformanceQueryPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 22}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePointClippingProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES, VK_KHR_MAINTENANCE_2_EXTENSION_NAME, VK_KHR_MAINTENANCE_2_SPEC_VERSION, 21}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePortabilitySubsetPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION, 20}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProtectedMemoryProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 19}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProvokingVertexPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION, 18}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePushDescriptorPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION, 17}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV, VK_NV_RAY_TRACING_EXTENSION_NAME, VK_NV_RAY_TRACING_SPEC_VERSION, 16}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPipelinePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION, 15}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRobustness2PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION, 14}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSamplerFilterMinmaxProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES, VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME, VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION, 13}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSampleLocationsPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT, VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME, VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION, 12}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCorePropertiesAMD>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD, VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION, 11}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCoreProperties2AMD>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD, VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION, 10}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderIntegerDotProductProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION, 9}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceAccelerationStructurePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION, 54}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 53}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceConservativeRasterizationPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME, VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION, 52}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCooperativeMatrixPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 51}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCustomBorderColorPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION, 50}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDepthStencilResolveProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES, VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME, VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION, 49}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDescriptorIndexingProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 48}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 47}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDiscardRectanglePropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME, VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION, 46}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDriverProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES, VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME, VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION, 45}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDrmPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT, VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME, VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION, 44}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceExternalMemoryHostPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME, VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION, 43}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFloatControlsProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES, VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME, VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION, 42}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 41}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION, 40}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION, 39}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 38}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShadingRatePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION, 37}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION, 36}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION, 35}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceIDProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION, 34}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceImageProcessingPropertiesQCOM>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION, 33}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceInlineUniformBlockProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 32}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceLineRasterizationPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 31}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance3Properties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES, VK_KHR_MAINTENANCE_3_EXTENSION_NAME, VK_KHR_MAINTENANCE_3_SPEC_VERSION, 30}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance4Properties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES, VK_KHR_MAINTENANCE_4_EXTENSION_NAME, VK_KHR_MAINTENANCE_4_SPEC_VERSION, 29}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMeshShaderPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 28}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 27}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION, 26}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiDrawPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION, 25}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePerformanceQueryPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 24}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePipelineRobustnessPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT, VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION, 23}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePointClippingProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES, VK_KHR_MAINTENANCE_2_EXTENSION_NAME, VK_KHR_MAINTENANCE_2_SPEC_VERSION, 22}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePortabilitySubsetPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION, 21}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProtectedMemoryProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 20}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProvokingVertexPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION, 19}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePushDescriptorPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION, 18}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV, VK_NV_RAY_TRACING_EXTENSION_NAME, VK_NV_RAY_TRACING_SPEC_VERSION, 17}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPipelinePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION, 16}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRobustness2PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION, 15}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSamplerFilterMinmaxProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES, VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME, VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION, 14}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSampleLocationsPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT, VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME, VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION, 13}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCorePropertiesAMD>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD, VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION, 12}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCoreProperties2AMD>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD, VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION, 11}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderIntegerDotProductProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION, 10}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION, 9}; }
 template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShadingRateImagePropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION, 8}; }
 template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSubgroupProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES, DECL_SUBGROUP_EXTENSION_NAME, 0, 7}; }
 template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSubgroupSizeControlProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION, 6}; }
@@ -336,10 +350,12 @@ static const PropertyStructCreationData propertyStructCreationArray[] =
        { createPropertyStructWrapper<VkPhysicalDeviceFragmentDensityMapPropertiesEXT>, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT>, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION },
+       { createPropertyStructWrapper<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR>, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceFragmentShadingRatePropertiesKHR>, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV>, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceIDProperties>, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION },
+       { createPropertyStructWrapper<VkPhysicalDeviceImageProcessingPropertiesQCOM>, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceInlineUniformBlockProperties>, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceLineRasterizationPropertiesEXT>, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceMaintenance3Properties>, VK_KHR_MAINTENANCE_3_EXTENSION_NAME, VK_KHR_MAINTENANCE_3_SPEC_VERSION },
@@ -349,6 +365,7 @@ static const PropertyStructCreationData propertyStructCreationArray[] =
        { createPropertyStructWrapper<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceMultiDrawPropertiesEXT>, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDevicePerformanceQueryPropertiesKHR>, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION },
+       { createPropertyStructWrapper<VkPhysicalDevicePipelineRobustnessPropertiesEXT>, VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDevicePointClippingProperties>, VK_KHR_MAINTENANCE_2_EXTENSION_NAME, VK_KHR_MAINTENANCE_2_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDevicePortabilitySubsetPropertiesKHR>, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceProtectedMemoryProperties>, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0 },
@@ -362,6 +379,7 @@ static const PropertyStructCreationData propertyStructCreationArray[] =
        { createPropertyStructWrapper<VkPhysicalDeviceShaderCorePropertiesAMD>, VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceShaderCoreProperties2AMD>, VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceShaderIntegerDotProductProperties>, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION },
+       { createPropertyStructWrapper<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceShadingRateImagePropertiesNV>, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION },
        { createPropertyStructWrapper<VkPhysicalDeviceSubgroupProperties>, DECL_SUBGROUP_EXTENSION_NAME, 0 },
        { createPropertyStructWrapper<VkPhysicalDeviceSubgroupSizeControlProperties>, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION },
index 0bfe76d..153e4a3 100644 (file)
@@ -19,10 +19,12 @@ const vk::VkPhysicalDeviceFloatControlsProperties&                                  getFloatControlsPropertie
 const vk::VkPhysicalDeviceFragmentDensityMapPropertiesEXT&                     getFragmentDensityMapPropertiesEXT                      (void) const;
 const vk::VkPhysicalDeviceFragmentDensityMap2PropertiesEXT&                    getFragmentDensityMap2PropertiesEXT                     (void) const;
 const vk::VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM&      getFragmentDensityMapOffsetPropertiesQCOM       (void) const;
+const vk::VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR&      getFragmentShaderBarycentricProperties          (void) const;
 const vk::VkPhysicalDeviceFragmentShadingRatePropertiesKHR&                    getFragmentShadingRateProperties                        (void) const;
 const vk::VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV&                getFragmentShadingRateEnumsProperties           (void) const;
 const vk::VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT&                getGraphicsPipelineLibraryPropertiesEXT         (void) const;
 const vk::VkPhysicalDeviceIDProperties&                                                                getIDProperties                                                         (void) const;
+const vk::VkPhysicalDeviceImageProcessingPropertiesQCOM&                       getImageProcessingPropertiesQCOM                        (void) const;
 const vk::VkPhysicalDeviceInlineUniformBlockProperties&                                getInlineUniformBlockProperties                         (void) const;
 const vk::VkPhysicalDeviceLineRasterizationPropertiesEXT&                      getLineRasterizationPropertiesEXT                       (void) const;
 const vk::VkPhysicalDeviceMaintenance3Properties&                                      getMaintenance3Properties                                       (void) const;
@@ -32,6 +34,7 @@ const vk::VkPhysicalDeviceMultiviewProperties&                                                getMultiviewProperties
 const vk::VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX&     getMultiviewPerViewAttributesPropertiesX        (void) const;
 const vk::VkPhysicalDeviceMultiDrawPropertiesEXT&                                      getMultiDrawPropertiesEXT                                       (void) const;
 const vk::VkPhysicalDevicePerformanceQueryPropertiesKHR&                       getPerformanceQueryProperties                           (void) const;
+const vk::VkPhysicalDevicePipelineRobustnessPropertiesEXT&                     getPipelineRobustnessPropertiesEXT                      (void) const;
 const vk::VkPhysicalDevicePointClippingProperties&                                     getPointClippingProperties                                      (void) const;
 const vk::VkPhysicalDevicePortabilitySubsetPropertiesKHR&                      getPortabilitySubsetProperties                          (void) const;
 const vk::VkPhysicalDeviceProtectedMemoryProperties&                           getProtectedMemoryProperties                            (void) const;
@@ -45,6 +48,7 @@ const vk::VkPhysicalDeviceSampleLocationsPropertiesEXT&                               getSampleLocationsPro
 const vk::VkPhysicalDeviceShaderCorePropertiesAMD&                                     getShaderCorePropertiesAMD                                      (void) const;
 const vk::VkPhysicalDeviceShaderCoreProperties2AMD&                                    getShaderCoreProperties2AMD                                     (void) const;
 const vk::VkPhysicalDeviceShaderIntegerDotProductProperties&           getShaderIntegerDotProductProperties            (void) const;
+const vk::VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT&         getShaderModuleIdentifierPropertiesEXT          (void) const;
 const vk::VkPhysicalDeviceShadingRateImagePropertiesNV&                                getShadingRateImageProperties                           (void) const;
 const vk::VkPhysicalDeviceSubgroupProperties&                                          getSubgroupProperties                                           (void) const;
 const vk::VkPhysicalDeviceSubgroupSizeControlProperties&                       getSubgroupSizeControlProperties                        (void) const;
index 6529437..c5a69d8 100644 (file)
@@ -19,10 +19,12 @@ const vk::VkPhysicalDeviceFloatControlsProperties&                                  Context::getFloatControls
 const vk::VkPhysicalDeviceFragmentDensityMapPropertiesEXT&                     Context::getFragmentDensityMapPropertiesEXT                     (void) const { return m_device->getFragmentDensityMapPropertiesEXT();                   }
 const vk::VkPhysicalDeviceFragmentDensityMap2PropertiesEXT&                    Context::getFragmentDensityMap2PropertiesEXT            (void) const { return m_device->getFragmentDensityMap2PropertiesEXT();                  }
 const vk::VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM&      Context::getFragmentDensityMapOffsetPropertiesQCOM      (void) const { return m_device->getFragmentDensityMapOffsetPropertiesQCOM();    }
+const vk::VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR&      Context::getFragmentShaderBarycentricProperties         (void) const { return m_device->getFragmentShaderBarycentricProperties();               }
 const vk::VkPhysicalDeviceFragmentShadingRatePropertiesKHR&                    Context::getFragmentShadingRateProperties                       (void) const { return m_device->getFragmentShadingRateProperties();                             }
 const vk::VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV&                Context::getFragmentShadingRateEnumsProperties          (void) const { return m_device->getFragmentShadingRateEnumsProperties();                }
 const vk::VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT&                Context::getGraphicsPipelineLibraryPropertiesEXT        (void) const { return m_device->getGraphicsPipelineLibraryPropertiesEXT();              }
 const vk::VkPhysicalDeviceIDProperties&                                                                Context::getIDProperties                                                        (void) const { return m_device->getIDProperties();                                                              }
+const vk::VkPhysicalDeviceImageProcessingPropertiesQCOM&                       Context::getImageProcessingPropertiesQCOM                       (void) const { return m_device->getImageProcessingPropertiesQCOM();                             }
 const vk::VkPhysicalDeviceInlineUniformBlockProperties&                                Context::getInlineUniformBlockProperties                        (void) const { return m_device->getInlineUniformBlockProperties();                              }
 const vk::VkPhysicalDeviceLineRasterizationPropertiesEXT&                      Context::getLineRasterizationPropertiesEXT                      (void) const { return m_device->getLineRasterizationPropertiesEXT();                    }
 const vk::VkPhysicalDeviceMaintenance3Properties&                                      Context::getMaintenance3Properties                                      (void) const { return m_device->getMaintenance3Properties();                                    }
@@ -32,6 +34,7 @@ const vk::VkPhysicalDeviceMultiviewProperties&                                                Context::getMultiviewPropert
 const vk::VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX&     Context::getMultiviewPerViewAttributesPropertiesX       (void) const { return m_device->getMultiviewPerViewAttributesPropertiesX();             }
 const vk::VkPhysicalDeviceMultiDrawPropertiesEXT&                                      Context::getMultiDrawPropertiesEXT                                      (void) const { return m_device->getMultiDrawPropertiesEXT();                                    }
 const vk::VkPhysicalDevicePerformanceQueryPropertiesKHR&                       Context::getPerformanceQueryProperties                          (void) const { return m_device->getPerformanceQueryProperties();                                }
+const vk::VkPhysicalDevicePipelineRobustnessPropertiesEXT&                     Context::getPipelineRobustnessPropertiesEXT                     (void) const { return m_device->getPipelineRobustnessPropertiesEXT();                   }
 const vk::VkPhysicalDevicePointClippingProperties&                                     Context::getPointClippingProperties                                     (void) const { return m_device->getPointClippingProperties();                                   }
 const vk::VkPhysicalDevicePortabilitySubsetPropertiesKHR&                      Context::getPortabilitySubsetProperties                         (void) const { return m_device->getPortabilitySubsetProperties();                               }
 const vk::VkPhysicalDeviceProtectedMemoryProperties&                           Context::getProtectedMemoryProperties                           (void) const { return m_device->getProtectedMemoryProperties();                                 }
@@ -45,6 +48,7 @@ const vk::VkPhysicalDeviceSampleLocationsPropertiesEXT&                               Context::getSampleLoc
 const vk::VkPhysicalDeviceShaderCorePropertiesAMD&                                     Context::getShaderCorePropertiesAMD                                     (void) const { return m_device->getShaderCorePropertiesAMD();                                   }
 const vk::VkPhysicalDeviceShaderCoreProperties2AMD&                                    Context::getShaderCoreProperties2AMD                            (void) const { return m_device->getShaderCoreProperties2AMD();                                  }
 const vk::VkPhysicalDeviceShaderIntegerDotProductProperties&           Context::getShaderIntegerDotProductProperties           (void) const { return m_device->getShaderIntegerDotProductProperties();                 }
+const vk::VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT&         Context::getShaderModuleIdentifierPropertiesEXT         (void) const { return m_device->getShaderModuleIdentifierPropertiesEXT();               }
 const vk::VkPhysicalDeviceShadingRateImagePropertiesNV&                                Context::getShadingRateImageProperties                          (void) const { return m_device->getShadingRateImageProperties();                                }
 const vk::VkPhysicalDeviceSubgroupProperties&                                          Context::getSubgroupProperties                                          (void) const { return m_device->getSubgroupProperties();                                                }
 const vk::VkPhysicalDeviceSubgroupSizeControlProperties&                       Context::getSubgroupSizeControlProperties                       (void) const { return m_device->getSubgroupSizeControlProperties();                             }
index 3924900..3fc64b9 100644 (file)
@@ -19,10 +19,12 @@ const VkPhysicalDeviceFloatControlsProperties&                                      getFloatControlsProperties
 const VkPhysicalDeviceFragmentDensityMapPropertiesEXT&                 getFragmentDensityMapPropertiesEXT                      (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceFragmentDensityMapPropertiesEXT>();                    }
 const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT&                        getFragmentDensityMap2PropertiesEXT                     (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT>();                   }
 const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM&  getFragmentDensityMapOffsetPropertiesQCOM       (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>();             }
+const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR&  getFragmentShaderBarycentricProperties          (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR>();             }
 const VkPhysicalDeviceFragmentShadingRatePropertiesKHR&                        getFragmentShadingRateProperties                        (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceFragmentShadingRatePropertiesKHR>();                   }
 const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV&            getFragmentShadingRateEnumsProperties           (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV>();               }
 const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT&            getGraphicsPipelineLibraryPropertiesEXT         (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>();               }
 const VkPhysicalDeviceIDProperties&                                                            getIDProperties                                                         (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceIDProperties>();                                                               }
+const VkPhysicalDeviceImageProcessingPropertiesQCOM&                   getImageProcessingPropertiesQCOM                        (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceImageProcessingPropertiesQCOM>();                              }
 const VkPhysicalDeviceInlineUniformBlockProperties&                            getInlineUniformBlockProperties                         (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceInlineUniformBlockProperties>();                               }
 const VkPhysicalDeviceLineRasterizationPropertiesEXT&                  getLineRasterizationPropertiesEXT                       (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceLineRasterizationPropertiesEXT>();                             }
 const VkPhysicalDeviceMaintenance3Properties&                                  getMaintenance3Properties                                       (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceMaintenance3Properties>();                                             }
@@ -32,6 +34,7 @@ const VkPhysicalDeviceMultiviewProperties&                                            getMultiviewProperties                                          (voi
 const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX& getMultiviewPerViewAttributesPropertiesX        (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>();    }
 const VkPhysicalDeviceMultiDrawPropertiesEXT&                                  getMultiDrawPropertiesEXT                                       (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceMultiDrawPropertiesEXT>();                                             }
 const VkPhysicalDevicePerformanceQueryPropertiesKHR&                   getPerformanceQueryProperties                           (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDevicePerformanceQueryPropertiesKHR>();                              }
+const VkPhysicalDevicePipelineRobustnessPropertiesEXT&                 getPipelineRobustnessPropertiesEXT                      (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDevicePipelineRobustnessPropertiesEXT>();                    }
 const VkPhysicalDevicePointClippingProperties&                                 getPointClippingProperties                                      (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDevicePointClippingProperties>();                                    }
 const VkPhysicalDevicePortabilitySubsetPropertiesKHR&                  getPortabilitySubsetProperties                          (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDevicePortabilitySubsetPropertiesKHR>();                             }
 const VkPhysicalDeviceProtectedMemoryProperties&                               getProtectedMemoryProperties                            (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceProtectedMemoryProperties>();                                  }
@@ -45,6 +48,7 @@ const VkPhysicalDeviceSampleLocationsPropertiesEXT&                           getSampleLocationsPropert
 const VkPhysicalDeviceShaderCorePropertiesAMD&                                 getShaderCorePropertiesAMD                                      (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceShaderCorePropertiesAMD>();                                    }
 const VkPhysicalDeviceShaderCoreProperties2AMD&                                        getShaderCoreProperties2AMD                                     (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceShaderCoreProperties2AMD>();                                   }
 const VkPhysicalDeviceShaderIntegerDotProductProperties&               getShaderIntegerDotProductProperties            (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceShaderIntegerDotProductProperties>();                  }
+const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT&             getShaderModuleIdentifierPropertiesEXT          (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>();                }
 const VkPhysicalDeviceShadingRateImagePropertiesNV&                            getShadingRateImageProperties                           (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceShadingRateImagePropertiesNV>();                               }
 const VkPhysicalDeviceSubgroupProperties&                                              getSubgroupProperties                                           (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceSubgroupProperties>();                                                 }
 const VkPhysicalDeviceSubgroupSizeControlProperties&                   getSubgroupSizeControlProperties                        (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceSubgroupSizeControlProperties>();                              }
index 62bf322..5cee464 100644 (file)
@@ -316,6 +316,10 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_KHR_fragment_shader_barycentric")
+       {
+               return;
+       }
        if (extName == "VK_KHR_shader_subgroup_uniform_control_flow")
        {
                return;
@@ -336,6 +340,10 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_KHR_ray_tracing_maintenance1")
+       {
+               return;
+       }
        if (extName == "VK_KHR_portability_enumeration")
        {
                return;
@@ -464,6 +472,10 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_EXT_pipeline_robustness")
+       {
+               return;
+       }
        if (extName == "VK_EXT_conditional_rendering")
        {
                return;
@@ -889,6 +901,10 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_AMD_shader_early_and_late_fragment_tests")
+       {
+               return;
+       }
        if (extName == "VK_NV_fragment_shading_rate_enums")
        {
                return;
@@ -913,6 +929,14 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_EXT_image_compression_control")
+       {
+               return;
+       }
+       if (extName == "VK_EXT_attachment_feedback_loop_layout")
+       {
+               return;
+       }
        if (extName == "VK_EXT_4444_formats")
        {
                return;
@@ -963,6 +987,14 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_EXT_pipeline_properties")
+       {
+               return;
+       }
+       if (extName == "VK_EXT_multisampled_render_to_single_sampled")
+       {
+               return;
+       }
        if (extName == "VK_EXT_extended_dynamic_state2")
        {
                return;
@@ -1007,6 +1039,10 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_EXT_non_seamless_cube_map")
+       {
+               return;
+       }
        if (extName == "VK_QCOM_fragment_density_map_offset")
        {
                return;
@@ -1019,6 +1055,30 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_EXT_image_compression_control_swapchain")
+       {
+               return;
+       }
+       if (extName == "VK_QCOM_image_processing")
+       {
+               return;
+       }
+       if (extName == "VK_EXT_subpass_merge_feedback")
+       {
+               return;
+       }
+       if (extName == "VK_EXT_shader_module_identifier")
+       {
+               return;
+       }
+       if (extName == "VK_QCOM_tile_properties")
+       {
+               return;
+       }
+       if (extName == "VK_SEC_amigo_profiling")
+       {
+               return;
+       }
        if (extName == "VK_KHR_acceleration_structure")
        {
                return;
@@ -1115,6 +1175,10 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
                functions.push_back("vkCreateMetalSurfaceEXT");
                return;
        }
+       if (extName == "VK_EXT_metal_objects")
+       {
+               return;
+       }
        if (extName == "VK_NN_vi_surface")
        {
                functions.push_back("vkCreateViSurfaceNN");
@@ -1528,6 +1592,10 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
                functions.push_back("vkQueueSubmit2KHR");
                return;
        }
+       if (extName == "VK_KHR_fragment_shader_barycentric")
+       {
+               return;
+       }
        if (extName == "VK_KHR_shader_subgroup_uniform_control_flow")
        {
                return;
@@ -1554,6 +1622,11 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        {
                return;
        }
+       if (extName == "VK_KHR_ray_tracing_maintenance1")
+       {
+               functions.push_back("vkCmdTraceRaysIndirect2KHR");
+               return;
+       }
        if (extName == "VK_KHR_portability_enumeration")
        {
                return;
@@ -1702,6 +1775,10 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        {
                return;
        }
+       if (extName == "VK_EXT_pipeline_robustness")
+       {
+               return;
+       }
        if (extName == "VK_EXT_conditional_rendering")
        {
                functions.push_back("vkCmdBeginConditionalRenderingEXT");
@@ -2198,6 +2275,10 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        {
                return;
        }
+       if (extName == "VK_AMD_shader_early_and_late_fragment_tests")
+       {
+               return;
+       }
        if (extName == "VK_NV_fragment_shading_rate_enums")
        {
                functions.push_back("vkCmdSetFragmentShadingRateEnumNV");
@@ -2223,6 +2304,15 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        {
                return;
        }
+       if (extName == "VK_EXT_image_compression_control")
+       {
+               functions.push_back("vkGetImageSubresourceLayout2EXT");
+               return;
+       }
+       if (extName == "VK_EXT_attachment_feedback_loop_layout")
+       {
+               return;
+       }
        if (extName == "VK_EXT_4444_formats")
        {
                return;
@@ -2276,6 +2366,15 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
                functions.push_back("vkGetMemoryRemoteAddressNV");
                return;
        }
+       if (extName == "VK_EXT_pipeline_properties")
+       {
+               functions.push_back("vkGetPipelinePropertiesEXT");
+               return;
+       }
+       if (extName == "VK_EXT_multisampled_render_to_single_sampled")
+       {
+               return;
+       }
        if (extName == "VK_EXT_extended_dynamic_state2")
        {
                functions.push_back("vkCmdSetPatchControlPointsEXT");
@@ -2331,6 +2430,10 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
                functions.push_back("vkGetDescriptorSetHostMappingVALVE");
                return;
        }
+       if (extName == "VK_EXT_non_seamless_cube_map")
+       {
+               return;
+       }
        if (extName == "VK_QCOM_fragment_density_map_offset")
        {
                return;
@@ -2343,6 +2446,34 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        {
                return;
        }
+       if (extName == "VK_EXT_image_compression_control_swapchain")
+       {
+               return;
+       }
+       if (extName == "VK_QCOM_image_processing")
+       {
+               return;
+       }
+       if (extName == "VK_EXT_subpass_merge_feedback")
+       {
+               return;
+       }
+       if (extName == "VK_EXT_shader_module_identifier")
+       {
+               functions.push_back("vkGetShaderModuleIdentifierEXT");
+               functions.push_back("vkGetShaderModuleCreateInfoIdentifierEXT");
+               return;
+       }
+       if (extName == "VK_QCOM_tile_properties")
+       {
+               functions.push_back("vkGetFramebufferTilePropertiesQCOM");
+               functions.push_back("vkGetDynamicRenderingTilePropertiesQCOM");
+               return;
+       }
+       if (extName == "VK_SEC_amigo_profiling")
+       {
+               return;
+       }
        if (extName == "VK_KHR_acceleration_structure")
        {
                functions.push_back("vkCreateAccelerationStructureKHR");
@@ -2476,6 +2607,11 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        {
                return;
        }
+       if (extName == "VK_EXT_metal_objects")
+       {
+               functions.push_back("vkExportMetalObjectsEXT");
+               return;
+       }
        if (extName == "VK_NN_vi_surface")
        {
                return;
@@ -2607,6 +2743,7 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        "VK_KHR_pipeline_executable_properties",
        "VK_KHR_synchronization2",
        "VK_KHR_copy_commands2",
+       "VK_KHR_ray_tracing_maintenance1",
        "VK_KHR_maintenance4",
        "VK_EXT_debug_marker",
        "VK_EXT_transform_feedback",
@@ -2640,15 +2777,19 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        "VK_NV_device_generated_commands",
        "VK_EXT_private_data",
        "VK_NV_fragment_shading_rate_enums",
+       "VK_EXT_image_compression_control",
        "VK_EXT_vertex_input_dynamic_state",
        "VK_HUAWEI_subpass_shading",
        "VK_HUAWEI_invocation_mask",
        "VK_NV_external_memory_rdma",
+       "VK_EXT_pipeline_properties",
        "VK_EXT_extended_dynamic_state2",
        "VK_EXT_color_write_enable",
        "VK_EXT_multi_draw",
        "VK_EXT_pageable_device_local_memory",
        "VK_VALVE_descriptor_set_host_mapping",
+       "VK_EXT_shader_module_identifier",
+       "VK_QCOM_tile_properties",
        "VK_KHR_acceleration_structure",
        "VK_KHR_ray_tracing_pipeline",
        "VK_ANDROID_external_memory_android_hardware_buffer",
@@ -2657,6 +2798,7 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
        "VK_FUCHSIA_external_memory",
        "VK_FUCHSIA_external_semaphore",
        "VK_FUCHSIA_buffer_collection",
+       "VK_EXT_metal_objects",
        "VK_KHR_external_memory_win32",
        "VK_KHR_external_semaphore_win32",
        "VK_KHR_external_fence_win32",
index cac9da0..455aa89 100644 (file)
@@ -324,6 +324,7 @@ typedef VKAPI_ATTR void                                     (VKAPI_CALL* CmdCopyBufferToImage2KHRFunc)
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdCopyImageToBuffer2KHRFunc)                                                                                      (VkCommandBuffer commandBuffer, const VkCopyImageToBufferInfo2* pCopyImageToBufferInfo);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdBlitImage2KHRFunc)                                                                                                      (VkCommandBuffer commandBuffer, const VkBlitImageInfo2* pBlitImageInfo);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdResolveImage2KHRFunc)                                                                                           (VkCommandBuffer commandBuffer, const VkResolveImageInfo2* pResolveImageInfo);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdTraceRaysIndirect2KHRFunc)                                                                                      (VkCommandBuffer commandBuffer, VkDeviceAddress indirectDeviceAddress);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetDeviceBufferMemoryRequirementsKHRFunc)                                                          (VkDevice device, const VkDeviceBufferMemoryRequirements* pInfo, VkMemoryRequirements2* pMemoryRequirements);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetDeviceImageMemoryRequirementsKHRFunc)                                                           (VkDevice device, const VkDeviceImageMemoryRequirements* pInfo, VkMemoryRequirements2* pMemoryRequirements);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetDeviceImageSparseMemoryRequirementsKHRFunc)                                                     (VkDevice device, const VkDeviceImageMemoryRequirements* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
@@ -451,6 +452,7 @@ typedef VKAPI_ATTR void                                     (VKAPI_CALL* DestroyPrivateDataSlotEXTFunc)
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* SetPrivateDataEXTFunc)                                                                                                     (VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetPrivateDataEXTFunc)                                                                                                     (VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t* pData);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSetFragmentShadingRateEnumNVFunc)                                                                       (VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetImageSubresourceLayout2EXTFunc)                                                                         (VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* AcquireWinrtDisplayNVFunc)                                                                                         (VkPhysicalDevice physicalDevice, VkDisplayKHR display);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetWinrtDisplayNVFunc)                                                                                                     (VkPhysicalDevice physicalDevice, uint32_t deviceRelativeId, VkDisplayKHR* pDisplay);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSetVertexInputEXTFunc)                                                                                          (VkCommandBuffer commandBuffer, uint32_t vertexBindingDescriptionCount, const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions, uint32_t vertexAttributeDescriptionCount, const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions);
@@ -458,6 +460,7 @@ typedef VKAPI_ATTR VkResult                         (VKAPI_CALL* GetDeviceSubpassShadingMaxWorkgroupS
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSubpassShadingHUAWEIFunc)                                                                                       (VkCommandBuffer commandBuffer);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdBindInvocationMaskHUAWEIFunc)                                                                           (VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetMemoryRemoteAddressNVFunc)                                                                                      (VkDevice device, const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo, VkRemoteAddressNV* pAddress);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetPipelinePropertiesEXTFunc)                                                                                      (VkDevice device, const VkPipelineInfoEXT* pPipelineInfo, VkBaseOutStructure* pPipelineProperties);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSetPatchControlPointsEXTFunc)                                                                           (VkCommandBuffer commandBuffer, uint32_t patchControlPoints);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSetRasterizerDiscardEnableEXTFunc)                                                                      (VkCommandBuffer commandBuffer, VkBool32 rasterizerDiscardEnable);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdSetDepthBiasEnableEXTFunc)                                                                                      (VkCommandBuffer commandBuffer, VkBool32 depthBiasEnable);
@@ -469,6 +472,10 @@ typedef VKAPI_ATTR void                                    (VKAPI_CALL* CmdDrawMultiIndexedEXTFunc)                                                                                        (
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* SetDeviceMemoryPriorityEXTFunc)                                                                            (VkDevice device, VkDeviceMemory memory, float priority);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetDescriptorSetLayoutHostMappingInfoVALVEFunc)                                            (VkDevice device, const VkDescriptorSetBindingReferenceVALVE* pBindingReference, VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetDescriptorSetHostMappingVALVEFunc)                                                                      (VkDevice device, VkDescriptorSet descriptorSet, void** ppData);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetShaderModuleIdentifierEXTFunc)                                                                          (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* GetShaderModuleCreateInfoIdentifierEXTFunc)                                                        (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetFramebufferTilePropertiesQCOMFunc)                                                                      (VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties);
+typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* GetDynamicRenderingTilePropertiesQCOMFunc)                                                         (VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateAccelerationStructureKHRFunc)                                                                        (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* DestroyAccelerationStructureKHRFunc)                                                                       (VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator);
 typedef VKAPI_ATTR void                                        (VKAPI_CALL* CmdBuildAccelerationStructuresKHRFunc)                                                                     (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos);
@@ -522,6 +529,7 @@ typedef VKAPI_ATTR VkResult                         (VKAPI_CALL* CreateStreamDescriptorSurfaceGGPFunc
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateIOSSurfaceMVKFunc)                                                                                           (VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateMacOSSurfaceMVKFunc)                                                                                         (VkInstance instance, const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateMetalSurfaceEXTFunc)                                                                                         (VkInstance instance, const VkMetalSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
+typedef VKAPI_ATTR void                                        (VKAPI_CALL* ExportMetalObjectsEXTFunc)                                                                                         (VkDevice device, VkExportMetalObjectsInfoEXT* pMetalObjectsInfo);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateViSurfaceNNFunc)                                                                                                     (VkInstance instance, const VkViSurfaceCreateInfoNN* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 typedef VKAPI_ATTR VkResult                            (VKAPI_CALL* CreateWaylandSurfaceKHRFunc)                                                                                       (VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 typedef VKAPI_ATTR VkBool32                            (VKAPI_CALL* GetPhysicalDeviceWaylandPresentationSupportKHRFunc)                                        (VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, pt::WaylandDisplayPtr display);
index 58117fd..cd3d294 100644 (file)
@@ -1383,6 +1383,16 @@ template<> VkStructureType getStructureType<VkCheckpointData2NV> (void)
        return VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV;
 }
 
+template<> VkStructureType getStructureType<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR;
+}
+
 template<> VkStructureType getStructureType<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR> (void)
 {
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR;
@@ -1393,6 +1403,11 @@ template<> VkStructureType getStructureType<VkPhysicalDeviceWorkgroupMemoryExpli
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR;
 }
 
+template<> VkStructureType getStructureType<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR;
+}
+
 template<> VkStructureType getStructureType<VkDebugReportCallbackCreateInfoEXT> (void)
 {
        return VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT;
@@ -1508,6 +1523,21 @@ template<> VkStructureType getStructureType<VkPhysicalDeviceASTCDecodeFeaturesEX
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT;
 }
 
+template<> VkStructureType getStructureType<VkPhysicalDevicePipelineRobustnessFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDevicePipelineRobustnessPropertiesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPipelineRobustnessCreateInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT;
+}
+
 template<> VkStructureType getStructureType<VkConditionalRenderingBeginInfoEXT> (void)
 {
        return VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT;
@@ -1888,11 +1918,6 @@ template<> VkStructureType getStructureType<VkPhysicalDeviceMeshShaderProperties
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV;
 }
 
-template<> VkStructureType getStructureType<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV> (void)
-{
-       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV;
-}
-
 template<> VkStructureType getStructureType<VkPhysicalDeviceShaderImageFootprintFeaturesNV> (void)
 {
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV;
@@ -2258,6 +2283,11 @@ template<> VkStructureType getStructureType<VkGraphicsPipelineLibraryCreateInfoE
        return VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT;
 }
 
+template<> VkStructureType getStructureType<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD;
+}
+
 template<> VkStructureType getStructureType<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV> (void)
 {
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV;
@@ -2308,6 +2338,36 @@ template<> VkStructureType getStructureType<VkCopyCommandTransformInfoQCOM> (voi
        return VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM;
 }
 
+template<> VkStructureType getStructureType<VkPhysicalDeviceImageCompressionControlFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkImageCompressionControlEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT;
+}
+
+template<> VkStructureType getStructureType<VkSubresourceLayout2EXT> (void)
+{
+       return VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT;
+}
+
+template<> VkStructureType getStructureType<VkImageSubresource2EXT> (void)
+{
+       return VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT;
+}
+
+template<> VkStructureType getStructureType<VkImageCompressionPropertiesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT;
+}
+
 template<> VkStructureType getStructureType<VkPhysicalDevice4444FormatsFeaturesEXT> (void)
 {
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT;
@@ -2398,6 +2458,31 @@ template<> VkStructureType getStructureType<VkPhysicalDeviceExternalMemoryRDMAFe
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV;
 }
 
+template<> VkStructureType getStructureType<VkPipelinePropertiesIdentifierEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDevicePipelinePropertiesFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkSubpassResolvePerformanceQueryEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT;
+}
+
+template<> VkStructureType getStructureType<VkMultisampledRenderToSingleSampledInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT;
+}
+
 template<> VkStructureType getStructureType<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT> (void)
 {
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT;
@@ -2473,6 +2558,11 @@ template<> VkStructureType getStructureType<VkDescriptorSetLayoutHostMappingInfo
        return VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE;
 }
 
+template<> VkStructureType getStructureType<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT;
+}
+
 template<> VkStructureType getStructureType<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM> (void)
 {
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM;
@@ -2493,6 +2583,86 @@ template<> VkStructureType getStructureType<VkPhysicalDeviceLinearColorAttachmen
        return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV;
 }
 
+template<> VkStructureType getStructureType<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkImageViewSampleWeightCreateInfoQCOM> (void)
+{
+       return VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceImageProcessingFeaturesQCOM> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceImageProcessingPropertiesQCOM> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkRenderPassCreationControlEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT;
+}
+
+template<> VkStructureType getStructureType<VkRenderPassCreationFeedbackCreateInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkRenderPassSubpassFeedbackCreateInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPipelineShaderStageModuleIdentifierCreateInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkShaderModuleIdentifierEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceTilePropertiesFeaturesQCOM> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM;
+}
+
+template<> VkStructureType getStructureType<VkTilePropertiesQCOM> (void)
+{
+       return VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceAmigoProfilingFeaturesSEC> (void)
+{
+       return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC;
+}
+
+template<> VkStructureType getStructureType<VkAmigoProfilingSubmitInfoSEC> (void)
+{
+       return VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC;
+}
+
 template<> VkStructureType getStructureType<VkAccelerationStructureGeometryTrianglesDataKHR> (void)
 {
        return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR;
@@ -3043,6 +3213,66 @@ template<> VkStructureType getStructureType<VkMetalSurfaceCreateInfoEXT> (void)
        return VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT;
 }
 
+template<> VkStructureType getStructureType<VkExportMetalObjectCreateInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkExportMetalObjectsInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkExportMetalDeviceInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkExportMetalCommandQueueInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkExportMetalBufferInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkImportMetalBufferInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkExportMetalTextureInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkImportMetalTextureInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkExportMetalIOSurfaceInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkImportMetalIOSurfaceInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkExportMetalSharedEventInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkImportMetalSharedEventInfoEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT;
+}
+
 template<> VkStructureType getStructureType<VkViSurfaceCreateInfoNN> (void)
 {
        return VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN;
index 70cf9f8..9962634 100644 (file)
@@ -349,6 +349,7 @@ m_vk.getPipelineExecutableStatisticsKHR                                     = (GetPipelineExecutableStatisticsKH
 m_vk.getPipelineExecutableInternalRepresentationsKHR   = (GetPipelineExecutableInternalRepresentationsKHRFunc) GET_PROC_ADDR("vkGetPipelineExecutableInternalRepresentationsKHR");
 m_vk.cmdWriteBufferMarker2AMD                                                  = (CmdWriteBufferMarker2AMDFunc)                                                GET_PROC_ADDR("vkCmdWriteBufferMarker2AMD");
 m_vk.getQueueCheckpointData2NV                                                 = (GetQueueCheckpointData2NVFunc)                                               GET_PROC_ADDR("vkGetQueueCheckpointData2NV");
+m_vk.cmdTraceRaysIndirect2KHR                                                  = (CmdTraceRaysIndirect2KHRFunc)                                                GET_PROC_ADDR("vkCmdTraceRaysIndirect2KHR");
 m_vk.debugMarkerSetObjectTagEXT                                                        = (DebugMarkerSetObjectTagEXTFunc)                                              GET_PROC_ADDR("vkDebugMarkerSetObjectTagEXT");
 m_vk.debugMarkerSetObjectNameEXT                                               = (DebugMarkerSetObjectNameEXTFunc)                                             GET_PROC_ADDR("vkDebugMarkerSetObjectNameEXT");
 m_vk.cmdDebugMarkerBeginEXT                                                            = (CmdDebugMarkerBeginEXTFunc)                                                  GET_PROC_ADDR("vkCmdDebugMarkerBeginEXT");
@@ -439,11 +440,13 @@ m_vk.cmdBindPipelineShaderGroupNV                                         = (CmdBindPipelineShaderGroupNVFunc)
 m_vk.createIndirectCommandsLayoutNV                                            = (CreateIndirectCommandsLayoutNVFunc)                                  GET_PROC_ADDR("vkCreateIndirectCommandsLayoutNV");
 m_vk.destroyIndirectCommandsLayoutNV                                   = (DestroyIndirectCommandsLayoutNVFunc)                                 GET_PROC_ADDR("vkDestroyIndirectCommandsLayoutNV");
 m_vk.cmdSetFragmentShadingRateEnumNV                                   = (CmdSetFragmentShadingRateEnumNVFunc)                                 GET_PROC_ADDR("vkCmdSetFragmentShadingRateEnumNV");
+m_vk.getImageSubresourceLayout2EXT                                             = (GetImageSubresourceLayout2EXTFunc)                                   GET_PROC_ADDR("vkGetImageSubresourceLayout2EXT");
 m_vk.cmdSetVertexInputEXT                                                              = (CmdSetVertexInputEXTFunc)                                                    GET_PROC_ADDR("vkCmdSetVertexInputEXT");
 m_vk.getDeviceSubpassShadingMaxWorkgroupSizeHUAWEI             = (GetDeviceSubpassShadingMaxWorkgroupSizeHUAWEIFunc)   GET_PROC_ADDR("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI");
 m_vk.cmdSubpassShadingHUAWEI                                                   = (CmdSubpassShadingHUAWEIFunc)                                                 GET_PROC_ADDR("vkCmdSubpassShadingHUAWEI");
 m_vk.cmdBindInvocationMaskHUAWEI                                               = (CmdBindInvocationMaskHUAWEIFunc)                                             GET_PROC_ADDR("vkCmdBindInvocationMaskHUAWEI");
 m_vk.getMemoryRemoteAddressNV                                                  = (GetMemoryRemoteAddressNVFunc)                                                GET_PROC_ADDR("vkGetMemoryRemoteAddressNV");
+m_vk.getPipelinePropertiesEXT                                                  = (GetPipelinePropertiesEXTFunc)                                                GET_PROC_ADDR("vkGetPipelinePropertiesEXT");
 m_vk.cmdSetPatchControlPointsEXT                                               = (CmdSetPatchControlPointsEXTFunc)                                             GET_PROC_ADDR("vkCmdSetPatchControlPointsEXT");
 m_vk.cmdSetLogicOpEXT                                                                  = (CmdSetLogicOpEXTFunc)                                                                GET_PROC_ADDR("vkCmdSetLogicOpEXT");
 m_vk.cmdSetColorWriteEnableEXT                                                 = (CmdSetColorWriteEnableEXTFunc)                                               GET_PROC_ADDR("vkCmdSetColorWriteEnableEXT");
@@ -452,6 +455,10 @@ m_vk.cmdDrawMultiIndexedEXT                                                                = (CmdDrawMultiIndexedEXTFunc)                                                  GET_PROC
 m_vk.setDeviceMemoryPriorityEXT                                                        = (SetDeviceMemoryPriorityEXTFunc)                                              GET_PROC_ADDR("vkSetDeviceMemoryPriorityEXT");
 m_vk.getDescriptorSetLayoutHostMappingInfoVALVE                        = (GetDescriptorSetLayoutHostMappingInfoVALVEFunc)              GET_PROC_ADDR("vkGetDescriptorSetLayoutHostMappingInfoVALVE");
 m_vk.getDescriptorSetHostMappingVALVE                                  = (GetDescriptorSetHostMappingVALVEFunc)                                GET_PROC_ADDR("vkGetDescriptorSetHostMappingVALVE");
+m_vk.getShaderModuleIdentifierEXT                                              = (GetShaderModuleIdentifierEXTFunc)                                    GET_PROC_ADDR("vkGetShaderModuleIdentifierEXT");
+m_vk.getShaderModuleCreateInfoIdentifierEXT                            = (GetShaderModuleCreateInfoIdentifierEXTFunc)                  GET_PROC_ADDR("vkGetShaderModuleCreateInfoIdentifierEXT");
+m_vk.getFramebufferTilePropertiesQCOM                                  = (GetFramebufferTilePropertiesQCOMFunc)                                GET_PROC_ADDR("vkGetFramebufferTilePropertiesQCOM");
+m_vk.getDynamicRenderingTilePropertiesQCOM                             = (GetDynamicRenderingTilePropertiesQCOMFunc)                   GET_PROC_ADDR("vkGetDynamicRenderingTilePropertiesQCOM");
 m_vk.createAccelerationStructureKHR                                            = (CreateAccelerationStructureKHRFunc)                                  GET_PROC_ADDR("vkCreateAccelerationStructureKHR");
 m_vk.destroyAccelerationStructureKHR                                   = (DestroyAccelerationStructureKHRFunc)                                 GET_PROC_ADDR("vkDestroyAccelerationStructureKHR");
 m_vk.cmdBuildAccelerationStructuresKHR                                 = (CmdBuildAccelerationStructuresKHRFunc)                               GET_PROC_ADDR("vkCmdBuildAccelerationStructuresKHR");
@@ -497,6 +504,7 @@ m_vk.setBufferCollectionImageConstraintsFUCHSIA                     = (SetBufferCollectionImageCon
 m_vk.setBufferCollectionBufferConstraintsFUCHSIA               = (SetBufferCollectionBufferConstraintsFUCHSIAFunc)             GET_PROC_ADDR("vkSetBufferCollectionBufferConstraintsFUCHSIA");
 m_vk.destroyBufferCollectionFUCHSIA                                            = (DestroyBufferCollectionFUCHSIAFunc)                                  GET_PROC_ADDR("vkDestroyBufferCollectionFUCHSIA");
 m_vk.getBufferCollectionPropertiesFUCHSIA                              = (GetBufferCollectionPropertiesFUCHSIAFunc)                    GET_PROC_ADDR("vkGetBufferCollectionPropertiesFUCHSIA");
+m_vk.exportMetalObjectsEXT                                                             = (ExportMetalObjectsEXTFunc)                                                   GET_PROC_ADDR("vkExportMetalObjectsEXT");
 m_vk.getMemoryWin32HandleKHR                                                   = (GetMemoryWin32HandleKHRFunc)                                                 GET_PROC_ADDR("vkGetMemoryWin32HandleKHR");
 m_vk.getMemoryWin32HandlePropertiesKHR                                 = (GetMemoryWin32HandlePropertiesKHRFunc)                               GET_PROC_ADDR("vkGetMemoryWin32HandlePropertiesKHR");
 m_vk.importSemaphoreWin32HandleKHR                                             = (ImportSemaphoreWin32HandleKHRFunc)                                   GET_PROC_ADDR("vkImportSemaphoreWin32HandleKHR");
index d65faa4..2e8ff37 100644 (file)
@@ -31,6 +31,7 @@ static const struct
        {"VK_DRIVER_ID_MESA_PANVK", 20},
        {"VK_DRIVER_ID_SAMSUNG_PROPRIETARY", 21},
        {"VK_DRIVER_ID_MESA_VENUS", 22},
+       {"VK_DRIVER_ID_MESA_DOZEN", 23},
        {"VK_DRIVER_ID_AMD_PROPRIETARY_KHR", 1},        // VK_DRIVER_ID_AMD_PROPRIETARY
        {"VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR", 2},        // VK_DRIVER_ID_AMD_OPEN_SOURCE
        {"VK_DRIVER_ID_MESA_RADV_KHR", 3},      // VK_DRIVER_ID_MESA_RADV
index 6613ba3..f37135f 100644 (file)
@@ -59,6 +59,18 @@ bool checkMandatoryFeatures(const vkt::Context& context)
        }
 
 #if defined(CTS_USES_VULKAN)
+       vk::VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT physicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT;
+       deMemset(&physicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT, 0, sizeof(physicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT));
+
+       if ( isExtensionSupported(deviceExtensions, RequiredExtension("VK_EXT_attachment_feedback_loop_layout")) )
+       {
+               physicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.sType = getStructureType<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>();
+               *nextPtr = &physicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT;
+               nextPtr  = &physicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.pNext;
+       }
+#endif // defined(CTS_USES_VULKAN)
+
+#if defined(CTS_USES_VULKAN)
        vk::VkPhysicalDeviceBorderColorSwizzleFeaturesEXT physicalDeviceBorderColorSwizzleFeaturesEXT;
        deMemset(&physicalDeviceBorderColorSwizzleFeaturesEXT, 0, sizeof(physicalDeviceBorderColorSwizzleFeaturesEXT));
 
@@ -733,6 +745,17 @@ bool checkMandatoryFeatures(const vkt::Context& context)
        }
 
 #if defined(CTS_USES_VULKAN)
+       if ( isExtensionSupported(deviceExtensions, RequiredExtension("VK_EXT_attachment_feedback_loop_layout")) )
+       {
+               if ( physicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.attachmentFeedbackLoopLayout == VK_FALSE )
+               {
+                       log << tcu::TestLog::Message << "Mandatory feature attachmentFeedbackLoopLayout not supported" << tcu::TestLog::EndMessage;
+                       result = false;
+               }
+       }
+#endif // defined(CTS_USES_VULKAN)
+
+#if defined(CTS_USES_VULKAN)
        if ( isExtensionSupported(deviceExtensions, RequiredExtension("VK_EXT_border_color_swizzle")) )
        {
                if ( physicalDeviceBorderColorSwizzleFeaturesEXT.borderColorSwizzle == VK_FALSE )
index 9526293..d260261 100644 (file)
@@ -2030,6 +2030,12 @@ VKAPI_ATTR void VKAPI_CALL getQueueCheckpointData2NV (VkQueue queue, uint32_t* p
        DE_UNREF(pCheckpointData);
 }
 
+VKAPI_ATTR void VKAPI_CALL cmdTraceRaysIndirect2KHR (VkCommandBuffer commandBuffer, VkDeviceAddress indirectDeviceAddress)
+{
+       DE_UNREF(commandBuffer);
+       DE_UNREF(indirectDeviceAddress);
+}
+
 VKAPI_ATTR void VKAPI_CALL debugReportMessageEXT (VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage)
 {
        DE_UNREF(instance);
@@ -2757,6 +2763,14 @@ VKAPI_ATTR void VKAPI_CALL cmdSetFragmentShadingRateEnumNV (VkCommandBuffer comm
        DE_UNREF(combinerOps);
 }
 
+VKAPI_ATTR void VKAPI_CALL getImageSubresourceLayout2EXT (VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout)
+{
+       DE_UNREF(device);
+       DE_UNREF(image);
+       DE_UNREF(pSubresource);
+       DE_UNREF(pLayout);
+}
+
 VKAPI_ATTR VkResult VKAPI_CALL acquireWinrtDisplayNV (VkPhysicalDevice physicalDevice, VkDisplayKHR display)
 {
        DE_UNREF(physicalDevice);
@@ -2809,6 +2823,14 @@ VKAPI_ATTR VkResult VKAPI_CALL getMemoryRemoteAddressNV (VkDevice device, const
        return VK_SUCCESS;
 }
 
+VKAPI_ATTR VkResult VKAPI_CALL getPipelinePropertiesEXT (VkDevice device, const VkPipelineInfoEXT* pPipelineInfo, VkBaseOutStructure* pPipelineProperties)
+{
+       DE_UNREF(device);
+       DE_UNREF(pPipelineInfo);
+       DE_UNREF(pPipelineProperties);
+       return VK_SUCCESS;
+}
+
 VKAPI_ATTR void VKAPI_CALL cmdSetPatchControlPointsEXT (VkCommandBuffer commandBuffer, uint32_t patchControlPoints)
 {
        DE_UNREF(commandBuffer);
@@ -2870,6 +2892,37 @@ VKAPI_ATTR void VKAPI_CALL getDescriptorSetHostMappingVALVE (VkDevice device, Vk
        DE_UNREF(ppData);
 }
 
+VKAPI_ATTR void VKAPI_CALL getShaderModuleIdentifierEXT (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier)
+{
+       DE_UNREF(device);
+       DE_UNREF(shaderModule);
+       DE_UNREF(pIdentifier);
+}
+
+VKAPI_ATTR void VKAPI_CALL getShaderModuleCreateInfoIdentifierEXT (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier)
+{
+       DE_UNREF(device);
+       DE_UNREF(pCreateInfo);
+       DE_UNREF(pIdentifier);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL getFramebufferTilePropertiesQCOM (VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties)
+{
+       DE_UNREF(device);
+       DE_UNREF(framebuffer);
+       DE_UNREF(pPropertiesCount);
+       DE_UNREF(pProperties);
+       return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL getDynamicRenderingTilePropertiesQCOM (VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties)
+{
+       DE_UNREF(device);
+       DE_UNREF(pRenderingInfo);
+       DE_UNREF(pProperties);
+       return VK_SUCCESS;
+}
+
 VKAPI_ATTR void VKAPI_CALL cmdBuildAccelerationStructuresKHR (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos)
 {
        DE_UNREF(commandBuffer);
@@ -3170,6 +3223,12 @@ VKAPI_ATTR VkResult VKAPI_CALL getBufferCollectionPropertiesFUCHSIA (VkDevice de
        return VK_SUCCESS;
 }
 
+VKAPI_ATTR void VKAPI_CALL exportMetalObjectsEXT (VkDevice device, VkExportMetalObjectsInfoEXT* pMetalObjectsInfo)
+{
+       DE_UNREF(device);
+       DE_UNREF(pMetalObjectsInfo);
+}
+
 VKAPI_ATTR VkBool32 VKAPI_CALL getPhysicalDeviceWaylandPresentationSupportKHR (VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, pt::WaylandDisplayPtr display)
 {
        DE_UNREF(physicalDevice);
@@ -3677,6 +3736,7 @@ static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkCmdCopyImageToBuffer2KHR,                                                  cmdCopyImageToBuffer2),
        VK_NULL_FUNC_ENTRY(vkCmdBlitImage2KHR,                                                                  cmdBlitImage2),
        VK_NULL_FUNC_ENTRY(vkCmdResolveImage2KHR,                                                               cmdResolveImage2),
+       VK_NULL_FUNC_ENTRY(vkCmdTraceRaysIndirect2KHR,                                                  cmdTraceRaysIndirect2KHR),
        VK_NULL_FUNC_ENTRY(vkGetDeviceBufferMemoryRequirementsKHR,                              getDeviceBufferMemoryRequirements),
        VK_NULL_FUNC_ENTRY(vkGetDeviceImageMemoryRequirementsKHR,                               getDeviceImageMemoryRequirements),
        VK_NULL_FUNC_ENTRY(vkGetDeviceImageSparseMemoryRequirementsKHR,                 getDeviceImageSparseMemoryRequirements),
@@ -3787,11 +3847,13 @@ static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkSetPrivateDataEXT,                                                                 setPrivateData),
        VK_NULL_FUNC_ENTRY(vkGetPrivateDataEXT,                                                                 getPrivateData),
        VK_NULL_FUNC_ENTRY(vkCmdSetFragmentShadingRateEnumNV,                                   cmdSetFragmentShadingRateEnumNV),
+       VK_NULL_FUNC_ENTRY(vkGetImageSubresourceLayout2EXT,                                             getImageSubresourceLayout2EXT),
        VK_NULL_FUNC_ENTRY(vkCmdSetVertexInputEXT,                                                              cmdSetVertexInputEXT),
        VK_NULL_FUNC_ENTRY(vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI,             getDeviceSubpassShadingMaxWorkgroupSizeHUAWEI),
        VK_NULL_FUNC_ENTRY(vkCmdSubpassShadingHUAWEI,                                                   cmdSubpassShadingHUAWEI),
        VK_NULL_FUNC_ENTRY(vkCmdBindInvocationMaskHUAWEI,                                               cmdBindInvocationMaskHUAWEI),
        VK_NULL_FUNC_ENTRY(vkGetMemoryRemoteAddressNV,                                                  getMemoryRemoteAddressNV),
+       VK_NULL_FUNC_ENTRY(vkGetPipelinePropertiesEXT,                                                  getPipelinePropertiesEXT),
        VK_NULL_FUNC_ENTRY(vkCmdSetPatchControlPointsEXT,                                               cmdSetPatchControlPointsEXT),
        VK_NULL_FUNC_ENTRY(vkCmdSetRasterizerDiscardEnableEXT,                                  cmdSetRasterizerDiscardEnable),
        VK_NULL_FUNC_ENTRY(vkCmdSetDepthBiasEnableEXT,                                                  cmdSetDepthBiasEnable),
@@ -3803,6 +3865,10 @@ static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkSetDeviceMemoryPriorityEXT,                                                setDeviceMemoryPriorityEXT),
        VK_NULL_FUNC_ENTRY(vkGetDescriptorSetLayoutHostMappingInfoVALVE,                getDescriptorSetLayoutHostMappingInfoVALVE),
        VK_NULL_FUNC_ENTRY(vkGetDescriptorSetHostMappingVALVE,                                  getDescriptorSetHostMappingVALVE),
+       VK_NULL_FUNC_ENTRY(vkGetShaderModuleIdentifierEXT,                                              getShaderModuleIdentifierEXT),
+       VK_NULL_FUNC_ENTRY(vkGetShaderModuleCreateInfoIdentifierEXT,                    getShaderModuleCreateInfoIdentifierEXT),
+       VK_NULL_FUNC_ENTRY(vkGetFramebufferTilePropertiesQCOM,                                  getFramebufferTilePropertiesQCOM),
+       VK_NULL_FUNC_ENTRY(vkGetDynamicRenderingTilePropertiesQCOM,                             getDynamicRenderingTilePropertiesQCOM),
        VK_NULL_FUNC_ENTRY(vkCreateAccelerationStructureKHR,                                    createAccelerationStructureKHR),
        VK_NULL_FUNC_ENTRY(vkDestroyAccelerationStructureKHR,                                   destroyAccelerationStructureKHR),
        VK_NULL_FUNC_ENTRY(vkCmdBuildAccelerationStructuresKHR,                                 cmdBuildAccelerationStructuresKHR),
@@ -3848,6 +3914,7 @@ static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
        VK_NULL_FUNC_ENTRY(vkSetBufferCollectionBufferConstraintsFUCHSIA,               setBufferCollectionBufferConstraintsFUCHSIA),
        VK_NULL_FUNC_ENTRY(vkDestroyBufferCollectionFUCHSIA,                                    destroyBufferCollectionFUCHSIA),
        VK_NULL_FUNC_ENTRY(vkGetBufferCollectionPropertiesFUCHSIA,                              getBufferCollectionPropertiesFUCHSIA),
+       VK_NULL_FUNC_ENTRY(vkExportMetalObjectsEXT,                                                             exportMetalObjectsEXT),
        VK_NULL_FUNC_ENTRY(vkGetMemoryWin32HandleKHR,                                                   getMemoryWin32HandleKHR),
        VK_NULL_FUNC_ENTRY(vkGetMemoryWin32HandlePropertiesKHR,                                 getMemoryWin32HandlePropertiesKHR),
        VK_NULL_FUNC_ENTRY(vkImportSemaphoreWin32HandleKHR,                                             importSemaphoreWin32HandleKHR),
index a6530c4..4cc7da2 100644 (file)
@@ -5,9 +5,9 @@
 
 const char*    getResultName                                                                                   (VkResult value);
 const char*    getStructureTypeName                                                                    (VkStructureType value);
+const char*    getPipelineCacheHeaderVersionName                                               (VkPipelineCacheHeaderVersion value);
 const char*    getImageLayoutName                                                                              (VkImageLayout value);
 const char*    getObjectTypeName                                                                               (VkObjectType value);
-const char*    getPipelineCacheHeaderVersionName                                               (VkPipelineCacheHeaderVersion value);
 const char*    getVendorIdName                                                                                 (VkVendorId value);
 const char*    getSystemAllocationScopeName                                                    (VkSystemAllocationScope value);
 const char*    getInternalAllocationTypeName                                                   (VkInternalAllocationType value);
@@ -62,6 +62,8 @@ const char*   getDebugReportObjectTypeEXTName                                                 (VkDebugReportObjectTypeEXT va
 const char*    getRasterizationOrderAMDName                                                    (VkRasterizationOrderAMD value);
 const char*    getShaderInfoTypeAMDName                                                                (VkShaderInfoTypeAMD value);
 const char*    getValidationCheckEXTName                                                               (VkValidationCheckEXT value);
+const char*    getPipelineRobustnessBufferBehaviorEXTName                              (VkPipelineRobustnessBufferBehaviorEXT value);
+const char*    getPipelineRobustnessImageBehaviorEXTName                               (VkPipelineRobustnessImageBehaviorEXT value);
 const char*    getDisplayPowerStateEXTName                                                             (VkDisplayPowerStateEXT value);
 const char*    getDeviceEventTypeEXTName                                                               (VkDeviceEventTypeEXT value);
 const char*    getDisplayEventTypeEXTName                                                              (VkDisplayEventTypeEXT value);
@@ -97,6 +99,7 @@ const char*   getDeviceMemoryReportEventTypeEXTName                                   (VkDeviceMemoryReportEvent
 const char*    getFragmentShadingRateTypeNVName                                                (VkFragmentShadingRateTypeNV value);
 const char*    getFragmentShadingRateNVName                                                    (VkFragmentShadingRateNV value);
 const char*    getAccelerationStructureMotionInstanceTypeNVName                (VkAccelerationStructureMotionInstanceTypeNV value);
+const char*    getSubpassMergeStatusEXTName                                                    (VkSubpassMergeStatusEXT value);
 const char*    getBuildAccelerationStructureModeKHRName                                (VkBuildAccelerationStructureModeKHR value);
 const char*    getAccelerationStructureBuildTypeKHRName                                (VkAccelerationStructureBuildTypeKHR value);
 const char*    getAccelerationStructureCompatibilityKHRName                    (VkAccelerationStructureCompatibilityKHR value);
@@ -125,9 +128,9 @@ const char* getFullScreenExclusiveEXTName                                                   (VkFullScreenExclusiveEXT value)
 
 inline tcu::Format::Enum<VkResult>                                                                                     getResultStr                                                                            (VkResult value)                                                                                { return tcu::Format::Enum<VkResult>(getResultName, value);                                                                                                                                                                     }
 inline tcu::Format::Enum<VkStructureType>                                                                      getStructureTypeStr                                                                     (VkStructureType value)                                                                 { return tcu::Format::Enum<VkStructureType>(getStructureTypeName, value);                                                                                                                                       }
+inline tcu::Format::Enum<VkPipelineCacheHeaderVersion>                                         getPipelineCacheHeaderVersionStr                                        (VkPipelineCacheHeaderVersion value)                                    { return tcu::Format::Enum<VkPipelineCacheHeaderVersion>(getPipelineCacheHeaderVersionName, value);                                                                                     }
 inline tcu::Format::Enum<VkImageLayout>                                                                                getImageLayoutStr                                                                       (VkImageLayout value)                                                                   { return tcu::Format::Enum<VkImageLayout>(getImageLayoutName, value);                                                                                                                                           }
 inline tcu::Format::Enum<VkObjectType>                                                                         getObjectTypeStr                                                                        (VkObjectType value)                                                                    { return tcu::Format::Enum<VkObjectType>(getObjectTypeName, value);                                                                                                                                                     }
-inline tcu::Format::Enum<VkPipelineCacheHeaderVersion>                                         getPipelineCacheHeaderVersionStr                                        (VkPipelineCacheHeaderVersion value)                                    { return tcu::Format::Enum<VkPipelineCacheHeaderVersion>(getPipelineCacheHeaderVersionName, value);                                                                                     }
 inline tcu::Format::Enum<VkVendorId>                                                                           getVendorIdStr                                                                          (VkVendorId value)                                                                              { return tcu::Format::Enum<VkVendorId>(getVendorIdName, value);                                                                                                                                                         }
 inline tcu::Format::Enum<VkSystemAllocationScope>                                                      getSystemAllocationScopeStr                                                     (VkSystemAllocationScope value)                                                 { return tcu::Format::Enum<VkSystemAllocationScope>(getSystemAllocationScopeName, value);                                                                                                       }
 inline tcu::Format::Enum<VkInternalAllocationType>                                                     getInternalAllocationTypeStr                                            (VkInternalAllocationType value)                                                { return tcu::Format::Enum<VkInternalAllocationType>(getInternalAllocationTypeName, value);                                                                                                     }
@@ -182,6 +185,8 @@ inline tcu::Format::Enum<VkDebugReportObjectTypeEXT>                                                getDebugReportObjectTy
 inline tcu::Format::Enum<VkRasterizationOrderAMD>                                                      getRasterizationOrderAMDStr                                                     (VkRasterizationOrderAMD value)                                                 { return tcu::Format::Enum<VkRasterizationOrderAMD>(getRasterizationOrderAMDName, value);                                                                                                       }
 inline tcu::Format::Enum<VkShaderInfoTypeAMD>                                                          getShaderInfoTypeAMDStr                                                         (VkShaderInfoTypeAMD value)                                                             { return tcu::Format::Enum<VkShaderInfoTypeAMD>(getShaderInfoTypeAMDName, value);                                                                                                                       }
 inline tcu::Format::Enum<VkValidationCheckEXT>                                                         getValidationCheckEXTStr                                                        (VkValidationCheckEXT value)                                                    { return tcu::Format::Enum<VkValidationCheckEXT>(getValidationCheckEXTName, value);                                                                                                                     }
+inline tcu::Format::Enum<VkPipelineRobustnessBufferBehaviorEXT>                                getPipelineRobustnessBufferBehaviorEXTStr                       (VkPipelineRobustnessBufferBehaviorEXT value)                   { return tcu::Format::Enum<VkPipelineRobustnessBufferBehaviorEXT>(getPipelineRobustnessBufferBehaviorEXTName, value);                                           }
+inline tcu::Format::Enum<VkPipelineRobustnessImageBehaviorEXT>                         getPipelineRobustnessImageBehaviorEXTStr                        (VkPipelineRobustnessImageBehaviorEXT value)                    { return tcu::Format::Enum<VkPipelineRobustnessImageBehaviorEXT>(getPipelineRobustnessImageBehaviorEXTName, value);                                                     }
 inline tcu::Format::Enum<VkDisplayPowerStateEXT>                                                       getDisplayPowerStateEXTStr                                                      (VkDisplayPowerStateEXT value)                                                  { return tcu::Format::Enum<VkDisplayPowerStateEXT>(getDisplayPowerStateEXTName, value);                                                                                                         }
 inline tcu::Format::Enum<VkDeviceEventTypeEXT>                                                         getDeviceEventTypeEXTStr                                                        (VkDeviceEventTypeEXT value)                                                    { return tcu::Format::Enum<VkDeviceEventTypeEXT>(getDeviceEventTypeEXTName, value);                                                                                                                     }
 inline tcu::Format::Enum<VkDisplayEventTypeEXT>                                                                getDisplayEventTypeEXTStr                                                       (VkDisplayEventTypeEXT value)                                                   { return tcu::Format::Enum<VkDisplayEventTypeEXT>(getDisplayEventTypeEXTName, value);                                                                                                           }
@@ -217,6 +222,7 @@ inline tcu::Format::Enum<VkDeviceMemoryReportEventTypeEXT>                                  getDeviceMemoryRe
 inline tcu::Format::Enum<VkFragmentShadingRateTypeNV>                                          getFragmentShadingRateTypeNVStr                                         (VkFragmentShadingRateTypeNV value)                                             { return tcu::Format::Enum<VkFragmentShadingRateTypeNV>(getFragmentShadingRateTypeNVName, value);                                                                                       }
 inline tcu::Format::Enum<VkFragmentShadingRateNV>                                                      getFragmentShadingRateNVStr                                                     (VkFragmentShadingRateNV value)                                                 { return tcu::Format::Enum<VkFragmentShadingRateNV>(getFragmentShadingRateNVName, value);                                                                                                       }
 inline tcu::Format::Enum<VkAccelerationStructureMotionInstanceTypeNV>          getAccelerationStructureMotionInstanceTypeNVStr         (VkAccelerationStructureMotionInstanceTypeNV value)             { return tcu::Format::Enum<VkAccelerationStructureMotionInstanceTypeNV>(getAccelerationStructureMotionInstanceTypeNVName, value);                       }
+inline tcu::Format::Enum<VkSubpassMergeStatusEXT>                                                      getSubpassMergeStatusEXTStr                                                     (VkSubpassMergeStatusEXT value)                                                 { return tcu::Format::Enum<VkSubpassMergeStatusEXT>(getSubpassMergeStatusEXTName, value);                                                                                                       }
 inline tcu::Format::Enum<VkBuildAccelerationStructureModeKHR>                          getBuildAccelerationStructureModeKHRStr                         (VkBuildAccelerationStructureModeKHR value)                             { return tcu::Format::Enum<VkBuildAccelerationStructureModeKHR>(getBuildAccelerationStructureModeKHRName, value);                                                       }
 inline tcu::Format::Enum<VkAccelerationStructureBuildTypeKHR>                          getAccelerationStructureBuildTypeKHRStr                         (VkAccelerationStructureBuildTypeKHR value)                             { return tcu::Format::Enum<VkAccelerationStructureBuildTypeKHR>(getAccelerationStructureBuildTypeKHRName, value);                                                       }
 inline tcu::Format::Enum<VkAccelerationStructureCompatibilityKHR>                      getAccelerationStructureCompatibilityKHRStr                     (VkAccelerationStructureCompatibilityKHR value)                 { return tcu::Format::Enum<VkAccelerationStructureCompatibilityKHR>(getAccelerationStructureCompatibilityKHRName, value);                                       }
@@ -245,9 +251,9 @@ inline tcu::Format::Enum<VkFullScreenExclusiveEXT>                                                  getFullScreenExclusiveE
 
 inline std::ostream&   operator<<      (std::ostream& s, VkResult value)                                                                                       { return s << getResultStr(value);                                                                                      }
 inline std::ostream&   operator<<      (std::ostream& s, VkStructureType value)                                                                        { return s << getStructureTypeStr(value);                                                                       }
+inline std::ostream&   operator<<      (std::ostream& s, VkPipelineCacheHeaderVersion value)                                           { return s << getPipelineCacheHeaderVersionStr(value);                                          }
 inline std::ostream&   operator<<      (std::ostream& s, VkImageLayout value)                                                                          { return s << getImageLayoutStr(value);                                                                         }
 inline std::ostream&   operator<<      (std::ostream& s, VkObjectType value)                                                                           { return s << getObjectTypeStr(value);                                                                          }
-inline std::ostream&   operator<<      (std::ostream& s, VkPipelineCacheHeaderVersion value)                                           { return s << getPipelineCacheHeaderVersionStr(value);                                          }
 inline std::ostream&   operator<<      (std::ostream& s, VkVendorId value)                                                                                     { return s << getVendorIdStr(value);                                                                            }
 inline std::ostream&   operator<<      (std::ostream& s, VkSystemAllocationScope value)                                                        { return s << getSystemAllocationScopeStr(value);                                                       }
 inline std::ostream&   operator<<      (std::ostream& s, VkInternalAllocationType value)                                                       { return s << getInternalAllocationTypeStr(value);                                                      }
@@ -302,6 +308,8 @@ inline std::ostream&        operator<<      (std::ostream& s, VkDebugReportObjectTypeEXT val
 inline std::ostream&   operator<<      (std::ostream& s, VkRasterizationOrderAMD value)                                                        { return s << getRasterizationOrderAMDStr(value);                                                       }
 inline std::ostream&   operator<<      (std::ostream& s, VkShaderInfoTypeAMD value)                                                            { return s << getShaderInfoTypeAMDStr(value);                                                           }
 inline std::ostream&   operator<<      (std::ostream& s, VkValidationCheckEXT value)                                                           { return s << getValidationCheckEXTStr(value);                                                          }
+inline std::ostream&   operator<<      (std::ostream& s, VkPipelineRobustnessBufferBehaviorEXT value)                          { return s << getPipelineRobustnessBufferBehaviorEXTStr(value);                         }
+inline std::ostream&   operator<<      (std::ostream& s, VkPipelineRobustnessImageBehaviorEXT value)                           { return s << getPipelineRobustnessImageBehaviorEXTStr(value);                          }
 inline std::ostream&   operator<<      (std::ostream& s, VkDisplayPowerStateEXT value)                                                         { return s << getDisplayPowerStateEXTStr(value);                                                        }
 inline std::ostream&   operator<<      (std::ostream& s, VkDeviceEventTypeEXT value)                                                           { return s << getDeviceEventTypeEXTStr(value);                                                          }
 inline std::ostream&   operator<<      (std::ostream& s, VkDisplayEventTypeEXT value)                                                          { return s << getDisplayEventTypeEXTStr(value);                                                         }
@@ -337,6 +345,7 @@ inline std::ostream&        operator<<      (std::ostream& s, VkDeviceMemoryReportEventTypeE
 inline std::ostream&   operator<<      (std::ostream& s, VkFragmentShadingRateTypeNV value)                                            { return s << getFragmentShadingRateTypeNVStr(value);                                           }
 inline std::ostream&   operator<<      (std::ostream& s, VkFragmentShadingRateNV value)                                                        { return s << getFragmentShadingRateNVStr(value);                                                       }
 inline std::ostream&   operator<<      (std::ostream& s, VkAccelerationStructureMotionInstanceTypeNV value)            { return s << getAccelerationStructureMotionInstanceTypeNVStr(value);           }
+inline std::ostream&   operator<<      (std::ostream& s, VkSubpassMergeStatusEXT value)                                                        { return s << getSubpassMergeStatusEXTStr(value);                                                       }
 inline std::ostream&   operator<<      (std::ostream& s, VkBuildAccelerationStructureModeKHR value)                            { return s << getBuildAccelerationStructureModeKHRStr(value);                           }
 inline std::ostream&   operator<<      (std::ostream& s, VkAccelerationStructureBuildTypeKHR value)                            { return s << getAccelerationStructureBuildTypeKHRStr(value);                           }
 inline std::ostream&   operator<<      (std::ostream& s, VkAccelerationStructureCompatibilityKHR value)                        { return s << getAccelerationStructureCompatibilityKHRStr(value);                       }
@@ -448,6 +457,8 @@ tcu::Format::Bitfield<32>   getIndirectStateFlagsNVStr                                                                      (VkIndirectStateFla
 tcu::Format::Bitfield<32>      getIndirectCommandsLayoutUsageFlagsNVStr                                        (VkIndirectCommandsLayoutUsageFlagsNV value);
 tcu::Format::Bitfield<32>      getDeviceDiagnosticsConfigFlagsNVStr                                            (VkDeviceDiagnosticsConfigFlagsNV value);
 tcu::Format::Bitfield<32>      getGraphicsPipelineLibraryFlagsEXTStr                                           (VkGraphicsPipelineLibraryFlagsEXT value);
+tcu::Format::Bitfield<32>      getImageCompressionFlagsEXTStr                                                          (VkImageCompressionFlagsEXT value);
+tcu::Format::Bitfield<32>      getImageCompressionFixedRateFlagsEXTStr                                         (VkImageCompressionFixedRateFlagsEXT value);
 tcu::Format::Bitfield<32>      getAccelerationStructureCreateFlagsKHRStr                                       (VkAccelerationStructureCreateFlagsKHR value);
 tcu::Format::Bitfield<32>      getVideoCodecOperationFlagsKHRStr                                                       (VkVideoCodecOperationFlagsKHR value);
 tcu::Format::Bitfield<32>      getVideoChromaSubsamplingFlagsKHRStr                                            (VkVideoChromaSubsamplingFlagsKHR value);
@@ -474,6 +485,7 @@ tcu::Format::Bitfield<32>   getVideoEncodeH265TransformBlockSizeFlagsEXTStr                         (Vk
 tcu::Format::Bitfield<32>      getVideoEncodeH265RateControlStructureFlagsEXTStr                       (VkVideoEncodeH265RateControlStructureFlagsEXT value);
 tcu::Format::Bitfield<32>      getVideoDecodeH264PictureLayoutFlagsEXTStr                                      (VkVideoDecodeH264PictureLayoutFlagsEXT value);
 tcu::Format::Bitfield<32>      getImageConstraintsInfoFlagsFUCHSIAStr                                          (VkImageConstraintsInfoFlagsFUCHSIA value);
+tcu::Format::Bitfield<32>      getExportMetalObjectTypeFlagsEXTStr                                                     (VkExportMetalObjectTypeFlagsEXT value);
 tcu::Format::Bitfield<32>      getDeviceCreateFlagsStr                                                                         (VkDeviceCreateFlags value);
 tcu::Format::Bitfield<32>      getMemoryMapFlagsStr                                                                            (VkMemoryMapFlags value);
 tcu::Format::Bitfield<32>      getSemaphoreCreateFlagsStr                                                                      (VkSemaphoreCreateFlags value);
@@ -879,8 +891,12 @@ std::ostream&      operator<<      (std::ostream& s, const VkPresentIdKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDevicePresentIdFeaturesKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkQueueFamilyCheckpointProperties2NV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkCheckpointData2NV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR& value);
+std::ostream&  operator<<      (std::ostream& s, const VkTraceRaysIndirectCommand2KHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPipelineRasterizationStateRasterizationOrderAMD& value);
 std::ostream&  operator<<      (std::ostream& s, const VkDebugMarkerObjectNameInfoEXT& value);
@@ -907,6 +923,9 @@ std::ostream&       operator<<      (std::ostream& s, const VkExportMemoryAllocateInfoNV& v
 std::ostream&  operator<<      (std::ostream& s, const VkValidationFlagsEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkImageViewASTCDecodeModeEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceASTCDecodeFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDevicePipelineRobustnessFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDevicePipelineRobustnessPropertiesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPipelineRobustnessCreateInfoEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkConditionalRenderingBeginInfoEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceConditionalRenderingFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkCommandBufferInheritanceConditionalRenderingInfoEXT& value);
@@ -1003,7 +1022,6 @@ std::ostream&     operator<<      (std::ostream& s, const VkPhysicalDeviceComputeShaderDe
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceMeshShaderFeaturesNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceMeshShaderPropertiesNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkDrawMeshTasksIndirectCommandNV& value);
-std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceShaderImageFootprintFeaturesNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPipelineViewportExclusiveScissorStateCreateInfoNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceExclusiveScissorFeaturesNV& value);
@@ -1084,6 +1102,7 @@ std::ostream&     operator<<      (std::ostream& s, const VkDeviceDiagnosticsConfigCreate
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkGraphicsPipelineLibraryCreateInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPipelineFragmentShadingRateEnumStateCreateInfoNV& value);
@@ -1100,6 +1119,12 @@ std::ostream&    operator<<      (std::ostream& s, const VkPhysicalDeviceYcbcr2Plane444F
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkCopyCommandTransformInfoQCOM& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceImageCompressionControlFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkImageCompressionControlEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkSubresourceLayout2EXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkImageSubresource2EXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkImageCompressionPropertiesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDevice4444FormatsFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT& value);
@@ -1119,6 +1144,11 @@ std::ostream&    operator<<      (std::ostream& s, const VkPhysicalDeviceSubpassShadingP
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI& value);
 std::ostream&  operator<<      (std::ostream& s, const VkMemoryGetRemoteAddressInfoNV& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPipelinePropertiesIdentifierEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDevicePipelinePropertiesFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkSubpassResolvePerformanceQueryEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkMultisampledRenderToSingleSampledInfoEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceColorWriteEnableFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPipelineColorWriteCreateInfoEXT& value);
@@ -1136,10 +1166,29 @@ std::ostream&   operator<<      (std::ostream& s, const VkPhysicalDevicePageableDeviceL
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE& value);
 std::ostream&  operator<<      (std::ostream& s, const VkDescriptorSetBindingReferenceVALVE& value);
 std::ostream&  operator<<      (std::ostream& s, const VkDescriptorSetLayoutHostMappingInfoVALVE& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM& value);
 std::ostream&  operator<<      (std::ostream& s, const VkSubpassFragmentDensityMapOffsetEndInfoQCOM& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceLinearColorAttachmentFeaturesNV& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkImageViewSampleWeightCreateInfoQCOM& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceImageProcessingFeaturesQCOM& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceImageProcessingPropertiesQCOM& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRenderPassCreationControlEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRenderPassCreationFeedbackInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRenderPassCreationFeedbackCreateInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRenderPassSubpassFeedbackInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkRenderPassSubpassFeedbackCreateInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPipelineShaderStageModuleIdentifierCreateInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkShaderModuleIdentifierEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceTilePropertiesFeaturesQCOM& value);
+std::ostream&  operator<<      (std::ostream& s, const VkTilePropertiesQCOM& value);
+std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceAmigoProfilingFeaturesSEC& value);
+std::ostream&  operator<<      (std::ostream& s, const VkAmigoProfilingSubmitInfoSEC& value);
 std::ostream&  operator<<      (std::ostream& s, const VkDeviceOrHostAddressKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureBuildRangeInfoKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkAccelerationStructureGeometryTrianglesDataKHR& value);
@@ -1314,6 +1363,18 @@ std::ostream&    operator<<      (std::ostream& s, const VkPresentFrameTokenGGP& value);
 std::ostream&  operator<<      (std::ostream& s, const VkIOSSurfaceCreateInfoMVK& value);
 std::ostream&  operator<<      (std::ostream& s, const VkMacOSSurfaceCreateInfoMVK& value);
 std::ostream&  operator<<      (std::ostream& s, const VkMetalSurfaceCreateInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkExportMetalObjectCreateInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkExportMetalObjectsInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkExportMetalDeviceInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkExportMetalCommandQueueInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkExportMetalBufferInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkImportMetalBufferInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkExportMetalTextureInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkImportMetalTextureInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkExportMetalIOSurfaceInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkImportMetalIOSurfaceInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkExportMetalSharedEventInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkImportMetalSharedEventInfoEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkViSurfaceCreateInfoNN& value);
 std::ostream&  operator<<      (std::ostream& s, const VkWaylandSurfaceCreateInfoKHR& value);
 std::ostream&  operator<<      (std::ostream& s, const VkWin32SurfaceCreateInfoKHR& value);
index 2d75b53..a087b5c 100644 (file)
@@ -74,6 +74,12 @@ std::ostream& operator<< (std::ostream& s, zx_handle_t                                       v) { return s << tcu:
 std::ostream& operator<< (std::ostream& s, GgpFrameToken                               v) { return s << tcu::toHex(v.internal); }
 std::ostream& operator<< (std::ostream& s, GgpStreamDescriptor                 v) { return s << tcu::toHex(v.internal); }
 std::ostream& operator<< (std::ostream& s, CAMetalLayer                                        v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLDevice_id                                        v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLCommandQueue_id                  v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLBuffer_id                                        v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLTexture_id                               v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, IOSurfaceRef                                        v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLSharedEvent_id                   v) { return s << tcu::toHex(v.internal); }
 }
 
 const char* getResultName (VkResult value)
@@ -111,6 +117,12 @@ const char* getResultName (VkResult value)
                case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR:                                         return "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR";
                case VK_ERROR_VALIDATION_FAILED_EXT:                                            return "VK_ERROR_VALIDATION_FAILED_EXT";
                case VK_ERROR_INVALID_SHADER_NV:                                                        return "VK_ERROR_INVALID_SHADER_NV";
+               case VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR:                            return "VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR";
+               case VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR:           return "VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR";
+               case VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR:        return "VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR";
+               case VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR:           return "VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR";
+               case VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR:            return "VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR";
+               case VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR:                      return "VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR";
                case VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT:     return "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT";
                case VK_ERROR_NOT_PERMITTED_KHR:                                                        return "VK_ERROR_NOT_PERMITTED_KHR";
                case VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT:                      return "VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT";
@@ -118,6 +130,7 @@ const char* getResultName (VkResult value)
                case VK_THREAD_DONE_KHR:                                                                        return "VK_THREAD_DONE_KHR";
                case VK_OPERATION_DEFERRED_KHR:                                                         return "VK_OPERATION_DEFERRED_KHR";
                case VK_OPERATION_NOT_DEFERRED_KHR:                                                     return "VK_OPERATION_NOT_DEFERRED_KHR";
+               case VK_ERROR_COMPRESSION_EXHAUSTED_EXT:                                        return "VK_ERROR_COMPRESSION_EXHAUSTED_EXT";
                case VK_RESULT_MAX_ENUM:                                                                        return "VK_RESULT_MAX_ENUM";
                default:                                                                                                        return DE_NULL;
        }
@@ -439,6 +452,9 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN:                                                                                       return "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN";
                case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT:                                                                         return "VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT:                                                        return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT:                                                                     return "VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT:                                        return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT:                                      return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT";
                case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:                                                                     return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
                case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR:                                                                     return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
                case VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR:                                                                      return "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR";
@@ -595,7 +611,6 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV:                          return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV:                                                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV:                                                       return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV";
-               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV:                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV:                                      return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV";
                case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV:                        return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV:                                           return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV";
@@ -691,11 +706,26 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR:                                                                           return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV:                                          return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV";
                case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV:                                                        return "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV";
+               case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT:                                                                     return "VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT:                                                                           return "VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT";
+               case VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT:                                                                            return "VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT:                                                                     return "VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT:                                                                            return "VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT";
+               case VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT:                                                                            return "VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT";
+               case VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT:                                                                           return "VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT:                                                                           return "VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT:                                                                        return "VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT:                                                                        return "VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT:                                                                      return "VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT";
+               case VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT:                                                                      return "VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT";
                case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:                                                         return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV";
                case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV:                                                                                            return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT:                          return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT:                        return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT";
                case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT:                                                       return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD:       return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR:                        return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR:                      return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:       return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV:                       return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV:                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV";
@@ -708,6 +738,12 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT:                           return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT";
                case VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM:                                                                        return "VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:           return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT:                          return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT:                                                                           return "VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT";
+               case VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT:                                                                                        return "VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT";
+               case VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT:                                                                                         return "VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT";
+               case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT:                                                                        return "VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT:            return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT:                                                       return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM:      return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:                                           return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT";
@@ -742,11 +778,17 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:                                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI";
                case VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV:                                                                       return "VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:                                        return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV";
+               case VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT:                                                                      return "VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT:                                        return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT:      return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT:                                                           return "VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT";
+               case VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT:                                          return "VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:                           return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX:                                                                          return "VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:                                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:                                                            return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT:                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR:                          return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT:                                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT:                                                                      return "VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:                                                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT";
@@ -758,15 +800,42 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE:                      return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE";
                case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE:                                                          return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE";
                case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE:                                           return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT:                                      return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM:                       return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM:                     return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM";
                case VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM:                                       return "VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV:                                     return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT:        return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM:                                          return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM:                                        return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM";
+               case VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM:                                                       return "VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT:                                     return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT:                                                                        return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT";
+               case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT:                                           return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT:                                            return "VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT:                           return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT:                         return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT";
+               case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT:                         return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT:                                                                            return "VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM:                                           return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM";
+               case VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM:                                                                                            return "VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM";
+               case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC:                                            return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC";
+               case VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC:                                                                         return "VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC";
                case VK_STRUCTURE_TYPE_MAX_ENUM:                                                                                                                        return "VK_STRUCTURE_TYPE_MAX_ENUM";
                default:                                                                                                                                                                        return DE_NULL;
        }
 }
 
+const char* getPipelineCacheHeaderVersionName (VkPipelineCacheHeaderVersion value)
+{
+       switch (value)
+       {
+               case VK_PIPELINE_CACHE_HEADER_VERSION_ONE:              return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE";
+               case VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM: return "VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM";
+               default:                                                                                return DE_NULL;
+       }
+}
+
 const char* getImageLayoutName (VkImageLayout value)
 {
        switch (value)
@@ -798,6 +867,7 @@ const char* getImageLayoutName (VkImageLayout value)
                case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR:                                                      return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR";
                case VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR:                                                      return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR";
                case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR:                                                      return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR";
+               case VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT:                      return "VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT";
                case VK_IMAGE_LAYOUT_MAX_ENUM:                                                                          return "VK_IMAGE_LAYOUT_MAX_ENUM";
                default:                                                                                                                        return DE_NULL;
        }
@@ -858,16 +928,6 @@ const char* getObjectTypeName (VkObjectType value)
        }
 }
 
-const char* getPipelineCacheHeaderVersionName (VkPipelineCacheHeaderVersion value)
-{
-       switch (value)
-       {
-               case VK_PIPELINE_CACHE_HEADER_VERSION_ONE:              return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE";
-               case VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM: return "VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM";
-               default:                                                                                return DE_NULL;
-       }
-}
-
 const char* getVendorIdName (VkVendorId value)
 {
        switch (value)
@@ -1205,20 +1265,22 @@ const char* getQueryTypeName (VkQueryType value)
 {
        switch (value)
        {
-               case VK_QUERY_TYPE_OCCLUSION:                                                                           return "VK_QUERY_TYPE_OCCLUSION";
-               case VK_QUERY_TYPE_PIPELINE_STATISTICS:                                                         return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
-               case VK_QUERY_TYPE_TIMESTAMP:                                                                           return "VK_QUERY_TYPE_TIMESTAMP";
-               case VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR:                                                      return "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR";
-               case VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT:                                       return "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT";
-               case VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR:                                                       return "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR";
-               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR:           return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR";
-               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR:       return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR";
-               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV:            return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV";
-               case VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL:                                                     return "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL";
-               case VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR:                     return "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR";
-               case VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT:                                            return "VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT";
-               case VK_QUERY_TYPE_MAX_ENUM:                                                                            return "VK_QUERY_TYPE_MAX_ENUM";
-               default:                                                                                                                        return DE_NULL;
+               case VK_QUERY_TYPE_OCCLUSION:                                                                                                           return "VK_QUERY_TYPE_OCCLUSION";
+               case VK_QUERY_TYPE_PIPELINE_STATISTICS:                                                                                         return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
+               case VK_QUERY_TYPE_TIMESTAMP:                                                                                                           return "VK_QUERY_TYPE_TIMESTAMP";
+               case VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR:                                                                                      return "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR";
+               case VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT:                                                                       return "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT";
+               case VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR:                                                                                       return "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR";
+               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR:                                           return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR";
+               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR:                                       return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR";
+               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV:                                            return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV";
+               case VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL:                                                                                     return "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL";
+               case VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR:                                                     return "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR";
+               case VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT:                                                                            return "VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT";
+               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR:      return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR";
+               case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR:                                                                     return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR";
+               case VK_QUERY_TYPE_MAX_ENUM:                                                                                                            return "VK_QUERY_TYPE_MAX_ENUM";
+               default:                                                                                                                                                        return DE_NULL;
        }
 }
 
@@ -1536,7 +1598,7 @@ const char* getFilterName (VkFilter value)
        {
                case VK_FILTER_NEAREST:         return "VK_FILTER_NEAREST";
                case VK_FILTER_LINEAR:          return "VK_FILTER_LINEAR";
-               case VK_FILTER_CUBIC_IMG:       return "VK_FILTER_CUBIC_IMG";
+               case VK_FILTER_CUBIC_EXT:       return "VK_FILTER_CUBIC_EXT";
                case VK_FILTER_MAX_ENUM:        return "VK_FILTER_MAX_ENUM";
                default:                                        return DE_NULL;
        }
@@ -1586,6 +1648,8 @@ const char* getDescriptorTypeName (VkDescriptorType value)
                case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR:     return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR";
                case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:      return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV";
                case VK_DESCRIPTOR_TYPE_MUTABLE_VALVE:                          return "VK_DESCRIPTOR_TYPE_MUTABLE_VALVE";
+               case VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM:       return "VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM";
+               case VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM:         return "VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM";
                case VK_DESCRIPTOR_TYPE_MAX_ENUM:                                       return "VK_DESCRIPTOR_TYPE_MAX_ENUM";
                default:                                                                                        return DE_NULL;
        }
@@ -1759,6 +1823,7 @@ const char* getDriverIdName (VkDriverId value)
                case VK_DRIVER_ID_MESA_PANVK:                                   return "VK_DRIVER_ID_MESA_PANVK";
                case VK_DRIVER_ID_SAMSUNG_PROPRIETARY:                  return "VK_DRIVER_ID_SAMSUNG_PROPRIETARY";
                case VK_DRIVER_ID_MESA_VENUS:                                   return "VK_DRIVER_ID_MESA_VENUS";
+               case VK_DRIVER_ID_MESA_DOZEN:                                   return "VK_DRIVER_ID_MESA_DOZEN";
                case VK_DRIVER_ID_MAX_ENUM:                                             return "VK_DRIVER_ID_MAX_ENUM";
                default:                                                                                return DE_NULL;
        }
@@ -2008,6 +2073,32 @@ const char* getValidationCheckEXTName (VkValidationCheckEXT value)
        }
 }
 
+const char* getPipelineRobustnessBufferBehaviorEXTName (VkPipelineRobustnessBufferBehaviorEXT value)
+{
+       switch (value)
+       {
+               case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT:                 return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT";
+               case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT:                               return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT";
+               case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT:   return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT";
+               case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT: return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT";
+               case VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_MAX_ENUM_EXT:                               return "VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_MAX_ENUM_EXT";
+               default:                                                                                                                                return DE_NULL;
+       }
+}
+
+const char* getPipelineRobustnessImageBehaviorEXTName (VkPipelineRobustnessImageBehaviorEXT value)
+{
+       switch (value)
+       {
+               case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT:                  return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT";
+               case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT:                                return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT";
+               case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT:             return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT";
+               case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT:   return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT";
+               case VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_MAX_ENUM_EXT:                                return "VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_MAX_ENUM_EXT";
+               default:                                                                                                                                return DE_NULL;
+       }
+}
+
 const char* getDisplayPowerStateEXTName (VkDisplayPowerStateEXT value)
 {
        switch (value)
@@ -2465,6 +2556,29 @@ const char* getAccelerationStructureMotionInstanceTypeNVName (VkAccelerationStru
        }
 }
 
+const char* getSubpassMergeStatusEXTName (VkSubpassMergeStatusEXT value)
+{
+       switch (value)
+       {
+               case VK_SUBPASS_MERGE_STATUS_MERGED_EXT:                                                                        return "VK_SUBPASS_MERGE_STATUS_MERGED_EXT";
+               case VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT:                                                            return "VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT:                                       return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT:                           return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT:                                     return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT:                                           return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT:                                       return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT:      return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT:                       return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT:                       return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT:                        return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT:           return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT:                                     return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT";
+               case VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT:                                        return "VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT";
+               case VK_SUBPASS_MERGE_STATUS_MAX_ENUM_EXT:                                                                      return "VK_SUBPASS_MERGE_STATUS_MAX_ENUM_EXT";
+               default:                                                                                                                                        return DE_NULL;
+       }
+}
+
 const char* getBuildAccelerationStructureModeKHRName (VkBuildAccelerationStructureModeKHR value)
 {
        switch (value)
@@ -2915,14 +3029,15 @@ tcu::Format::Bitfield<32> getFormatFeatureFlagsStr (VkFormatFeatureFlags value)
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_DISJOINT_BIT,                                                                                                                                    "VK_FORMAT_FEATURE_DISJOINT_BIT"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,                                                                                                              "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,                                                                                                 "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,                                                                                              "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR,                                                                                                             "VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR,                                                                                                                "VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR,                                                                    "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT,                                                                                              "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT,                                                                                                    "VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,                                                                                "VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR,                                                                                                              "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR,                                                                                                                "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR"),
+               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,                                                                                              "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR,                                                                                                                    "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR,                                                                                                                    "VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT,                                                                                             "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT"),
@@ -2933,7 +3048,6 @@ tcu::Format::Bitfield<32> getFormatFeatureFlagsStr (VkFormatFeatureFlags value)
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_DISJOINT_BIT_KHR,                                                                                                                                "VK_FORMAT_FEATURE_DISJOINT_BIT_KHR"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR,                                                                                                  "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR"),
-               tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT,                                                                                              "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT"),
                tcu::Format::BitDesc(VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM,                                                                                                                              "VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
@@ -2943,30 +3057,31 @@ tcu::Format::Bitfield<32> getImageCreateFlagsStr (VkImageCreateFlags value)
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_BINDING_BIT,                                                "VK_IMAGE_CREATE_SPARSE_BINDING_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT,                                              "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_ALIASED_BIT,                                                "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT,                                                "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT,                                               "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_ALIAS_BIT,                                                                 "VK_IMAGE_CREATE_ALIAS_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,                   "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,                                   "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,                   "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,                                                "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_PROTECTED_BIT,                                                             "VK_IMAGE_CREATE_PROTECTED_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_DISJOINT_BIT,                                                              "VK_IMAGE_CREATE_DISJOINT_BIT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV,                                             "VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT, "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT,                                                "VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT,                                "VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM,              "VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR,               "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR,                               "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR,               "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR,                                    "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_DISJOINT_BIT_KHR,                                                  "VK_IMAGE_CREATE_DISJOINT_BIT_KHR"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_ALIAS_BIT_KHR,                                                             "VK_IMAGE_CREATE_ALIAS_BIT_KHR"),
-               tcu::Format::BitDesc(VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM,                                                "VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_BINDING_BIT,                                                        "VK_IMAGE_CREATE_SPARSE_BINDING_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT,                                                      "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_ALIASED_BIT,                                                        "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT,                                                        "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT,                                                       "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_ALIAS_BIT,                                                                         "VK_IMAGE_CREATE_ALIAS_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,                           "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,                                           "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,                           "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,                                                        "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_PROTECTED_BIT,                                                                     "VK_IMAGE_CREATE_PROTECTED_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_DISJOINT_BIT,                                                                      "VK_IMAGE_CREATE_DISJOINT_BIT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV,                                                     "VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT,         "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT,                                                        "VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT,     "VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT,                                        "VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM,                      "VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR,                       "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR,                                       "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR,                       "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR,                                            "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_DISJOINT_BIT_KHR,                                                          "VK_IMAGE_CREATE_DISJOINT_BIT_KHR"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_ALIAS_BIT_KHR,                                                                     "VK_IMAGE_CREATE_ALIAS_BIT_KHR"),
+               tcu::Format::BitDesc(VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM,                                                        "VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
@@ -3007,7 +3122,10 @@ tcu::Format::Bitfield<32> getImageUsageFlagsStr (VkImageUsageFlags value)
                tcu::Format::BitDesc(VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR,                                   "VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR"),
                tcu::Format::BitDesc(VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR,                                   "VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR"),
                tcu::Format::BitDesc(VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR,                                   "VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR"),
+               tcu::Format::BitDesc(VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT,                   "VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"),
                tcu::Format::BitDesc(VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI,                                 "VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI"),
+               tcu::Format::BitDesc(VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM,                                             "VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM"),
+               tcu::Format::BitDesc(VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM,                                "VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM"),
                tcu::Format::BitDesc(VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV,                                  "VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV"),
                tcu::Format::BitDesc(VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM,                                                 "VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM"),
        };
@@ -3308,6 +3426,8 @@ tcu::Format::Bitfield<32> getPipelineCreateFlagsStr (VkPipelineCreateFlags value
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT,                                             "VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT"),
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT,                                                                 "VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT"),
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV,                                                                "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT,                                                 "VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"),
+               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT,                                 "VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"),
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE,                                                                                                  "VK_PIPELINE_CREATE_DISPATCH_BASE"),
                tcu::Format::BitDesc(VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,   "VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
                tcu::Format::BitDesc(VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT,    "VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"),
@@ -3415,6 +3535,8 @@ tcu::Format::Bitfield<32> getSamplerCreateFlagsStr (VkSamplerCreateFlags value)
        {
                tcu::Format::BitDesc(VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT,                                                      "VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT"),
                tcu::Format::BitDesc(VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT,        "VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT"),
+               tcu::Format::BitDesc(VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT,                           "VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT"),
+               tcu::Format::BitDesc(VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM,                                       "VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM"),
                tcu::Format::BitDesc(VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM,                                                      "VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
@@ -3463,6 +3585,7 @@ tcu::Format::Bitfield<32> getDependencyFlagsStr (VkDependencyFlags value)
                tcu::Format::BitDesc(VK_DEPENDENCY_BY_REGION_BIT,                       "VK_DEPENDENCY_BY_REGION_BIT"),
                tcu::Format::BitDesc(VK_DEPENDENCY_DEVICE_GROUP_BIT,            "VK_DEPENDENCY_DEVICE_GROUP_BIT"),
                tcu::Format::BitDesc(VK_DEPENDENCY_VIEW_LOCAL_BIT,                      "VK_DEPENDENCY_VIEW_LOCAL_BIT"),
+               tcu::Format::BitDesc(VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT,       "VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT"),
                tcu::Format::BitDesc(VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR,          "VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR"),
                tcu::Format::BitDesc(VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR,        "VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR"),
                tcu::Format::BitDesc(VK_DEPENDENCY_FLAG_BITS_MAX_ENUM,          "VK_DEPENDENCY_FLAG_BITS_MAX_ENUM"),
@@ -4137,6 +4260,7 @@ tcu::Format::Bitfield<32> getDeviceDiagnosticsConfigFlagsNVStr (VkDeviceDiagnost
                tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV,              "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV"),
                tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV,              "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV"),
                tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV,  "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV"),
+               tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV, "VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV"),
                tcu::Format::BitDesc(VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV,                                "VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
@@ -4155,6 +4279,53 @@ tcu::Format::Bitfield<32> getGraphicsPipelineLibraryFlagsEXTStr (VkGraphicsPipel
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
+tcu::Format::Bitfield<32> getImageCompressionFlagsEXTStr (VkImageCompressionFlagsEXT value)
+{
+       static const tcu::Format::BitDesc s_desc[] =
+       {
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_DEFAULT_EXT,                          "VK_IMAGE_COMPRESSION_DEFAULT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT,       "VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT,      "VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_DISABLED_EXT,                         "VK_IMAGE_COMPRESSION_DISABLED_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FLAG_BITS_MAX_ENUM_EXT,       "VK_IMAGE_COMPRESSION_FLAG_BITS_MAX_ENUM_EXT"),
+       };
+       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+tcu::Format::Bitfield<32> getImageCompressionFixedRateFlagsEXTStr (VkImageCompressionFixedRateFlagsEXT value)
+{
+       static const tcu::Format::BitDesc s_desc[] =
+       {
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT,                                  "VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT,                              "VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT,                             "VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT"),
+               tcu::Format::BitDesc(VK_IMAGE_COMPRESSION_FIXED_RATE_FLAG_BITS_MAX_ENUM_EXT,    "VK_IMAGE_COMPRESSION_FIXED_RATE_FLAG_BITS_MAX_ENUM_EXT"),
+       };
+       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
 tcu::Format::Bitfield<32> getAccelerationStructureCreateFlagsKHRStr (VkAccelerationStructureCreateFlagsKHR value)
 {
        static const tcu::Format::BitDesc s_desc[] =
@@ -4324,7 +4495,8 @@ tcu::Format::Bitfield<32> getVideoEncodeH264CapabilityFlagsEXTStr (VkVideoEncode
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
-               tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_BIT_EXT,                              "VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_BIT_EXT"),
+               tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT,              "VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT"),
+               tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT,             "VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT"),
                tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT,                             "VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT"),
                tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT,   "VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT"),
                tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT,                                             "VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT"),
@@ -4347,6 +4519,7 @@ tcu::Format::Bitfield<32> getVideoEncodeH264CapabilityFlagsEXTStr (VkVideoEncode
                tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT,                                    "VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT"),
                tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT,                               "VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT"),
                tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT,                              "VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT"),
+               tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT,                                "VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT"),
                tcu::Format::BitDesc(VK_VIDEO_ENCODE_H264_CAPABILITY_FLAG_BITS_MAX_ENUM_EXT,                                    "VK_VIDEO_ENCODE_H264_CAPABILITY_FLAG_BITS_MAX_ENUM_EXT"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
@@ -4510,6 +4683,21 @@ tcu::Format::Bitfield<32> getImageConstraintsInfoFlagsFUCHSIAStr (VkImageConstra
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
 
+tcu::Format::Bitfield<32> getExportMetalObjectTypeFlagsEXTStr (VkExportMetalObjectTypeFlagsEXT value)
+{
+       static const tcu::Format::BitDesc s_desc[] =
+       {
+               tcu::Format::BitDesc(VK_EXPORT_METAL_OBJECT_TYPE_METAL_DEVICE_BIT_EXT,                  "VK_EXPORT_METAL_OBJECT_TYPE_METAL_DEVICE_BIT_EXT"),
+               tcu::Format::BitDesc(VK_EXPORT_METAL_OBJECT_TYPE_METAL_COMMAND_QUEUE_BIT_EXT,   "VK_EXPORT_METAL_OBJECT_TYPE_METAL_COMMAND_QUEUE_BIT_EXT"),
+               tcu::Format::BitDesc(VK_EXPORT_METAL_OBJECT_TYPE_METAL_BUFFER_BIT_EXT,                  "VK_EXPORT_METAL_OBJECT_TYPE_METAL_BUFFER_BIT_EXT"),
+               tcu::Format::BitDesc(VK_EXPORT_METAL_OBJECT_TYPE_METAL_TEXTURE_BIT_EXT,                 "VK_EXPORT_METAL_OBJECT_TYPE_METAL_TEXTURE_BIT_EXT"),
+               tcu::Format::BitDesc(VK_EXPORT_METAL_OBJECT_TYPE_METAL_IOSURFACE_BIT_EXT,               "VK_EXPORT_METAL_OBJECT_TYPE_METAL_IOSURFACE_BIT_EXT"),
+               tcu::Format::BitDesc(VK_EXPORT_METAL_OBJECT_TYPE_METAL_SHARED_EVENT_BIT_EXT,    "VK_EXPORT_METAL_OBJECT_TYPE_METAL_SHARED_EVENT_BIT_EXT"),
+               tcu::Format::BitDesc(VK_EXPORT_METAL_OBJECT_TYPE_FLAG_BITS_MAX_ENUM_EXT,                "VK_EXPORT_METAL_OBJECT_TYPE_FLAG_BITS_MAX_ENUM_EXT"),
+       };
+       return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
 tcu::Format::Bitfield<32> getDeviceCreateFlagsStr (VkDeviceCreateFlags value)
 {
        return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
@@ -9412,6 +9600,26 @@ std::ostream& operator<< (std::ostream& s, const VkCheckpointData2NV& value)
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR& value)
+{
+       s << "VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tfragmentShaderBarycentric = " << value.fragmentShaderBarycentric << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR& value)
+{
+       s << "VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttriStripVertexOrderIndependentOfProvokingVertex = " << value.triStripVertexOrderIndependentOfProvokingVertex << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR& value)
 {
        s << "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = {\n";
@@ -9435,6 +9643,38 @@ std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceWorkgroupMemory
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR& value)
+{
+       s << "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\trayTracingMaintenance1 = " << value.rayTracingMaintenance1 << '\n';
+       s << "\trayTracingPipelineTraceRaysIndirect2 = " << value.rayTracingPipelineTraceRaysIndirect2 << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkTraceRaysIndirectCommand2KHR& value)
+{
+       s << "VkTraceRaysIndirectCommand2KHR = {\n";
+       s << "\traygenShaderRecordAddress = " << value.raygenShaderRecordAddress << '\n';
+       s << "\traygenShaderRecordSize = " << value.raygenShaderRecordSize << '\n';
+       s << "\tmissShaderBindingTableAddress = " << value.missShaderBindingTableAddress << '\n';
+       s << "\tmissShaderBindingTableSize = " << value.missShaderBindingTableSize << '\n';
+       s << "\tmissShaderBindingTableStride = " << value.missShaderBindingTableStride << '\n';
+       s << "\thitShaderBindingTableAddress = " << value.hitShaderBindingTableAddress << '\n';
+       s << "\thitShaderBindingTableSize = " << value.hitShaderBindingTableSize << '\n';
+       s << "\thitShaderBindingTableStride = " << value.hitShaderBindingTableStride << '\n';
+       s << "\tcallableShaderBindingTableAddress = " << value.callableShaderBindingTableAddress << '\n';
+       s << "\tcallableShaderBindingTableSize = " << value.callableShaderBindingTableSize << '\n';
+       s << "\tcallableShaderBindingTableStride = " << value.callableShaderBindingTableStride << '\n';
+       s << "\twidth = " << value.width << '\n';
+       s << "\theight = " << value.height << '\n';
+       s << "\tdepth = " << value.depth << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value)
 {
        s << "VkDebugReportCallbackCreateInfoEXT = {\n";
@@ -9740,6 +9980,42 @@ std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceASTCDecodeFeatu
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelineRobustnessFeaturesEXT& value)
+{
+       s << "VkPhysicalDevicePipelineRobustnessFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tpipelineRobustness = " << value.pipelineRobustness << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelineRobustnessPropertiesEXT& value)
+{
+       s << "VkPhysicalDevicePipelineRobustnessPropertiesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tdefaultRobustnessStorageBuffers = " << value.defaultRobustnessStorageBuffers << '\n';
+       s << "\tdefaultRobustnessUniformBuffers = " << value.defaultRobustnessUniformBuffers << '\n';
+       s << "\tdefaultRobustnessVertexInputs = " << value.defaultRobustnessVertexInputs << '\n';
+       s << "\tdefaultRobustnessImages = " << value.defaultRobustnessImages << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPipelineRobustnessCreateInfoEXT& value)
+{
+       s << "VkPipelineRobustnessCreateInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tstorageBuffers = " << value.storageBuffers << '\n';
+       s << "\tuniformBuffers = " << value.uniformBuffers << '\n';
+       s << "\tvertexInputs = " << value.vertexInputs << '\n';
+       s << "\timages = " << value.images << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkConditionalRenderingBeginInfoEXT& value)
 {
        s << "VkConditionalRenderingBeginInfoEXT = {\n";
@@ -10873,16 +11149,6 @@ std::ostream& operator<< (std::ostream& s, const VkDrawMeshTasksIndirectCommandN
        return s;
 }
 
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV& value)
-{
-       s << "VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV = {\n";
-       s << "\tsType = " << value.sType << '\n';
-       s << "\tpNext = " << value.pNext << '\n';
-       s << "\tfragmentShaderBarycentric = " << value.fragmentShaderBarycentric << '\n';
-       s << '}';
-       return s;
-}
-
 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderImageFootprintFeaturesNV& value)
 {
        s << "VkPhysicalDeviceShaderImageFootprintFeaturesNV = {\n";
@@ -11807,6 +12073,16 @@ std::ostream& operator<< (std::ostream& s, const VkGraphicsPipelineLibraryCreate
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD& value)
+{
+       s << "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tshaderEarlyAndLateFragmentTests = " << value.shaderEarlyAndLateFragmentTests << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV& value)
 {
        s << "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV = {\n";
@@ -11996,6 +12272,69 @@ std::ostream& operator<< (std::ostream& s, const VkCopyCommandTransformInfoQCOM&
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceImageCompressionControlFeaturesEXT& value)
+{
+       s << "VkPhysicalDeviceImageCompressionControlFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\timageCompressionControl = " << value.imageCompressionControl << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImageCompressionControlEXT& value)
+{
+       s << "VkImageCompressionControlEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tflags = " << getImageCompressionFlagsEXTStr(value.flags) << '\n';
+       s << "\tcompressionControlPlaneCount = " << value.compressionControlPlaneCount << '\n';
+       s << "\tpFixedRateFlags = " << value.pFixedRateFlags << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkSubresourceLayout2EXT& value)
+{
+       s << "VkSubresourceLayout2EXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tsubresourceLayout = " << value.subresourceLayout << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImageSubresource2EXT& value)
+{
+       s << "VkImageSubresource2EXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\timageSubresource = " << value.imageSubresource << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImageCompressionPropertiesEXT& value)
+{
+       s << "VkImageCompressionPropertiesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\timageCompressionFlags = " << getImageCompressionFlagsEXTStr(value.imageCompressionFlags) << '\n';
+       s << "\timageCompressionFixedRateFlags = " << getImageCompressionFixedRateFlagsEXTStr(value.imageCompressionFixedRateFlags) << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT& value)
+{
+       s << "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tattachmentFeedbackLoopLayout = " << value.attachmentFeedbackLoopLayout << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkPhysicalDevice4444FormatsFeaturesEXT& value)
 {
        s << "VkPhysicalDevice4444FormatsFeaturesEXT = {\n";
@@ -12203,6 +12542,57 @@ std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalMemoryR
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPipelinePropertiesIdentifierEXT& value)
+{
+       s << "VkPipelinePropertiesIdentifierEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tpipelineIdentifier = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.pipelineIdentifier)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.pipelineIdentifier))) << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelinePropertiesFeaturesEXT& value)
+{
+       s << "VkPhysicalDevicePipelinePropertiesFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tpipelinePropertiesIdentifier = " << value.pipelinePropertiesIdentifier << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT& value)
+{
+       s << "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmultisampledRenderToSingleSampled = " << value.multisampledRenderToSingleSampled << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkSubpassResolvePerformanceQueryEXT& value)
+{
+       s << "VkSubpassResolvePerformanceQueryEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\toptimal = " << value.optimal << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkMultisampledRenderToSingleSampledInfoEXT& value)
+{
+       s << "VkMultisampledRenderToSingleSampledInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmultisampledRenderToSingleSampledEnable = " << value.multisampledRenderToSingleSampledEnable << '\n';
+       s << "\trasterizationSamples = " << value.rasterizationSamples << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT& value)
 {
        s << "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT = {\n";
@@ -12382,6 +12772,16 @@ std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutHostMappin
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT& value)
+{
+       s << "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tnonSeamlessCubeMap = " << value.nonSeamlessCubeMap << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM& value)
 {
        s << "VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = {\n";
@@ -12423,6 +12823,196 @@ std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceLinearColorAtta
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT& value)
+{
+       s << "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\timageCompressionControlSwapchain = " << value.imageCompressionControlSwapchain << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImageViewSampleWeightCreateInfoQCOM& value)
+{
+       s << "VkImageViewSampleWeightCreateInfoQCOM = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tfilterCenter = " << value.filterCenter << '\n';
+       s << "\tfilterSize = " << value.filterSize << '\n';
+       s << "\tnumPhases = " << value.numPhases << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceImageProcessingFeaturesQCOM& value)
+{
+       s << "VkPhysicalDeviceImageProcessingFeaturesQCOM = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttextureSampleWeighted = " << value.textureSampleWeighted << '\n';
+       s << "\ttextureBoxFilter = " << value.textureBoxFilter << '\n';
+       s << "\ttextureBlockMatch = " << value.textureBlockMatch << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceImageProcessingPropertiesQCOM& value)
+{
+       s << "VkPhysicalDeviceImageProcessingPropertiesQCOM = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmaxWeightFilterPhases = " << value.maxWeightFilterPhases << '\n';
+       s << "\tmaxWeightFilterDimension = " << value.maxWeightFilterDimension << '\n';
+       s << "\tmaxBlockMatchRegion = " << value.maxBlockMatchRegion << '\n';
+       s << "\tmaxBoxFilterBlockSize = " << value.maxBoxFilterBlockSize << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT& value)
+{
+       s << "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tsubpassMergeFeedback = " << value.subpassMergeFeedback << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRenderPassCreationControlEXT& value)
+{
+       s << "VkRenderPassCreationControlEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tdisallowMerging = " << value.disallowMerging << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRenderPassCreationFeedbackInfoEXT& value)
+{
+       s << "VkRenderPassCreationFeedbackInfoEXT = {\n";
+       s << "\tpostMergeSubpassCount = " << value.postMergeSubpassCount << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRenderPassCreationFeedbackCreateInfoEXT& value)
+{
+       s << "VkRenderPassCreationFeedbackCreateInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tpRenderPassFeedback = " << value.pRenderPassFeedback << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRenderPassSubpassFeedbackInfoEXT& value)
+{
+       s << "VkRenderPassSubpassFeedbackInfoEXT = {\n";
+       s << "\tsubpassMergeStatus = " << value.subpassMergeStatus << '\n';
+       s << "\tdescription = " << (const char*)value.description << '\n';
+       s << "\tpostMergeIndex = " << value.postMergeIndex << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkRenderPassSubpassFeedbackCreateInfoEXT& value)
+{
+       s << "VkRenderPassSubpassFeedbackCreateInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tpSubpassFeedback = " << value.pSubpassFeedback << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT& value)
+{
+       s << "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tshaderModuleIdentifier = " << value.shaderModuleIdentifier << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT& value)
+{
+       s << "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tshaderModuleIdentifierAlgorithmUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.shaderModuleIdentifierAlgorithmUUID)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.shaderModuleIdentifierAlgorithmUUID))) << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPipelineShaderStageModuleIdentifierCreateInfoEXT& value)
+{
+       s << "VkPipelineShaderStageModuleIdentifierCreateInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tidentifierSize = " << value.identifierSize << '\n';
+       s << "\tpIdentifier = " << value.pIdentifier << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkShaderModuleIdentifierEXT& value)
+{
+       s << "VkShaderModuleIdentifierEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tidentifierSize = " << value.identifierSize << '\n';
+       s << "\tidentifier = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.identifier)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.identifier))) << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceTilePropertiesFeaturesQCOM& value)
+{
+       s << "VkPhysicalDeviceTilePropertiesFeaturesQCOM = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttileProperties = " << value.tileProperties << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkTilePropertiesQCOM& value)
+{
+       s << "VkTilePropertiesQCOM = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\ttileSize = " << value.tileSize << '\n';
+       s << "\tapronSize = " << value.apronSize << '\n';
+       s << "\torigin = " << value.origin << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceAmigoProfilingFeaturesSEC& value)
+{
+       s << "VkPhysicalDeviceAmigoProfilingFeaturesSEC = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tamigoProfiling = " << value.amigoProfiling << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAmigoProfilingSubmitInfoSEC& value)
+{
+       s << "VkAmigoProfilingSubmitInfoSEC = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tfirstDrawTimestamp = " << value.firstDrawTimestamp << '\n';
+       s << "\tswapBufferTimestamp = " << value.swapBufferTimestamp << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkDeviceOrHostAddressKHR& value)
 {
        s << "VkDeviceOrHostAddressKHR = {\n";
@@ -12855,7 +13445,7 @@ std::ostream& operator<< (std::ostream& s, const VkQueueFamilyQueryResultStatusP
        s << "VkQueueFamilyQueryResultStatusProperties2KHR = {\n";
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
-       s << "\tsupported = " << value.supported << '\n';
+       s << "\tqueryResultStatusSupport = " << value.queryResultStatusSupport << '\n';
        s << '}';
        return s;
 }
@@ -12918,7 +13508,6 @@ std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceVideoFormatInfo
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
        s << "\timageUsage = " << getImageUsageFlagsStr(value.imageUsage) << '\n';
-       s << "\tpVideoProfiles = " << value.pVideoProfiles << '\n';
        s << '}';
        return s;
 }
@@ -12929,6 +13518,11 @@ std::ostream& operator<< (std::ostream& s, const VkVideoFormatPropertiesKHR& val
        s << "\tsType = " << value.sType << '\n';
        s << "\tpNext = " << value.pNext << '\n';
        s << "\tformat = " << value.format << '\n';
+       s << "\tcomponentMapping = " << value.componentMapping << '\n';
+       s << "\timageCreateFlags = " << getImageCreateFlagsStr(value.imageCreateFlags) << '\n';
+       s << "\timageType = " << value.imageType << '\n';
+       s << "\timageTiling = " << value.imageTiling << '\n';
+       s << "\timageUsageFlags = " << getImageUsageFlagsStr(value.imageUsageFlags) << '\n';
        s << '}';
        return s;
 }
@@ -13857,7 +14451,6 @@ std::ostream& operator<< (std::ostream& s, const StdVideoH265SequenceParameterSe
        s << "\tbit_depth_luma_minus8 = " << value.bit_depth_luma_minus8 << '\n';
        s << "\tbit_depth_chroma_minus8 = " << value.bit_depth_chroma_minus8 << '\n';
        s << "\tlog2_max_pic_order_cnt_lsb_minus4 = " << value.log2_max_pic_order_cnt_lsb_minus4 << '\n';
-       s << "\tsps_max_dec_pic_buffering_minus1 = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.sps_max_dec_pic_buffering_minus1)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.sps_max_dec_pic_buffering_minus1))) << '\n';
        s << "\tlog2_min_luma_coding_block_size_minus3 = " << value.log2_min_luma_coding_block_size_minus3 << '\n';
        s << "\tlog2_diff_max_min_luma_coding_block_size = " << value.log2_diff_max_min_luma_coding_block_size << '\n';
        s << "\tlog2_min_luma_transform_block_size_minus2 = " << value.log2_min_luma_transform_block_size_minus2 << '\n';
@@ -14823,6 +15416,135 @@ std::ostream& operator<< (std::ostream& s, const VkMetalSurfaceCreateInfoEXT& va
        return s;
 }
 
+std::ostream& operator<< (std::ostream& s, const VkExportMetalObjectCreateInfoEXT& value)
+{
+       s << "VkExportMetalObjectCreateInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\texportObjectType = " << value.exportObjectType << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalObjectsInfoEXT& value)
+{
+       s << "VkExportMetalObjectsInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalDeviceInfoEXT& value)
+{
+       s << "VkExportMetalDeviceInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmtlDevice = " << value.mtlDevice << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalCommandQueueInfoEXT& value)
+{
+       s << "VkExportMetalCommandQueueInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tqueue = " << value.queue << '\n';
+       s << "\tmtlCommandQueue = " << value.mtlCommandQueue << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalBufferInfoEXT& value)
+{
+       s << "VkExportMetalBufferInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmemory = " << value.memory << '\n';
+       s << "\tmtlBuffer = " << value.mtlBuffer << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImportMetalBufferInfoEXT& value)
+{
+       s << "VkImportMetalBufferInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmtlBuffer = " << value.mtlBuffer << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalTextureInfoEXT& value)
+{
+       s << "VkExportMetalTextureInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\timage = " << value.image << '\n';
+       s << "\timageView = " << value.imageView << '\n';
+       s << "\tbufferView = " << value.bufferView << '\n';
+       s << "\tplane = " << value.plane << '\n';
+       s << "\tmtlTexture = " << value.mtlTexture << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImportMetalTextureInfoEXT& value)
+{
+       s << "VkImportMetalTextureInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tplane = " << value.plane << '\n';
+       s << "\tmtlTexture = " << value.mtlTexture << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalIOSurfaceInfoEXT& value)
+{
+       s << "VkExportMetalIOSurfaceInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\timage = " << value.image << '\n';
+       s << "\tioSurface = " << value.ioSurface << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImportMetalIOSurfaceInfoEXT& value)
+{
+       s << "VkImportMetalIOSurfaceInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tioSurface = " << value.ioSurface << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalSharedEventInfoEXT& value)
+{
+       s << "VkExportMetalSharedEventInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tsemaphore = " << value.semaphore << '\n';
+       s << "\tevent = " << value.event << '\n';
+       s << "\tmtlSharedEvent = " << value.mtlSharedEvent << '\n';
+       s << '}';
+       return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImportMetalSharedEventInfoEXT& value)
+{
+       s << "VkImportMetalSharedEventInfoEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tmtlSharedEvent = " << value.mtlSharedEvent << '\n';
+       s << '}';
+       return s;
+}
+
 std::ostream& operator<< (std::ostream& s, const VkViSurfaceCreateInfoNN& value)
 {
        s << "VkViSurfaceCreateInfoNN = {\n";
index b717790..17f3b84 100644 (file)
@@ -3580,6 +3580,20 @@ struct VkCheckpointData2NV
        void*                                   pCheckpointMarker;
 };
 
+struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                fragmentShaderBarycentric;
+};
+
+struct VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                triStripVertexOrderIndependentOfProvokingVertex;
+};
+
 struct VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR
 {
        VkStructureType sType;
@@ -3597,6 +3611,32 @@ struct VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR
        VkBool32                workgroupMemoryExplicitLayout16BitAccess;
 };
 
+struct VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                rayTracingMaintenance1;
+       VkBool32                rayTracingPipelineTraceRaysIndirect2;
+};
+
+struct VkTraceRaysIndirectCommand2KHR
+{
+       VkDeviceAddress raygenShaderRecordAddress;
+       VkDeviceSize    raygenShaderRecordSize;
+       VkDeviceAddress missShaderBindingTableAddress;
+       VkDeviceSize    missShaderBindingTableSize;
+       VkDeviceSize    missShaderBindingTableStride;
+       VkDeviceAddress hitShaderBindingTableAddress;
+       VkDeviceSize    hitShaderBindingTableSize;
+       VkDeviceSize    hitShaderBindingTableStride;
+       VkDeviceAddress callableShaderBindingTableAddress;
+       VkDeviceSize    callableShaderBindingTableSize;
+       VkDeviceSize    callableShaderBindingTableStride;
+       uint32_t                width;
+       uint32_t                height;
+       uint32_t                depth;
+};
+
 struct VkDebugReportCallbackCreateInfoEXT
 {
        VkStructureType                                 sType;
@@ -3824,6 +3864,33 @@ struct VkPhysicalDeviceASTCDecodeFeaturesEXT
        VkBool32                decodeModeSharedExponent;
 };
 
+struct VkPhysicalDevicePipelineRobustnessFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                pipelineRobustness;
+};
+
+struct VkPhysicalDevicePipelineRobustnessPropertiesEXT
+{
+       VkStructureType                                                 sType;
+       void*                                                                   pNext;
+       VkPipelineRobustnessBufferBehaviorEXT   defaultRobustnessStorageBuffers;
+       VkPipelineRobustnessBufferBehaviorEXT   defaultRobustnessUniformBuffers;
+       VkPipelineRobustnessBufferBehaviorEXT   defaultRobustnessVertexInputs;
+       VkPipelineRobustnessImageBehaviorEXT    defaultRobustnessImages;
+};
+
+struct VkPipelineRobustnessCreateInfoEXT
+{
+       VkStructureType                                                 sType;
+       const void*                                                             pNext;
+       VkPipelineRobustnessBufferBehaviorEXT   storageBuffers;
+       VkPipelineRobustnessBufferBehaviorEXT   uniformBuffers;
+       VkPipelineRobustnessBufferBehaviorEXT   vertexInputs;
+       VkPipelineRobustnessImageBehaviorEXT    images;
+};
+
 struct VkConditionalRenderingBeginInfoEXT
 {
        VkStructureType                                 sType;
@@ -4669,13 +4736,6 @@ struct VkDrawMeshTasksIndirectCommandNV
        uint32_t        firstTask;
 };
 
-struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV
-{
-       VkStructureType sType;
-       void*                   pNext;
-       VkBool32                fragmentShaderBarycentric;
-};
-
 struct VkPhysicalDeviceShaderImageFootprintFeaturesNV
 {
        VkStructureType sType;
@@ -5360,6 +5420,13 @@ struct VkGraphicsPipelineLibraryCreateInfoEXT
        VkGraphicsPipelineLibraryFlagsEXT       flags;
 };
 
+struct VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                shaderEarlyAndLateFragmentTests;
+};
+
 struct VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV
 {
        VkStructureType sType;
@@ -5501,6 +5568,51 @@ struct VkCopyCommandTransformInfoQCOM
        VkSurfaceTransformFlagBitsKHR   transform;
 };
 
+struct VkPhysicalDeviceImageCompressionControlFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                imageCompressionControl;
+};
+
+struct VkImageCompressionControlEXT
+{
+       VkStructureType                                                 sType;
+       const void*                                                             pNext;
+       VkImageCompressionFlagsEXT                              flags;
+       uint32_t                                                                compressionControlPlaneCount;
+       VkImageCompressionFixedRateFlagsEXT*    pFixedRateFlags;
+};
+
+struct VkSubresourceLayout2EXT
+{
+       VkStructureType         sType;
+       void*                           pNext;
+       VkSubresourceLayout     subresourceLayout;
+};
+
+struct VkImageSubresource2EXT
+{
+       VkStructureType         sType;
+       void*                           pNext;
+       VkImageSubresource      imageSubresource;
+};
+
+struct VkImageCompressionPropertiesEXT
+{
+       VkStructureType                                         sType;
+       void*                                                           pNext;
+       VkImageCompressionFlagsEXT                      imageCompressionFlags;
+       VkImageCompressionFixedRateFlagsEXT     imageCompressionFixedRateFlags;
+};
+
+struct VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                attachmentFeedbackLoopLayout;
+};
+
 struct VkPhysicalDevice4444FormatsFeaturesEXT
 {
        VkStructureType sType;
@@ -5651,6 +5763,42 @@ struct VkPhysicalDeviceExternalMemoryRDMAFeaturesNV
        VkBool32                externalMemoryRDMA;
 };
 
+struct VkPipelinePropertiesIdentifierEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       uint8_t                 pipelineIdentifier[VK_UUID_SIZE];
+};
+
+struct VkPhysicalDevicePipelinePropertiesFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                pipelinePropertiesIdentifier;
+};
+
+struct VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                multisampledRenderToSingleSampled;
+};
+
+struct VkSubpassResolvePerformanceQueryEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                optimal;
+};
+
+struct VkMultisampledRenderToSingleSampledInfoEXT
+{
+       VkStructureType                 sType;
+       const void*                             pNext;
+       VkBool32                                multisampledRenderToSingleSampledEnable;
+       VkSampleCountFlagBits   rasterizationSamples;
+};
+
 struct VkPhysicalDeviceExtendedDynamicState2FeaturesEXT
 {
        VkStructureType sType;
@@ -5779,6 +5927,13 @@ struct VkDescriptorSetLayoutHostMappingInfoVALVE
        uint32_t                descriptorSize;
 };
 
+struct VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                nonSeamlessCubeMap;
+};
+
 struct VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM
 {
        VkStructureType sType;
@@ -5808,6 +5963,142 @@ struct VkPhysicalDeviceLinearColorAttachmentFeaturesNV
        VkBool32                linearColorAttachment;
 };
 
+struct VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                imageCompressionControlSwapchain;
+};
+
+struct VkImageViewSampleWeightCreateInfoQCOM
+{
+       VkStructureType sType;
+       const void*             pNext;
+       VkOffset2D              filterCenter;
+       VkExtent2D              filterSize;
+       uint32_t                numPhases;
+};
+
+struct VkPhysicalDeviceImageProcessingFeaturesQCOM
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                textureSampleWeighted;
+       VkBool32                textureBoxFilter;
+       VkBool32                textureBlockMatch;
+};
+
+struct VkPhysicalDeviceImageProcessingPropertiesQCOM
+{
+       VkStructureType sType;
+       void*                   pNext;
+       uint32_t                maxWeightFilterPhases;
+       VkExtent2D              maxWeightFilterDimension;
+       VkExtent2D              maxBlockMatchRegion;
+       VkExtent2D              maxBoxFilterBlockSize;
+};
+
+struct VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                subpassMergeFeedback;
+};
+
+struct VkRenderPassCreationControlEXT
+{
+       VkStructureType sType;
+       const void*             pNext;
+       VkBool32                disallowMerging;
+};
+
+struct VkRenderPassCreationFeedbackInfoEXT
+{
+       uint32_t        postMergeSubpassCount;
+};
+
+struct VkRenderPassCreationFeedbackCreateInfoEXT
+{
+       VkStructureType                                                 sType;
+       const void*                                                             pNext;
+       VkRenderPassCreationFeedbackInfoEXT*    pRenderPassFeedback;
+};
+
+struct VkRenderPassSubpassFeedbackInfoEXT
+{
+       VkSubpassMergeStatusEXT subpassMergeStatus;
+       char                                    description[VK_MAX_DESCRIPTION_SIZE];
+       uint32_t                                postMergeIndex;
+};
+
+struct VkRenderPassSubpassFeedbackCreateInfoEXT
+{
+       VkStructureType                                         sType;
+       const void*                                                     pNext;
+       VkRenderPassSubpassFeedbackInfoEXT*     pSubpassFeedback;
+};
+
+struct VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                shaderModuleIdentifier;
+};
+
+struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       uint8_t                 shaderModuleIdentifierAlgorithmUUID[VK_UUID_SIZE];
+};
+
+struct VkPipelineShaderStageModuleIdentifierCreateInfoEXT
+{
+       VkStructureType sType;
+       const void*             pNext;
+       uint32_t                identifierSize;
+       const uint8_t*  pIdentifier;
+};
+
+struct VkShaderModuleIdentifierEXT
+{
+       VkStructureType sType;
+       void*                   pNext;
+       uint32_t                identifierSize;
+       uint8_t                 identifier[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT];
+};
+
+struct VkPhysicalDeviceTilePropertiesFeaturesQCOM
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                tileProperties;
+};
+
+struct VkTilePropertiesQCOM
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkExtent3D              tileSize;
+       VkExtent2D              apronSize;
+       VkOffset2D              origin;
+};
+
+struct VkPhysicalDeviceAmigoProfilingFeaturesSEC
+{
+       VkStructureType sType;
+       void*                   pNext;
+       VkBool32                amigoProfiling;
+};
+
+struct VkAmigoProfilingSubmitInfoSEC
+{
+       VkStructureType sType;
+       const void*             pNext;
+       uint64_t                firstDrawTimestamp;
+       uint64_t                swapBufferTimestamp;
+};
+
 union VkDeviceOrHostAddressKHR
 {
        VkDeviceAddress deviceAddress;
@@ -6137,7 +6428,7 @@ struct VkQueueFamilyQueryResultStatusProperties2KHR
 {
        VkStructureType sType;
        void*                   pNext;
-       VkBool32                supported;
+       VkBool32                queryResultStatusSupport;
 };
 
 struct VkVideoQueueFamilyProperties2KHR
@@ -6150,7 +6441,7 @@ struct VkVideoQueueFamilyProperties2KHR
 struct VkVideoProfileKHR
 {
        VkStructureType                                         sType;
-       void*                                                           pNext;
+       const void*                                                     pNext;
        VkVideoCodecOperationFlagBitsKHR        videoCodecOperation;
        VkVideoChromaSubsamplingFlagsKHR        chromaSubsampling;
        VkVideoComponentBitDepthFlagsKHR        lumaBitDepth;
@@ -6160,7 +6451,7 @@ struct VkVideoProfileKHR
 struct VkVideoProfilesKHR
 {
        VkStructureType                         sType;
-       void*                                           pNext;
+       const void*                                     pNext;
        uint32_t                                        profileCount;
        const VkVideoProfileKHR*        pProfiles;
 };
@@ -6182,17 +6473,21 @@ struct VkVideoCapabilitiesKHR
 
 struct VkPhysicalDeviceVideoFormatInfoKHR
 {
-       VkStructureType                         sType;
-       void*                                           pNext;
-       VkImageUsageFlags                       imageUsage;
-       const VkVideoProfilesKHR*       pVideoProfiles;
+       VkStructureType         sType;
+       void*                           pNext;
+       VkImageUsageFlags       imageUsage;
 };
 
 struct VkVideoFormatPropertiesKHR
 {
-       VkStructureType sType;
-       void*                   pNext;
-       VkFormat                format;
+       VkStructureType         sType;
+       void*                           pNext;
+       VkFormat                        format;
+       VkComponentMapping      componentMapping;
+       VkImageCreateFlags      imageCreateFlags;
+       VkImageType                     imageType;
+       VkImageTiling           imageTiling;
+       VkImageUsageFlags       imageUsageFlags;
 };
 
 struct VkVideoPictureResourceKHR
@@ -6932,7 +7227,6 @@ struct StdVideoH265SequenceParameterSet
        uint8_t                                                                         bit_depth_luma_minus8;
        uint8_t                                                                         bit_depth_chroma_minus8;
        uint8_t                                                                         log2_max_pic_order_cnt_lsb_minus4;
-       uint8_t                                                                         sps_max_dec_pic_buffering_minus1[STD_VIDEO_H265_SPS_MAX_SUB_LAYERS];
        uint8_t                                                                         log2_min_luma_coding_block_size_minus3;
        uint8_t                                                                         log2_diff_max_min_luma_coding_block_size;
        uint8_t                                                                         log2_min_luma_transform_block_size_minus2;
@@ -7686,6 +7980,99 @@ struct VkMetalSurfaceCreateInfoEXT
        const pt::CAMetalLayer*                 pLayer;
 };
 
+struct VkExportMetalObjectCreateInfoEXT
+{
+       VkStructureType                                         sType;
+       const void*                                                     pNext;
+       VkExportMetalObjectTypeFlagBitsEXT      exportObjectType;
+};
+
+struct VkExportMetalObjectsInfoEXT
+{
+       VkStructureType sType;
+       const void*             pNext;
+};
+
+struct VkExportMetalDeviceInfoEXT
+{
+       VkStructureType         sType;
+       const void*                     pNext;
+       pt::MTLDevice_id        mtlDevice;
+};
+
+struct VkExportMetalCommandQueueInfoEXT
+{
+       VkStructureType                 sType;
+       const void*                             pNext;
+       VkQueue                                 queue;
+       pt::MTLCommandQueue_id  mtlCommandQueue;
+};
+
+struct VkExportMetalBufferInfoEXT
+{
+       VkStructureType         sType;
+       const void*                     pNext;
+       VkDeviceMemory          memory;
+       pt::MTLBuffer_id        mtlBuffer;
+};
+
+struct VkImportMetalBufferInfoEXT
+{
+       VkStructureType         sType;
+       const void*                     pNext;
+       pt::MTLBuffer_id        mtlBuffer;
+};
+
+struct VkExportMetalTextureInfoEXT
+{
+       VkStructureType                 sType;
+       const void*                             pNext;
+       VkImage                                 image;
+       VkImageView                             imageView;
+       VkBufferView                    bufferView;
+       VkImageAspectFlagBits   plane;
+       pt::MTLTexture_id               mtlTexture;
+};
+
+struct VkImportMetalTextureInfoEXT
+{
+       VkStructureType                 sType;
+       const void*                             pNext;
+       VkImageAspectFlagBits   plane;
+       pt::MTLTexture_id               mtlTexture;
+};
+
+struct VkExportMetalIOSurfaceInfoEXT
+{
+       VkStructureType         sType;
+       const void*                     pNext;
+       VkImage                         image;
+       pt::IOSurfaceRef        ioSurface;
+};
+
+struct VkImportMetalIOSurfaceInfoEXT
+{
+       VkStructureType         sType;
+       const void*                     pNext;
+       pt::IOSurfaceRef        ioSurface;
+};
+
+struct VkExportMetalSharedEventInfoEXT
+{
+       VkStructureType                 sType;
+       const void*                             pNext;
+       VkSemaphore                             semaphore;
+       VkEvent                                 event;
+       pt::MTLSharedEvent_id   mtlSharedEvent;
+};
+
+struct VkImportMetalSharedEventInfoEXT
+{
+       VkStructureType                 sType;
+       const void*                             pNext;
+       pt::MTLSharedEvent_id   mtlSharedEvent;
+};
+
 struct VkViSurfaceCreateInfoNN
 {
        VkStructureType                         sType;
@@ -8216,6 +8603,10 @@ typedef VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR VkPhysicalDeviceGlobalPri
 
 typedef VkQueueFamilyGlobalPriorityPropertiesKHR VkQueueFamilyGlobalPriorityPropertiesEXT;
 
+typedef VkPipelineInfoKHR VkPipelineInfoEXT;
+
+typedef VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV;
+
 typedef VkTransformMatrixKHR VkTransformMatrixNV;
 
 typedef VkAabbPositionsKHR VkAabbPositionsNV;
index 5d03a8f..903422b 100644 (file)
@@ -442,6 +442,26 @@ inline VkPresentRegionKHR makePresentRegionKHR (uint32_t rectangleCount, const V
        return res;
 }
 
+inline VkTraceRaysIndirectCommand2KHR makeTraceRaysIndirectCommand2KHR (VkDeviceAddress raygenShaderRecordAddress, VkDeviceSize raygenShaderRecordSize, VkDeviceAddress missShaderBindingTableAddress, VkDeviceSize missShaderBindingTableSize, VkDeviceSize missShaderBindingTableStride, VkDeviceAddress hitShaderBindingTableAddress, VkDeviceSize hitShaderBindingTableSize, VkDeviceSize hitShaderBindingTableStride, VkDeviceAddress callableShaderBindingTableAddress, VkDeviceSize callableShaderBindingTableSize, VkDeviceSize callableShaderBindingTableStride, uint32_t width, uint32_t height, uint32_t depth)
+{
+       VkTraceRaysIndirectCommand2KHR res;
+       res.raygenShaderRecordAddress                   = raygenShaderRecordAddress;
+       res.raygenShaderRecordSize                              = raygenShaderRecordSize;
+       res.missShaderBindingTableAddress               = missShaderBindingTableAddress;
+       res.missShaderBindingTableSize                  = missShaderBindingTableSize;
+       res.missShaderBindingTableStride                = missShaderBindingTableStride;
+       res.hitShaderBindingTableAddress                = hitShaderBindingTableAddress;
+       res.hitShaderBindingTableSize                   = hitShaderBindingTableSize;
+       res.hitShaderBindingTableStride                 = hitShaderBindingTableStride;
+       res.callableShaderBindingTableAddress   = callableShaderBindingTableAddress;
+       res.callableShaderBindingTableSize              = callableShaderBindingTableSize;
+       res.callableShaderBindingTableStride    = callableShaderBindingTableStride;
+       res.width                                                               = width;
+       res.height                                                              = height;
+       res.depth                                                               = depth;
+       return res;
+}
+
 inline VkShaderResourceUsageAMD makeShaderResourceUsageAMD (uint32_t numUsedVgprs, uint32_t numUsedSgprs, uint32_t ldsSizePerLocalWorkGroup, size_t ldsUsageSizeInBytes, size_t scratchMemUsageInBytes)
 {
        VkShaderResourceUsageAMD res;
@@ -673,6 +693,13 @@ inline VkMultiDrawIndexedInfoEXT makeMultiDrawIndexedInfoEXT (uint32_t firstInde
        return res;
 }
 
+inline VkRenderPassCreationFeedbackInfoEXT makeRenderPassCreationFeedbackInfoEXT (uint32_t postMergeSubpassCount)
+{
+       VkRenderPassCreationFeedbackInfoEXT res;
+       res.postMergeSubpassCount       = postMergeSubpassCount;
+       return res;
+}
+
 inline VkAccelerationStructureBuildRangeInfoKHR makeAccelerationStructureBuildRangeInfoKHR (uint32_t primitiveCount, uint32_t primitiveOffset, uint32_t firstVertex, uint32_t transformOffset)
 {
        VkAccelerationStructureBuildRangeInfoKHR res;
index b407c86..1ff25ff 100644 (file)
@@ -221,6 +221,7 @@ virtual VkResult                    getPipelineExecutableStatisticsKHR                              (VkDevice device, const
 virtual VkResult                       getPipelineExecutableInternalRepresentationsKHR (VkDevice device, const VkPipelineExecutableInfoKHR* pExecutableInfo, uint32_t* pInternalRepresentationCount, VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations) const = 0;
 virtual void                           cmdWriteBufferMarker2AMD                                                (VkCommandBuffer commandBuffer, VkPipelineStageFlags2 stage, VkBuffer dstBuffer, VkDeviceSize dstOffset, uint32_t marker) const = 0;
 virtual void                           getQueueCheckpointData2NV                                               (VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointData2NV* pCheckpointData) const = 0;
+virtual void                           cmdTraceRaysIndirect2KHR                                                (VkCommandBuffer commandBuffer, VkDeviceAddress indirectDeviceAddress) const = 0;
 virtual VkResult                       debugMarkerSetObjectTagEXT                                              (VkDevice device, const VkDebugMarkerObjectTagInfoEXT* pTagInfo) const = 0;
 virtual VkResult                       debugMarkerSetObjectNameEXT                                             (VkDevice device, const VkDebugMarkerObjectNameInfoEXT* pNameInfo) const = 0;
 virtual void                           cmdDebugMarkerBeginEXT                                                  (VkCommandBuffer commandBuffer, const VkDebugMarkerMarkerInfoEXT* pMarkerInfo) const = 0;
@@ -311,11 +312,13 @@ virtual void                              cmdBindPipelineShaderGroupNV                                    (VkCommandBuffer commandBuffer,
 virtual VkResult                       createIndirectCommandsLayoutNV                                  (VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkIndirectCommandsLayoutNV* pIndirectCommandsLayout) const = 0;
 virtual void                           destroyIndirectCommandsLayoutNV                                 (VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks* pAllocator) const = 0;
 virtual void                           cmdSetFragmentShadingRateEnumNV                                 (VkCommandBuffer commandBuffer, VkFragmentShadingRateNV shadingRate, const VkFragmentShadingRateCombinerOpKHR combinerOps[2]) const = 0;
+virtual void                           getImageSubresourceLayout2EXT                                   (VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout) const = 0;
 virtual void                           cmdSetVertexInputEXT                                                    (VkCommandBuffer commandBuffer, uint32_t vertexBindingDescriptionCount, const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions, uint32_t vertexAttributeDescriptionCount, const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions) const = 0;
 virtual VkResult                       getDeviceSubpassShadingMaxWorkgroupSizeHUAWEI   (VkDevice device, VkRenderPass renderpass, VkExtent2D* pMaxWorkgroupSize) const = 0;
 virtual void                           cmdSubpassShadingHUAWEI                                                 (VkCommandBuffer commandBuffer) const = 0;
 virtual void                           cmdBindInvocationMaskHUAWEI                                             (VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout) const = 0;
 virtual VkResult                       getMemoryRemoteAddressNV                                                (VkDevice device, const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo, VkRemoteAddressNV* pAddress) const = 0;
+virtual VkResult                       getPipelinePropertiesEXT                                                (VkDevice device, const VkPipelineInfoEXT* pPipelineInfo, VkBaseOutStructure* pPipelineProperties) const = 0;
 virtual void                           cmdSetPatchControlPointsEXT                                             (VkCommandBuffer commandBuffer, uint32_t patchControlPoints) const = 0;
 virtual void                           cmdSetLogicOpEXT                                                                (VkCommandBuffer commandBuffer, VkLogicOp logicOp) const = 0;
 virtual void                           cmdSetColorWriteEnableEXT                                               (VkCommandBuffer commandBuffer, uint32_t attachmentCount, const VkBool32* pColorWriteEnables) const = 0;
@@ -324,6 +327,10 @@ virtual void                               cmdDrawMultiIndexedEXT                                                  (VkCommandBuffer commandBuffer, uin
 virtual void                           setDeviceMemoryPriorityEXT                                              (VkDevice device, VkDeviceMemory memory, float priority) const = 0;
 virtual void                           getDescriptorSetLayoutHostMappingInfoVALVE              (VkDevice device, const VkDescriptorSetBindingReferenceVALVE* pBindingReference, VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping) const = 0;
 virtual void                           getDescriptorSetHostMappingVALVE                                (VkDevice device, VkDescriptorSet descriptorSet, void** ppData) const = 0;
+virtual void                           getShaderModuleIdentifierEXT                                    (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier) const = 0;
+virtual void                           getShaderModuleCreateInfoIdentifierEXT                  (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier) const = 0;
+virtual VkResult                       getFramebufferTilePropertiesQCOM                                (VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties) const = 0;
+virtual VkResult                       getDynamicRenderingTilePropertiesQCOM                   (VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties) const = 0;
 virtual VkResult                       createAccelerationStructureKHR                                  (VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure) const = 0;
 virtual void                           destroyAccelerationStructureKHR                                 (VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks* pAllocator) const = 0;
 virtual void                           cmdBuildAccelerationStructuresKHR                               (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildRangeInfoKHR* const* ppBuildRangeInfos) const = 0;
@@ -369,6 +376,7 @@ virtual VkResult                    setBufferCollectionImageConstraintsFUCHSIA              (VkDevice device,
 virtual VkResult                       setBufferCollectionBufferConstraintsFUCHSIA             (VkDevice device, VkBufferCollectionFUCHSIA collection, const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo) const = 0;
 virtual void                           destroyBufferCollectionFUCHSIA                                  (VkDevice device, VkBufferCollectionFUCHSIA collection, const VkAllocationCallbacks* pAllocator) const = 0;
 virtual VkResult                       getBufferCollectionPropertiesFUCHSIA                    (VkDevice device, VkBufferCollectionFUCHSIA collection, VkBufferCollectionPropertiesFUCHSIA* pProperties) const = 0;
+virtual void                           exportMetalObjectsEXT                                                   (VkDevice device, VkExportMetalObjectsInfoEXT* pMetalObjectsInfo) const = 0;
 virtual VkResult                       getMemoryWin32HandleKHR                                                 (VkDevice device, const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo, pt::Win32Handle* pHandle) const = 0;
 virtual VkResult                       getMemoryWin32HandlePropertiesKHR                               (VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, pt::Win32Handle handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties) const = 0;
 virtual VkResult                       importSemaphoreWin32HandleKHR                                   (VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo) const = 0;
index 81bb195..d2377b6 100644 (file)
@@ -505,7 +505,6 @@ extern "C" {
 #define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64
 #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3
 #define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128
-#define STD_VIDEO_H265_SPS_MAX_SUB_LAYERS 8
 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19
 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21
 #define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6
@@ -728,7 +727,6 @@ typedef struct StdVideoH265SequenceParameterSet {
     deUint8                                       bit_depth_luma_minus8;
     deUint8                                       bit_depth_chroma_minus8;
     deUint8                                       log2_max_pic_order_cnt_lsb_minus4;
-    deUint8                                       sps_max_dec_pic_buffering_minus1[STD_VIDEO_H265_SPS_MAX_SUB_LAYERS];
     deUint8                                       log2_min_luma_coding_block_size_minus3;
     deUint8                                       log2_diff_max_min_luma_coding_block_size;
     deUint8                                       log2_min_luma_transform_block_size_minus2;
@@ -956,10 +954,10 @@ extern "C" {
 
 #define vulkan_video_codec_h265std_decode 1
 // Vulkan 0.9 provisional Vulkan video H.265 decode std specification version number
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_6 VK_MAKE_VIDEO_STD_VERSION(0, 9, 6) // Patch version should always be set to 0
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7 VK_MAKE_VIDEO_STD_VERSION(0, 9, 7) // Patch version should always be set to 0
 
 #define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_6
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7
 #define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_decode"
 typedef struct StdVideoDecodeH265PictureInfoFlags {
     deUint32    IrapPicFlag : 1;
@@ -1073,7 +1071,7 @@ extern "C" {
 #define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
 
 // Version of this file
-#define VK_HEADER_VERSION 211
+#define VK_HEADER_VERSION 224
 
 // Complete version of this file
 #define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
@@ -1121,7 +1119,6 @@ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet)
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool)
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer)
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool)
-#define VK_UUID_SIZE                      16U
 #define VK_ATTACHMENT_UNUSED              (~0U)
 #define VK_FALSE                          0U
 #define VK_LOD_CLAMP_NONE                 1000.0F
@@ -1132,10 +1129,11 @@ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool)
 #define VK_TRUE                           1U
 #define VK_WHOLE_SIZE                     (~0ULL)
 #define VK_MAX_MEMORY_TYPES               32U
-#define VK_MAX_MEMORY_HEAPS               16U
 #define VK_MAX_PHYSICAL_DEVICE_NAME_SIZE  256U
+#define VK_UUID_SIZE                      16U
 #define VK_MAX_EXTENSION_NAME_SIZE        256U
 #define VK_MAX_DESCRIPTION_SIZE           256U
+#define VK_MAX_MEMORY_HEAPS               16U
 
 typedef enum VkResult {
     VK_SUCCESS = 0,
@@ -1169,6 +1167,24 @@ typedef enum VkResult {
     VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,
     VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,
     VK_ERROR_INVALID_SHADER_NV = -1000012000,
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+    VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR = -1000023000,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+    VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR = -1000023001,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+    VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR = -1000023002,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+    VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR = -1000023003,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+    VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR = -1000023004,
+#endif
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+    VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR = -1000023005,
+#endif
     VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT = -1000158000,
     VK_ERROR_NOT_PERMITTED_KHR = -1000174001,
     VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT = -1000255000,
@@ -1176,6 +1192,7 @@ typedef enum VkResult {
     VK_THREAD_DONE_KHR = 1000268001,
     VK_OPERATION_DEFERRED_KHR = 1000268002,
     VK_OPERATION_NOT_DEFERRED_KHR = 1000268003,
+    VK_ERROR_COMPRESSION_EXHAUSTED_EXT = -1000338000,
     VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY,
     VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = VK_ERROR_INVALID_EXTERNAL_HANDLE,
     VK_ERROR_FRAGMENTATION_EXT = VK_ERROR_FRAGMENTATION,
@@ -1596,6 +1613,9 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN = 1000062000,
     VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT = 1000067000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT = 1000067001,
+    VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT = 1000068000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT = 1000068001,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT = 1000068002,
     VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073000,
     VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR = 1000073001,
     VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR = 1000073002,
@@ -1768,7 +1788,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV = 1000201000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV = 1000202000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV = 1000202001,
-    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV = 1000203000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV = 1000204000,
     VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV = 1000205000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV = 1000205002,
@@ -1872,11 +1891,26 @@ typedef enum VkStructureType {
 #endif
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV = 1000300000,
     VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV = 1000300001,
+    VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT = 1000311000,
+    VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT = 1000311001,
+    VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT = 1000311002,
+    VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT = 1000311003,
+    VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT = 1000311004,
+    VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT = 1000311005,
+    VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT = 1000311006,
+    VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT = 1000311007,
+    VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT = 1000311008,
+    VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT = 1000311009,
+    VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT = 1000311010,
+    VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT = 1000311011,
     VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV = 1000314008,
     VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV = 1000314009,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT = 1000320000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT = 1000320001,
     VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT = 1000320002,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD = 1000321000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR = 1000203000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR = 1000322000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR = 1000323000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV = 1000326000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV = 1000326001,
@@ -1889,6 +1923,12 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT = 1000332001,
     VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM = 1000333000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR = 1000336000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT = 1000338000,
+    VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT = 1000338001,
+    VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT = 1000338002,
+    VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT = 1000338003,
+    VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT = 1000338004,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT = 1000339000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT = 1000340000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM = 1000342000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT = 1000344000,
@@ -1923,11 +1963,17 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI = 1000370000,
     VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV = 1000371000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV = 1000371001,
+    VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT = 1000372000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT = 1000372001,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT = 1000376000,
+    VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT = 1000376001,
+    VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT = 1000376002,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT = 1000377000,
     VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX = 1000378000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT = 1000381000,
     VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT = 1000381001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT = 1000382000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR = 1000386000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT = 1000391000,
     VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT = 1000391001,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT = 1000392000,
@@ -1939,10 +1985,27 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE = 1000420000,
     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE = 1000420001,
     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE = 1000420002,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT = 1000422000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM = 1000425000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM = 1000425001,
     VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM = 1000425002,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV = 1000430000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT = 1000437000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM = 1000440000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM = 1000440001,
+    VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM = 1000440002,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT = 1000458000,
+    VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT = 1000458001,
+    VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT = 1000458002,
+    VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT = 1000458003,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT = 1000462000,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT = 1000462001,
+    VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT = 1000462002,
+    VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT = 1000462003,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM = 1000484000,
+    VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM = 1000484001,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC = 1000485000,
+    VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC = 1000485001,
     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 = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
@@ -2048,6 +2111,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES,
     VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE,
+    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES,
     VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO,
@@ -2105,6 +2169,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2,
     VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2,
     VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3,
+    VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR,
     VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES,
@@ -2114,6 +2179,11 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
 } VkStructureType;
 
+typedef enum VkPipelineCacheHeaderVersion {
+    VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1,
+    VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF
+} VkPipelineCacheHeaderVersion;
+
 typedef enum VkImageLayout {
     VK_IMAGE_LAYOUT_UNDEFINED = 0,
     VK_IMAGE_LAYOUT_GENERAL = 1,
@@ -2154,6 +2224,7 @@ typedef enum VkImageLayout {
 #ifdef VK_ENABLE_BETA_EXTENSIONS
     VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR = 1000299002,
 #endif
+    VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT = 1000339000,
     VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
     VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
     VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR,
@@ -2223,11 +2294,6 @@ typedef enum VkObjectType {
     VK_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF
 } VkObjectType;
 
-typedef enum VkPipelineCacheHeaderVersion {
-    VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1,
-    VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM = 0x7FFFFFFF
-} VkPipelineCacheHeaderVersion;
-
 typedef enum VkVendorId {
     VK_VENDOR_ID_VIV = 0x10001,
     VK_VENDOR_ID_VSI = 0x10002,
@@ -2597,6 +2663,8 @@ typedef enum VkQueryType {
     VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR = 1000299000,
 #endif
     VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT = 1000382000,
+    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR = 1000386000,
+    VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR = 1000386001,
     VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF
 } VkQueryType;
 
@@ -2856,8 +2924,8 @@ typedef enum VkBorderColor {
 typedef enum VkFilter {
     VK_FILTER_NEAREST = 0,
     VK_FILTER_LINEAR = 1,
-    VK_FILTER_CUBIC_IMG = 1000015000,
-    VK_FILTER_CUBIC_EXT = VK_FILTER_CUBIC_IMG,
+    VK_FILTER_CUBIC_EXT = 1000015000,
+    VK_FILTER_CUBIC_IMG = VK_FILTER_CUBIC_EXT,
     VK_FILTER_MAX_ENUM = 0x7FFFFFFF
 } VkFilter;
 
@@ -2893,6 +2961,8 @@ typedef enum VkDescriptorType {
     VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000,
     VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
     VK_DESCRIPTOR_TYPE_MUTABLE_VALVE = 1000351000,
+    VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM = 1000440000,
+    VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM = 1000440001,
     VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK,
     VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF
 } VkDescriptorType;
@@ -3028,7 +3098,6 @@ typedef enum VkFormatFeatureFlagBits {
     VK_FORMAT_FEATURE_DISJOINT_BIT = 0x00400000,
     VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT = 0x00800000,
     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT = 0x00010000,
-    VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = 0x00002000,
 #ifdef VK_ENABLE_BETA_EXTENSIONS
     VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR = 0x02000000,
 #endif
@@ -3036,6 +3105,7 @@ typedef enum VkFormatFeatureFlagBits {
     VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR = 0x04000000,
 #endif
     VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR = 0x20000000,
+    VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT = 0x00002000,
     VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT = 0x01000000,
     VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x40000000,
 #ifdef VK_ENABLE_BETA_EXTENSIONS
@@ -3044,6 +3114,7 @@ typedef enum VkFormatFeatureFlagBits {
 #ifdef VK_ENABLE_BETA_EXTENSIONS
     VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR = 0x10000000,
 #endif
+    VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT,
     VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
     VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
@@ -3054,7 +3125,6 @@ typedef enum VkFormatFeatureFlagBits {
     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,
     VK_FORMAT_FEATURE_DISJOINT_BIT_KHR = VK_FORMAT_FEATURE_DISJOINT_BIT,
     VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
-    VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
     VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkFormatFeatureFlagBits;
 typedef VkFlags VkFormatFeatureFlags;
@@ -3075,6 +3145,7 @@ typedef enum VkImageCreateFlagBits {
     VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV = 0x00002000,
     VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT = 0x00001000,
     VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT = 0x00004000,
+    VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT = 0x00040000,
     VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT = 0x00020000,
     VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM = 0x00008000,
     VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,
@@ -3128,7 +3199,10 @@ typedef enum VkImageUsageFlagBits {
 #ifdef VK_ENABLE_BETA_EXTENSIONS
     VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR = 0x00008000,
 #endif
+    VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x00080000,
     VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI = 0x00040000,
+    VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM = 0x00100000,
+    VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM = 0x00200000,
     VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
     VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkImageUsageFlagBits;
@@ -3377,6 +3451,8 @@ typedef enum VkPipelineCreateFlagBits {
     VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT = 0x00800000,
     VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT = 0x00000400,
     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_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
     VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
     VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT,
@@ -3463,6 +3539,8 @@ typedef VkFlags VkShaderStageFlags;
 typedef enum VkSamplerCreateFlagBits {
     VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT = 0x00000001,
     VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT = 0x00000002,
+    VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT = 0x00000004,
+    VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM = 0x00000010,
     VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkSamplerCreateFlagBits;
 typedef VkFlags VkSamplerCreateFlags;
@@ -3496,6 +3574,7 @@ typedef enum VkDependencyFlagBits {
     VK_DEPENDENCY_BY_REGION_BIT = 0x00000001,
     VK_DEPENDENCY_DEVICE_GROUP_BIT = 0x00000004,
     VK_DEPENDENCY_VIEW_LOCAL_BIT = 0x00000002,
+    VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT = 0x00000008,
     VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR = VK_DEPENDENCY_VIEW_LOCAL_BIT,
     VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR = VK_DEPENDENCY_DEVICE_GROUP_BIT,
     VK_DEPENDENCY_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
@@ -6525,6 +6604,7 @@ typedef enum VkDriverId {
     VK_DRIVER_ID_MESA_PANVK = 20,
     VK_DRIVER_ID_SAMSUNG_PROPRIETARY = 21,
     VK_DRIVER_ID_MESA_VENUS = 22,
+    VK_DRIVER_ID_MESA_DOZEN = 23,
     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,
@@ -7357,6 +7437,7 @@ static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV = 0
 static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV = 0x00100000ULL;
 static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI = 0x8000000000ULL;
 static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI = 0x10000000000ULL;
+static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR = 0x10000000ULL;
 
 typedef VkFlags64 VkAccessFlags2;
 
@@ -7431,6 +7512,7 @@ static const VkAccessFlagBits2 VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV =
 static const VkAccessFlagBits2 VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000ULL;
 static const VkAccessFlagBits2 VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000ULL;
 static const VkAccessFlagBits2 VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI = 0x8000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR = 0x10000000000ULL;
 
 
 typedef enum VkSubmitFlagBits {
@@ -7524,6 +7606,10 @@ static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT
 static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR = 0x10000000ULL;
 #endif
 static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV = 0x4000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM = 0x400000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM = 0x800000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM = 0x1000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM = 0x2000000000ULL;
 
 typedef struct VkPhysicalDeviceVulkan13Features {
     VkStructureType    sType;
@@ -10383,6 +10469,23 @@ VKAPI_ATTR void VKAPI_CALL vkGetQueueCheckpointData2NV(
 #endif
 
 
+#define VK_KHR_fragment_shader_barycentric 1
+#define VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION 1
+#define VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME "VK_KHR_fragment_shader_barycentric"
+typedef struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           fragmentShaderBarycentric;
+} VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR;
+
+typedef struct VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           triStripVertexOrderIndependentOfProvokingVertex;
+} VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR;
+
+
+
 #define VK_KHR_shader_subgroup_uniform_control_flow 1
 #define VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION 1
 #define VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME "VK_KHR_shader_subgroup_uniform_control_flow"
@@ -10485,6 +10588,42 @@ typedef VkFormatProperties3 VkFormatProperties3KHR;
 
 
 
+#define VK_KHR_ray_tracing_maintenance1 1
+#define VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION 1
+#define VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME "VK_KHR_ray_tracing_maintenance1"
+typedef struct VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           rayTracingMaintenance1;
+    VkBool32           rayTracingPipelineTraceRaysIndirect2;
+} VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR;
+
+typedef struct VkTraceRaysIndirectCommand2KHR {
+    VkDeviceAddress    raygenShaderRecordAddress;
+    VkDeviceSize       raygenShaderRecordSize;
+    VkDeviceAddress    missShaderBindingTableAddress;
+    VkDeviceSize       missShaderBindingTableSize;
+    VkDeviceSize       missShaderBindingTableStride;
+    VkDeviceAddress    hitShaderBindingTableAddress;
+    VkDeviceSize       hitShaderBindingTableSize;
+    VkDeviceSize       hitShaderBindingTableStride;
+    VkDeviceAddress    callableShaderBindingTableAddress;
+    VkDeviceSize       callableShaderBindingTableSize;
+    VkDeviceSize       callableShaderBindingTableStride;
+    deUint32           width;
+    deUint32           height;
+    deUint32           depth;
+} VkTraceRaysIndirectCommand2KHR;
+
+typedef void (VKAPI_PTR *PFN_vkCmdTraceRaysIndirect2KHR)(VkCommandBuffer commandBuffer, VkDeviceAddress indirectDeviceAddress);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdTraceRaysIndirect2KHR(
+    VkCommandBuffer                             commandBuffer,
+    VkDeviceAddress                             indirectDeviceAddress);
+#endif
+
+
 #define VK_KHR_portability_enumeration 1
 #define VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION 1
 #define VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME "VK_KHR_portability_enumeration"
@@ -11175,6 +11314,51 @@ typedef struct VkPhysicalDeviceASTCDecodeFeaturesEXT {
 
 
 
+#define VK_EXT_pipeline_robustness 1
+#define VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION 1
+#define VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME "VK_EXT_pipeline_robustness"
+
+typedef enum VkPipelineRobustnessBufferBehaviorEXT {
+    VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT = 0,
+    VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT = 1,
+    VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT = 2,
+    VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT = 3,
+    VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkPipelineRobustnessBufferBehaviorEXT;
+
+typedef enum VkPipelineRobustnessImageBehaviorEXT {
+    VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT = 0,
+    VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT = 1,
+    VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT = 2,
+    VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT = 3,
+    VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkPipelineRobustnessImageBehaviorEXT;
+typedef struct VkPhysicalDevicePipelineRobustnessFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           pipelineRobustness;
+} VkPhysicalDevicePipelineRobustnessFeaturesEXT;
+
+typedef struct VkPhysicalDevicePipelineRobustnessPropertiesEXT {
+    VkStructureType                          sType;
+    void*                                    pNext;
+    VkPipelineRobustnessBufferBehaviorEXT    defaultRobustnessStorageBuffers;
+    VkPipelineRobustnessBufferBehaviorEXT    defaultRobustnessUniformBuffers;
+    VkPipelineRobustnessBufferBehaviorEXT    defaultRobustnessVertexInputs;
+    VkPipelineRobustnessImageBehaviorEXT     defaultRobustnessImages;
+} VkPhysicalDevicePipelineRobustnessPropertiesEXT;
+
+typedef struct VkPipelineRobustnessCreateInfoEXT {
+    VkStructureType                          sType;
+    const void*                              pNext;
+    VkPipelineRobustnessBufferBehaviorEXT    storageBuffers;
+    VkPipelineRobustnessBufferBehaviorEXT    uniformBuffers;
+    VkPipelineRobustnessBufferBehaviorEXT    vertexInputs;
+    VkPipelineRobustnessImageBehaviorEXT     images;
+} VkPipelineRobustnessCreateInfoEXT;
+
+
+
 #define VK_EXT_conditional_rendering 1
 #define VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION 2
 #define VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME "VK_EXT_conditional_rendering"
@@ -12905,11 +13089,7 @@ VKAPI_ATTR void VKAPI_CALL vkCmdDrawMeshTasksIndirectCountNV(
 #define VK_NV_fragment_shader_barycentric 1
 #define VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION 1
 #define VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME "VK_NV_fragment_shader_barycentric"
-typedef struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV {
-    VkStructureType    sType;
-    void*              pNext;
-    VkBool32           fragmentShaderBarycentric;
-} VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV;
+typedef VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV;
 
 
 
@@ -14010,7 +14190,7 @@ typedef VkPhysicalDeviceTexelBufferAlignmentProperties VkPhysicalDeviceTexelBuff
 
 
 #define VK_QCOM_render_pass_transform 1
-#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 2
+#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 3
 #define VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME "VK_QCOM_render_pass_transform"
 typedef struct VkRenderPassTransformBeginInfoQCOM {
     VkStructureType                  sType;
@@ -14196,13 +14376,14 @@ typedef VkPhysicalDevicePipelineCreationCacheControlFeatures VkPhysicalDevicePip
 
 
 #define VK_NV_device_diagnostics_config 1
-#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION 1
+#define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION 2
 #define VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME "VK_NV_device_diagnostics_config"
 
 typedef enum VkDeviceDiagnosticsConfigFlagBitsNV {
     VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV = 0x00000001,
     VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV = 0x00000002,
     VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV = 0x00000004,
+    VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV = 0x00000008,
     VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
 } VkDeviceDiagnosticsConfigFlagBitsNV;
 typedef VkFlags VkDeviceDiagnosticsConfigFlagsNV;
@@ -14258,6 +14439,17 @@ typedef struct VkGraphicsPipelineLibraryCreateInfoEXT {
 
 
 
+#define VK_AMD_shader_early_and_late_fragment_tests 1
+#define VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION 1
+#define VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME "VK_AMD_shader_early_and_late_fragment_tests"
+typedef struct VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           shaderEarlyAndLateFragmentTests;
+} VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD;
+
+
+
 #define VK_NV_fragment_shading_rate_enums 1
 #define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION 1
 #define VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME "VK_NV_fragment_shading_rate_enums"
@@ -14454,6 +14646,103 @@ typedef VkPhysicalDeviceImageRobustnessFeatures VkPhysicalDeviceImageRobustnessF
 
 
 
+#define VK_EXT_image_compression_control 1
+#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION 1
+#define VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME "VK_EXT_image_compression_control"
+
+typedef enum VkImageCompressionFlagBitsEXT {
+    VK_IMAGE_COMPRESSION_DEFAULT_EXT = 0,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT = 0x00000001,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT = 0x00000002,
+    VK_IMAGE_COMPRESSION_DISABLED_EXT = 0x00000004,
+    VK_IMAGE_COMPRESSION_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkImageCompressionFlagBitsEXT;
+typedef VkFlags VkImageCompressionFlagsEXT;
+
+typedef enum VkImageCompressionFixedRateFlagBitsEXT {
+    VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT = 0,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT = 0x00000001,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT = 0x00000002,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT = 0x00000004,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT = 0x00000008,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT = 0x00000010,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT = 0x00000020,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT = 0x00000040,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT = 0x00000080,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT = 0x00000100,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT = 0x00000200,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT = 0x00000400,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT = 0x00000800,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT = 0x00001000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT = 0x00002000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT = 0x00004000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT = 0x00008000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT = 0x00010000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT = 0x00020000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT = 0x00040000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT = 0x00080000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT = 0x00100000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT = 0x00200000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT = 0x00400000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT = 0x00800000,
+    VK_IMAGE_COMPRESSION_FIXED_RATE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkImageCompressionFixedRateFlagBitsEXT;
+typedef VkFlags VkImageCompressionFixedRateFlagsEXT;
+typedef struct VkPhysicalDeviceImageCompressionControlFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           imageCompressionControl;
+} VkPhysicalDeviceImageCompressionControlFeaturesEXT;
+
+typedef struct VkImageCompressionControlEXT {
+    VkStructureType                         sType;
+    const void*                             pNext;
+    VkImageCompressionFlagsEXT              flags;
+    deUint32                                compressionControlPlaneCount;
+    VkImageCompressionFixedRateFlagsEXT*    pFixedRateFlags;
+} VkImageCompressionControlEXT;
+
+typedef struct VkSubresourceLayout2EXT {
+    VkStructureType        sType;
+    void*                  pNext;
+    VkSubresourceLayout    subresourceLayout;
+} VkSubresourceLayout2EXT;
+
+typedef struct VkImageSubresource2EXT {
+    VkStructureType       sType;
+    void*                 pNext;
+    VkImageSubresource    imageSubresource;
+} VkImageSubresource2EXT;
+
+typedef struct VkImageCompressionPropertiesEXT {
+    VkStructureType                        sType;
+    void*                                  pNext;
+    VkImageCompressionFlagsEXT             imageCompressionFlags;
+    VkImageCompressionFixedRateFlagsEXT    imageCompressionFixedRateFlags;
+} VkImageCompressionPropertiesEXT;
+
+typedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout2EXT)(VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkGetImageSubresourceLayout2EXT(
+    VkDevice                                    device,
+    VkImage                                     image,
+    const VkImageSubresource2EXT*               pSubresource,
+    VkSubresourceLayout2EXT*                    pLayout);
+#endif
+
+
+#define VK_EXT_attachment_feedback_loop_layout 1
+#define VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION 2
+#define VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME "VK_EXT_attachment_feedback_loop_layout"
+typedef struct VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           attachmentFeedbackLoopLayout;
+} VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT;
+
+
+
 #define VK_EXT_4444_formats 1
 #define VK_EXT_4444_FORMATS_SPEC_VERSION  1
 #define VK_EXT_4444_FORMATS_EXTENSION_NAME "VK_EXT_4444_formats"
@@ -14697,6 +14986,57 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryRemoteAddressNV(
 #endif
 
 
+#define VK_EXT_pipeline_properties 1
+#define VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION 1
+#define VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME "VK_EXT_pipeline_properties"
+typedef VkPipelineInfoKHR VkPipelineInfoEXT;
+
+typedef struct VkPipelinePropertiesIdentifierEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    deUint8            pipelineIdentifier[VK_UUID_SIZE];
+} VkPipelinePropertiesIdentifierEXT;
+
+typedef struct VkPhysicalDevicePipelinePropertiesFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           pipelinePropertiesIdentifier;
+} VkPhysicalDevicePipelinePropertiesFeaturesEXT;
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetPipelinePropertiesEXT)(VkDevice device, const VkPipelineInfoEXT* pPipelineInfo, VkBaseOutStructure* pPipelineProperties);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelinePropertiesEXT(
+    VkDevice                                    device,
+    const VkPipelineInfoEXT*                    pPipelineInfo,
+    VkBaseOutStructure*                         pPipelineProperties);
+#endif
+
+
+#define VK_EXT_multisampled_render_to_single_sampled 1
+#define VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION 1
+#define VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME "VK_EXT_multisampled_render_to_single_sampled"
+typedef struct VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           multisampledRenderToSingleSampled;
+} VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT;
+
+typedef struct VkSubpassResolvePerformanceQueryEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           optimal;
+} VkSubpassResolvePerformanceQueryEXT;
+
+typedef struct VkMultisampledRenderToSingleSampledInfoEXT {
+    VkStructureType          sType;
+    const void*              pNext;
+    VkBool32                 multisampledRenderToSingleSampledEnable;
+    VkSampleCountFlagBits    rasterizationSamples;
+} VkMultisampledRenderToSingleSampledInfoEXT;
+
+
+
 #define VK_EXT_extended_dynamic_state2 1
 #define VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION 1
 #define VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME "VK_EXT_extended_dynamic_state2"
@@ -14946,6 +15286,17 @@ VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetHostMappingVALVE(
 #endif
 
 
+#define VK_EXT_non_seamless_cube_map 1
+#define VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION 1
+#define VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME "VK_EXT_non_seamless_cube_map"
+typedef struct VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           nonSeamlessCubeMap;
+} VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT;
+
+
+
 #define VK_QCOM_fragment_density_map_offset 1
 #define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION 1
 #define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME "VK_QCOM_fragment_density_map_offset"
@@ -14986,6 +15337,202 @@ typedef struct VkPhysicalDeviceLinearColorAttachmentFeaturesNV {
 #define VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME "VK_GOOGLE_surfaceless_query"
 
 
+#define VK_EXT_image_compression_control_swapchain 1
+#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION 1
+#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME "VK_EXT_image_compression_control_swapchain"
+typedef struct VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           imageCompressionControlSwapchain;
+} VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT;
+
+
+
+#define VK_QCOM_image_processing 1
+#define VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION 1
+#define VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME "VK_QCOM_image_processing"
+typedef struct VkImageViewSampleWeightCreateInfoQCOM {
+    VkStructureType    sType;
+    const void*        pNext;
+    VkOffset2D         filterCenter;
+    VkExtent2D         filterSize;
+    deUint32           numPhases;
+} VkImageViewSampleWeightCreateInfoQCOM;
+
+typedef struct VkPhysicalDeviceImageProcessingFeaturesQCOM {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           textureSampleWeighted;
+    VkBool32           textureBoxFilter;
+    VkBool32           textureBlockMatch;
+} VkPhysicalDeviceImageProcessingFeaturesQCOM;
+
+typedef struct VkPhysicalDeviceImageProcessingPropertiesQCOM {
+    VkStructureType    sType;
+    void*              pNext;
+    deUint32           maxWeightFilterPhases;
+    VkExtent2D         maxWeightFilterDimension;
+    VkExtent2D         maxBlockMatchRegion;
+    VkExtent2D         maxBoxFilterBlockSize;
+} VkPhysicalDeviceImageProcessingPropertiesQCOM;
+
+
+
+#define VK_EXT_subpass_merge_feedback 1
+#define VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION 2
+#define VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME "VK_EXT_subpass_merge_feedback"
+
+typedef enum VkSubpassMergeStatusEXT {
+    VK_SUBPASS_MERGE_STATUS_MERGED_EXT = 0,
+    VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT = 1,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT = 2,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT = 3,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT = 4,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT = 5,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT = 6,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT = 7,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT = 8,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT = 9,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT = 10,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT = 11,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT = 12,
+    VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT = 13,
+    VK_SUBPASS_MERGE_STATUS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkSubpassMergeStatusEXT;
+typedef struct VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           subpassMergeFeedback;
+} VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT;
+
+typedef struct VkRenderPassCreationControlEXT {
+    VkStructureType    sType;
+    const void*        pNext;
+    VkBool32           disallowMerging;
+} VkRenderPassCreationControlEXT;
+
+typedef struct VkRenderPassCreationFeedbackInfoEXT {
+    deUint32    postMergeSubpassCount;
+} VkRenderPassCreationFeedbackInfoEXT;
+
+typedef struct VkRenderPassCreationFeedbackCreateInfoEXT {
+    VkStructureType                         sType;
+    const void*                             pNext;
+    VkRenderPassCreationFeedbackInfoEXT*    pRenderPassFeedback;
+} VkRenderPassCreationFeedbackCreateInfoEXT;
+
+typedef struct VkRenderPassSubpassFeedbackInfoEXT {
+    VkSubpassMergeStatusEXT    subpassMergeStatus;
+    char                       description[VK_MAX_DESCRIPTION_SIZE];
+    deUint32                   postMergeIndex;
+} VkRenderPassSubpassFeedbackInfoEXT;
+
+typedef struct VkRenderPassSubpassFeedbackCreateInfoEXT {
+    VkStructureType                        sType;
+    const void*                            pNext;
+    VkRenderPassSubpassFeedbackInfoEXT*    pSubpassFeedback;
+} VkRenderPassSubpassFeedbackCreateInfoEXT;
+
+
+
+#define VK_EXT_shader_module_identifier 1
+#define VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT 32U
+#define VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION 1
+#define VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME "VK_EXT_shader_module_identifier"
+typedef struct VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           shaderModuleIdentifier;
+} VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT;
+
+typedef struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    deUint8            shaderModuleIdentifierAlgorithmUUID[VK_UUID_SIZE];
+} VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT;
+
+typedef struct VkPipelineShaderStageModuleIdentifierCreateInfoEXT {
+    VkStructureType    sType;
+    const void*        pNext;
+    deUint32           identifierSize;
+    const deUint8*     pIdentifier;
+} VkPipelineShaderStageModuleIdentifierCreateInfoEXT;
+
+typedef struct VkShaderModuleIdentifierEXT {
+    VkStructureType    sType;
+    void*              pNext;
+    deUint32           identifierSize;
+    deUint8            identifier[VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT];
+} VkShaderModuleIdentifierEXT;
+
+typedef void (VKAPI_PTR *PFN_vkGetShaderModuleIdentifierEXT)(VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier);
+typedef void (VKAPI_PTR *PFN_vkGetShaderModuleCreateInfoIdentifierEXT)(VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkGetShaderModuleIdentifierEXT(
+    VkDevice                                    device,
+    VkShaderModule                              shaderModule,
+    VkShaderModuleIdentifierEXT*                pIdentifier);
+
+VKAPI_ATTR void VKAPI_CALL vkGetShaderModuleCreateInfoIdentifierEXT(
+    VkDevice                                    device,
+    const VkShaderModuleCreateInfo*             pCreateInfo,
+    VkShaderModuleIdentifierEXT*                pIdentifier);
+#endif
+
+
+#define VK_QCOM_tile_properties 1
+#define VK_QCOM_TILE_PROPERTIES_SPEC_VERSION 1
+#define VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME "VK_QCOM_tile_properties"
+typedef struct VkPhysicalDeviceTilePropertiesFeaturesQCOM {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           tileProperties;
+} VkPhysicalDeviceTilePropertiesFeaturesQCOM;
+
+typedef struct VkTilePropertiesQCOM {
+    VkStructureType    sType;
+    void*              pNext;
+    VkExtent3D         tileSize;
+    VkExtent2D         apronSize;
+    VkOffset2D         origin;
+} VkTilePropertiesQCOM;
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetFramebufferTilePropertiesQCOM)(VkDevice device, VkFramebuffer framebuffer, deUint32* pPropertiesCount, VkTilePropertiesQCOM* pProperties);
+typedef VkResult (VKAPI_PTR *PFN_vkGetDynamicRenderingTilePropertiesQCOM)(VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetFramebufferTilePropertiesQCOM(
+    VkDevice                                    device,
+    VkFramebuffer                               framebuffer,
+    deUint32*                                   pPropertiesCount,
+    VkTilePropertiesQCOM*                       pProperties);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetDynamicRenderingTilePropertiesQCOM(
+    VkDevice                                    device,
+    const VkRenderingInfo*                      pRenderingInfo,
+    VkTilePropertiesQCOM*                       pProperties);
+#endif
+
+
+#define VK_SEC_amigo_profiling 1
+#define VK_SEC_AMIGO_PROFILING_SPEC_VERSION 1
+#define VK_SEC_AMIGO_PROFILING_EXTENSION_NAME "VK_SEC_amigo_profiling"
+typedef struct VkPhysicalDeviceAmigoProfilingFeaturesSEC {
+    VkStructureType    sType;
+    void*              pNext;
+    VkBool32           amigoProfiling;
+} VkPhysicalDeviceAmigoProfilingFeaturesSEC;
+
+typedef struct VkAmigoProfilingSubmitInfoSEC {
+    VkStructureType    sType;
+    const void*        pNext;
+    deUint64           firstDrawTimestamp;
+    deUint64           swapBufferTimestamp;
+} VkAmigoProfilingSubmitInfoSEC;
+
+
+
 #define VK_KHR_acceleration_structure 1
 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR)
 #define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13
index 91585cd..de04fee 100644 (file)
@@ -2326,6 +2326,12 @@ VK_DEFINE_PLATFORM_TYPE(zx_handle_t,                             uint32_t)
 VK_DEFINE_PLATFORM_TYPE(GgpFrameToken,                         int32_t)
 VK_DEFINE_PLATFORM_TYPE(GgpStreamDescriptor,           int32_t)
 VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                          void*)
+VK_DEFINE_PLATFORM_TYPE(MTLDevice_id,                          void*)
+VK_DEFINE_PLATFORM_TYPE(MTLCommandQueue_id,                    void*)
+VK_DEFINE_PLATFORM_TYPE(MTLBuffer_id,                          void*)
+VK_DEFINE_PLATFORM_TYPE(MTLTexture_id,                         void*)
+VK_DEFINE_PLATFORM_TYPE(IOSurfaceRef,                          void*)
+VK_DEFINE_PLATFORM_TYPE(MTLSharedEvent_id,                     void*)
 #define VK_KHR_SURFACE_SPEC_VERSION 25
 #define VK_KHR_SWAPCHAIN_SPEC_VERSION 70
 #define VK_KHR_DISPLAY_SPEC_VERSION 23
index 3e39e6f..0fe0ee0 100644 (file)
@@ -60,6 +60,12 @@ std::ostream& operator<< (std::ostream& s, zx_handle_t                                       v) { return s << tcu:
 std::ostream& operator<< (std::ostream& s, GgpFrameToken                               v) { return s << tcu::toHex(v.internal); }
 std::ostream& operator<< (std::ostream& s, GgpStreamDescriptor                 v) { return s << tcu::toHex(v.internal); }
 std::ostream& operator<< (std::ostream& s, CAMetalLayer                                        v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLDevice_id                                        v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLCommandQueue_id                  v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLBuffer_id                                        v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLTexture_id                               v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, IOSurfaceRef                                        v) { return s << tcu::toHex(v.internal); }
+std::ostream& operator<< (std::ostream& s, MTLSharedEvent_id                   v) { return s << tcu::toHex(v.internal); }
 }
 
 const char* getResultName (VkResult value)
index 7ad8d4e..4e8dabc 100644 (file)
@@ -2892,6 +2892,7 @@ VkFormat mapTextureFormat (const tcu::TextureFormat& format)
                case FMT_CASE(D, UNORM_INT16):                                          return VK_FORMAT_D16_UNORM;
                case FMT_CASE(D, UNSIGNED_INT_24_8_REV):                        return VK_FORMAT_X8_D24_UNORM_PACK32;
                case FMT_CASE(D, FLOAT):                                                        return VK_FORMAT_D32_SFLOAT;
+               case FMT_CASE(D, UNORM_INT24):                                          return VK_FORMAT_D24_UNORM_S8_UINT;
 
                case FMT_CASE(S, UNSIGNED_INT8):                                        return VK_FORMAT_S8_UINT;
 
index 9fa2e6f..6bbe1e1 100644 (file)
@@ -100,7 +100,8 @@ Move<VkPipeline> makeGraphicsPipeline(const DeviceInterface&                                                vk,
                                                                          const VkPipelineDepthStencilStateCreateInfo*  depthStencilStateCreateInfo,
                                                                          const VkPipelineColorBlendStateCreateInfo*    colorBlendStateCreateInfo,
                                                                          const VkPipelineDynamicStateCreateInfo*               dynamicStateCreateInfo,
-                                                                         const void*                                                                   pNext)
+                                                                         const void*                                                                   pNext,
+                                                                         const VkPipelineCreateFlags                                   pipelineCreateFlags)
 {
        const VkPipelineInputAssemblyStateCreateInfo    inputAssemblyStateCreateInfo            =
        {
@@ -154,7 +155,7 @@ Move<VkPipeline> makeGraphicsPipeline(const DeviceInterface&                                                vk,
                                                                 &tessStateCreateInfo, &viewportStateCreateInfo, rasterizationStateCreateInfo,
                                                                 multisampleStateCreateInfo, depthStencilStateCreateInfo, colorBlendStateCreateInfo,
                                                                 dynamicStateCreateInfo ? dynamicStateCreateInfo : dynamicStateCreateInfoDefaultPtr,
-                                                                pNext);
+                                                                pNext, pipelineCreateFlags);
 }
 
 Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                  vk,
@@ -176,7 +177,8 @@ Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                       vk,
                                                                           const VkPipelineDepthStencilStateCreateInfo*         depthStencilStateCreateInfo,
                                                                           const VkPipelineColorBlendStateCreateInfo*           colorBlendStateCreateInfo,
                                                                           const VkPipelineDynamicStateCreateInfo*                      dynamicStateCreateInfo,
-                                                                          const void*                                                                          pNext)
+                                                                          const void*                                                                          pNext,
+                                                                          const VkPipelineCreateFlags                                          pipelineCreateFlags)
 {
        DE_ASSERT(tessStateCreateInfo || (tessellationControlShaderModule == DE_NULL && tessellationEvalShaderModule == DE_NULL));
 
@@ -366,7 +368,7 @@ Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                       vk,
        {
                VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO,                                                                                                                // VkStructureType                                  sType
                pNext,                                                                                                                                                                                                  // const void*                                      pNext
-               0u,                                                                                                                                                                                                             // VkPipelineCreateFlags                            flags
+               pipelineCreateFlags,                                                                                                                                                                    // VkPipelineCreateFlags                            flags
                (deUint32)pipelineShaderStageParams.size(),                                                                                                                             // deUint32                                         stageCount
                &pipelineShaderStageParams[0],                                                                                                                                                  // const VkPipelineShaderStageCreateInfo*           pStages
                vertexInputStateCreateInfo ? vertexInputStateCreateInfo : &vertexInputStateCreateInfoDefault,                   // const VkPipelineVertexInputStateCreateInfo*      pVertexInputState
@@ -404,7 +406,8 @@ Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                       vk,
                                                                           const VkPipelineMultisampleStateCreateInfo*          multisampleStateCreateInfo,
                                                                           const VkPipelineDepthStencilStateCreateInfo*         depthStencilStateCreateInfo,
                                                                           const VkPipelineColorBlendStateCreateInfo*           colorBlendStateCreateInfo,
-                                                                          const VkPipelineDynamicStateCreateInfo*                      dynamicStateCreateInfo)
+                                                                          const VkPipelineDynamicStateCreateInfo*                      dynamicStateCreateInfo,
+                                                                          const VkPipelineCreateFlags                                          pipelineCreateFlags)
 {
        const VkBool32                                                                  disableRasterization                            = (fragmentShaderModule == DE_NULL);
 
@@ -482,7 +485,7 @@ Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                       vk,
        {
                VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO,                                                                                                                // VkStructureType                                  sType
                nullptr,                                                                                                                                                                                                // const void*                                      pNext
-               0u,                                                                                                                                                                                                             // VkPipelineCreateFlags                            flags
+               pipelineCreateFlags,                                                                                                                                                                    // VkPipelineCreateFlags                            flags
                static_cast<uint32_t>(pipelineShaderStageParams.size()),                                                                                                // deUint32                                         stageCount
                de::dataOrNull(pipelineShaderStageParams),                                                                                                                              // const VkPipelineShaderStageCreateInfo*           pStages
                nullptr,                                                                                                                                                                                                // const VkPipelineVertexInputStateCreateInfo*      pVertexInputState
index f58027f..c01622b 100644 (file)
@@ -62,7 +62,8 @@ Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                 vk,
                                                                           const VkPipelineDepthStencilStateCreateInfo*         depthStencilStateCreateInfo = DE_NULL,
                                                                           const VkPipelineColorBlendStateCreateInfo*           colorBlendStateCreateInfo = DE_NULL,
                                                                           const VkPipelineDynamicStateCreateInfo*                      dynamicStateCreateInfo = DE_NULL,
-                                                                          const void*                                                                          pNext = DE_NULL);
+                                                                          const void*                                                                          pNext = DE_NULL,
+                                                                          const VkPipelineCreateFlags                                          pipelineCreateFlags = 0u);
 
 Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                  vk,
                                                                           const VkDevice                                                                       device,
@@ -83,7 +84,8 @@ Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                 vk,
                                                                           const VkPipelineDepthStencilStateCreateInfo*         depthStencilStateCreateInfo = DE_NULL,
                                                                           const VkPipelineColorBlendStateCreateInfo*           colorBlendStateCreateInfo = DE_NULL,
                                                                           const VkPipelineDynamicStateCreateInfo*                      dynamicStateCreateInfo = DE_NULL,
-                                                                          const void*                                                                          pNext = DE_NULL);
+                                                                          const void*                                                                          pNext = DE_NULL,
+                                                                          const VkPipelineCreateFlags                                          pipelineCreateFlags = 0u);
 
 Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                  vk,
                                                                           const VkDevice                                                                       device,
@@ -99,7 +101,8 @@ Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&                                                        vk,
                                                                           const VkPipelineMultisampleStateCreateInfo*          multisampleStateCreateInfo = nullptr,
                                                                           const VkPipelineDepthStencilStateCreateInfo*         depthStencilStateCreateInfo = nullptr,
                                                                           const VkPipelineColorBlendStateCreateInfo*           colorBlendStateCreateInfo = nullptr,
-                                                                          const VkPipelineDynamicStateCreateInfo*                      dynamicStateCreateInfo = nullptr);
+                                                                          const VkPipelineDynamicStateCreateInfo*                      dynamicStateCreateInfo = nullptr,
+                                                                          const VkPipelineCreateFlags                                          pipelineCreateFlags = 0u);
 
 Move<VkRenderPass> makeRenderPass (const DeviceInterface&                              vk,
                                                                   const VkDevice                                               device,
index 195eb29..baf50cb 100644 (file)
@@ -128,6 +128,8 @@ set(DEQP_VK_PIPELINE_SRCS
        vktPipelineLibraryTests.hpp
        vktPipelineImage2DViewOf3DTests.cpp
        vktPipelineImage2DViewOf3DTests.hpp
+       vktPipelineAttachmentFeedbackLoopLayoutTests.cpp
+       vktPipelineAttachmentFeedbackLoopLayoutTests.hpp
        )
 
 #vktPipelinePushDescriptorTests.cpp                            - missing VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR
diff --git a/external/vulkancts/modules/vulkan/pipeline/vktPipelineAttachmentFeedbackLoopLayoutTests.cpp b/external/vulkancts/modules/vulkan/pipeline/vktPipelineAttachmentFeedbackLoopLayoutTests.cpp
new file mode 100644 (file)
index 0000000..faec52c
--- /dev/null
@@ -0,0 +1,2419 @@
+/*------------------------------------------------------------------------
+ * Vulkan Conformance Tests
+ * ------------------------
+ *
+ * Copyright (c) 2021 Valve Corporation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *//*!
+ * \file
+ * \brief VK_EXT_attachment_feedback_loop_layout Tests
+ *//*--------------------------------------------------------------------*/
+
+#include "vktPipelineAttachmentFeedbackLoopLayoutTests.hpp"
+#include "vktPipelineImageSamplingInstance.hpp"
+#include "vktPipelineImageUtil.hpp"
+#include "vktPipelineVertexUtil.hpp"
+#include "vktTestCase.hpp"
+#include "vktPipelineClearUtil.hpp"
+
+#include "vkImageUtil.hpp"
+#include "vkQueryUtil.hpp"
+#include "vkTypeUtil.hpp"
+#include "vkObjUtil.hpp"
+#include "vkBuilderUtil.hpp"
+#include "vkBarrierUtil.hpp"
+#include "vkCmdUtil.hpp"
+#include "vkPrograms.hpp"
+#include "vkImageWithMemory.hpp"
+#include "vkBufferWithMemory.hpp"
+
+#include "tcuPlatform.hpp"
+#include "tcuImageCompare.hpp"
+#include "tcuTextureUtil.hpp"
+#include "tcuTestLog.hpp"
+#include "tcuMaybe.hpp"
+
+#include "deStringUtil.hpp"
+#include "deMemory.h"
+
+#include <iomanip>
+#include <sstream>
+#include <vector>
+#include <string>
+#include <memory>
+#include <utility>
+#include <algorithm>
+
+namespace vkt
+{
+namespace pipeline
+{
+
+using namespace vk;
+using de::MovePtr;
+
+namespace
+{
+
+enum TestMode
+{
+       TEST_MODE_READ_ONLY = 0,
+       TEST_MODE_WRITE_ONLY = 1,
+       TEST_MODE_READ_WRITE_SAME_PIXEL = 2,            // Sample from and write to the same pixel
+       TEST_MODE_READ_WRITE_DIFFERENT_AREAS = 3,       // Sample from one half of the image and write the values to the other half
+};
+
+enum ImageAspectTestMode
+{
+       IMAGE_ASPECT_TEST_COLOR = 0,
+       IMAGE_ASPECT_TEST_DEPTH = 1,
+       IMAGE_ASPECT_TEST_STENCIL = 2,
+};
+
+// Output images are a square of this size
+const int outputImageSize = 256;
+
+ImageAspectTestMode getImageAspectTestMode (const VkFormat format)
+{
+       if (tcu::hasDepthComponent(mapVkFormat(format).order))
+               return IMAGE_ASPECT_TEST_DEPTH;
+
+       if (tcu::hasStencilComponent(mapVkFormat(format).order))
+               return IMAGE_ASPECT_TEST_STENCIL;
+
+       return IMAGE_ASPECT_TEST_COLOR;
+};
+
+class SamplerViewType {
+public:
+       SamplerViewType (vk::VkImageViewType type, bool normalized = true)
+               : m_viewType(type), m_normalized(normalized)
+       {
+               if (!normalized)
+                       DE_ASSERT(type == vk::VK_IMAGE_VIEW_TYPE_2D || type == vk::VK_IMAGE_VIEW_TYPE_1D);
+       }
+
+       operator vk::VkImageViewType () const
+       {
+               return m_viewType;
+       }
+
+       bool isNormalized () const
+       {
+               return m_normalized;
+       }
+
+private:
+       vk::VkImageViewType m_viewType;
+       bool                            m_normalized;
+};
+
+de::MovePtr<Allocation> allocateImage (const InstanceInterface&                vki,
+                                                                          const DeviceInterface&               vkd,
+                                                                          const VkPhysicalDevice&              physDevice,
+                                                                          const VkDevice                               device,
+                                                                          const VkImage&                               image,
+                                                                          const MemoryRequirement              requirement,
+                                                                          Allocator&                                   allocator,
+                                                                          AllocationKind                               allocationKind)
+{
+       switch (allocationKind)
+       {
+               case ALLOCATION_KIND_SUBALLOCATED:
+               {
+                       const VkMemoryRequirements      memoryRequirements      = getImageMemoryRequirements(vkd, device, image);
+
+                       return allocator.allocate(memoryRequirements, requirement);
+               }
+
+               case ALLOCATION_KIND_DEDICATED:
+               {
+                       return allocateDedicated(vki, vkd, physDevice, device, image, requirement);
+               }
+
+               default:
+               {
+                       TCU_THROW(InternalError, "Invalid allocation kind");
+               }
+       }
+}
+
+de::MovePtr<Allocation> allocateBuffer (const InstanceInterface&       vki,
+                                                                               const DeviceInterface&          vkd,
+                                                                               const VkPhysicalDevice&         physDevice,
+                                                                               const VkDevice                          device,
+                                                                               const VkBuffer&                         buffer,
+                                                                               const MemoryRequirement         requirement,
+                                                                               Allocator&                                      allocator,
+                                                                               AllocationKind                          allocationKind)
+{
+       switch (allocationKind)
+       {
+               case ALLOCATION_KIND_SUBALLOCATED:
+               {
+                       const VkMemoryRequirements      memoryRequirements      = getBufferMemoryRequirements(vkd, device, buffer);
+
+                       return allocator.allocate(memoryRequirements, requirement);
+               }
+
+               case ALLOCATION_KIND_DEDICATED:
+               {
+                       return allocateDedicated(vki, vkd, physDevice, device, buffer, requirement);
+               }
+
+               default:
+               {
+                       TCU_THROW(InternalError, "Invalid allocation kind");
+               }
+       }
+}
+
+static VkImageType getCompatibleImageType (VkImageViewType viewType)
+{
+       switch (viewType)
+       {
+               case VK_IMAGE_VIEW_TYPE_1D:                             return VK_IMAGE_TYPE_1D;
+               case VK_IMAGE_VIEW_TYPE_1D_ARRAY:               return VK_IMAGE_TYPE_1D;
+               case VK_IMAGE_VIEW_TYPE_2D:                             return VK_IMAGE_TYPE_2D;
+               case VK_IMAGE_VIEW_TYPE_2D_ARRAY:               return VK_IMAGE_TYPE_2D;
+               case VK_IMAGE_VIEW_TYPE_3D:                             return VK_IMAGE_TYPE_3D;
+               case VK_IMAGE_VIEW_TYPE_CUBE:                   return VK_IMAGE_TYPE_2D;
+               case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:             return VK_IMAGE_TYPE_2D;
+               default:
+                       break;
+       }
+
+       DE_ASSERT(false);
+       return VK_IMAGE_TYPE_1D;
+}
+
+template<typename TcuFormatType>
+static MovePtr<TestTexture> createTestTexture (const TcuFormatType format, VkImageViewType viewType, const tcu::IVec3& size, int layerCount)
+{
+       MovePtr<TestTexture>    texture;
+       const VkImageType               imageType = getCompatibleImageType(viewType);
+
+       switch (imageType)
+       {
+               case VK_IMAGE_TYPE_1D:
+                       if (layerCount == 1)
+                               texture = MovePtr<TestTexture>(new TestTexture1D(format, size.x()));
+                       else
+                               texture = MovePtr<TestTexture>(new TestTexture1DArray(format, size.x(), layerCount));
+
+                       break;
+
+               case VK_IMAGE_TYPE_2D:
+                       if (layerCount == 1)
+                       {
+                               texture = MovePtr<TestTexture>(new TestTexture2D(format, size.x(), size.y()));
+                       }
+                       else
+                       {
+                               if (viewType == VK_IMAGE_VIEW_TYPE_CUBE || viewType == VK_IMAGE_VIEW_TYPE_CUBE_ARRAY)
+                               {
+                                       if (layerCount == tcu::CUBEFACE_LAST && viewType == VK_IMAGE_VIEW_TYPE_CUBE)
+                                       {
+                                               texture = MovePtr<TestTexture>(new TestTextureCube(format, size.x()));
+                                       }
+                                       else
+                                       {
+                                               DE_ASSERT(layerCount % tcu::CUBEFACE_LAST == 0);
+
+                                               texture = MovePtr<TestTexture>(new TestTextureCubeArray(format, size.x(), layerCount));
+                                       }
+                               }
+                               else
+                               {
+                                       texture = MovePtr<TestTexture>(new TestTexture2DArray(format, size.x(), size.y(), layerCount));
+                               }
+                       }
+
+                       break;
+
+               case VK_IMAGE_TYPE_3D:
+                       texture = MovePtr<TestTexture>(new TestTexture3D(format, size.x(), size.y(), size.z()));
+                       break;
+
+               default:
+                       DE_ASSERT(false);
+       }
+
+       return texture;
+}
+
+VkImageAspectFlags getAspectFlags (tcu::TextureFormat format)
+{
+       VkImageAspectFlags      aspectFlag      = 0;
+       aspectFlag |= (tcu::hasDepthComponent(format.order)? VK_IMAGE_ASPECT_DEPTH_BIT : 0);
+       aspectFlag |= (tcu::hasStencilComponent(format.order)? VK_IMAGE_ASPECT_STENCIL_BIT : 0);
+
+       if (!aspectFlag)
+               aspectFlag = VK_IMAGE_ASPECT_COLOR_BIT;
+
+       return aspectFlag;
+}
+
+VkImageAspectFlags getAspectFlags (VkFormat format)
+{
+       if (isCompressedFormat(format))
+               return VK_IMAGE_ASPECT_COLOR_BIT;
+       else
+               return getAspectFlags(mapVkFormat(format));
+}
+
+tcu::TextureFormat getSizeCompatibleTcuTextureFormat (VkFormat format)
+{
+       if (isCompressedFormat(format))
+               return (getBlockSizeInBytes(format) == 8) ? mapVkFormat(VK_FORMAT_R16G16B16A16_UINT) : mapVkFormat(VK_FORMAT_R32G32B32A32_UINT);
+       else
+               return mapVkFormat(format);
+}
+
+// Utilities to create test nodes
+std::string getFormatCaseName (const VkFormat format)
+{
+       const std::string fullName = getFormatName(format);
+
+       DE_ASSERT(de::beginsWith(fullName, "VK_FORMAT_"));
+
+       return de::toLower(fullName.substr(10));
+}
+
+class AttachmentFeedbackLoopLayoutImageSamplingInstance : public ImageSamplingInstance
+{
+public:
+                                                               AttachmentFeedbackLoopLayoutImageSamplingInstance       (Context&                                               context,
+                                                                                                                                                                        ImageSamplingInstanceParams    params,
+                                                                                                                                                                        bool                                                   useImageAsColorOrDSAttachment_,
+                                                                                                                                                                        bool                                                   useDifferentAreasSampleWrite_,
+                                                                                                                                                                        bool                                                   interleaveReadWriteComponents_);
+
+       virtual                                         ~AttachmentFeedbackLoopLayoutImageSamplingInstance      (void);
+
+       virtual tcu::TestStatus         iterate                                                                                         (void) override;
+
+protected:
+       virtual tcu::TestStatus         verifyImage                                                                                     (void) override;
+       virtual void                            setup                                                                                           (void) override;
+
+       ImageSamplingInstanceParams             m_params;
+       const bool                                              m_useImageAsColorOrDSAttachment;
+       const bool                                              m_useDifferentAreasSampleWrite;
+       const bool                                              m_interleaveReadWriteComponents;
+};
+
+class AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance : public AttachmentFeedbackLoopLayoutImageSamplingInstance
+{
+public:
+                                                               AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance   (Context&                                               context,
+                                                                                                                                                                                                ImageSamplingInstanceParams    params,
+                                                                                                                                                                                                bool                                                   useImageAsColorOrDSAttachment_,
+                                                                                                                                                                                                bool                                                   useDifferentAreasSampleWrite_,
+                                                                                                                                                                                                bool                                                   interleaveReadWriteComponents_);
+
+       virtual                                         ~AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance  (void);
+
+       virtual tcu::TestStatus         iterate                                                                                         (void) override;
+
+protected:
+       virtual tcu::TestStatus         verifyImage                                                                                     (void) override;
+       virtual void                            setup                                                                                           (void) override;
+
+       bool                                                                            m_separateStencilUsage;
+
+       std::vector<SharedImagePtr>                                     m_dsImages;
+       std::vector<SharedAllocPtr>                                     m_dsImageAllocs;
+       std::vector<SharedImageViewPtr>                         m_dsAttachmentViews;
+};
+
+AttachmentFeedbackLoopLayoutImageSamplingInstance::AttachmentFeedbackLoopLayoutImageSamplingInstance (Context&                                         context,
+                                                                                                                                                                                                         ImageSamplingInstanceParams   params,
+                                                                                                                                                                                                         bool                                                  useImageAsColorOrDSAttachment_,
+                                                                                                                                                                                                         bool                                                  useDifferentAreasSampleWrite_,
+                                                                                                                                                                                                         bool                                                  interleaveReadWriteComponents_)
+       : ImageSamplingInstance                         (context, params)
+       , m_params                                                      (params)
+       , m_useImageAsColorOrDSAttachment       (useImageAsColorOrDSAttachment_)
+       , m_useDifferentAreasSampleWrite        (useDifferentAreasSampleWrite_)
+       , m_interleaveReadWriteComponents       (interleaveReadWriteComponents_)
+{
+}
+
+void AttachmentFeedbackLoopLayoutImageSamplingInstance::setup (void)
+{
+       const InstanceInterface&                                vki                                             = m_context.getInstanceInterface();
+       const DeviceInterface&                                  vk                                              = m_context.getDeviceInterface();
+       const VkPhysicalDevice                                  physDevice                              = m_context.getPhysicalDevice();
+       const VkDevice                                                  vkDevice                                = m_context.getDevice();
+       const VkQueue                                                   queue                                   = m_context.getUniversalQueue();
+       const deUint32                                                  queueFamilyIndex                = m_context.getUniversalQueueFamilyIndex();
+       SimpleAllocator                                                 memAlloc                                (vk, vkDevice, getPhysicalDeviceMemoryProperties(m_context.getInstanceInterface(), m_context.getPhysicalDevice()));
+       const VkComponentMapping                                componentMappingRGBA    = { VK_COMPONENT_SWIZZLE_R, VK_COMPONENT_SWIZZLE_G, VK_COMPONENT_SWIZZLE_B, VK_COMPONENT_SWIZZLE_A };
+       tcu::UVec2                                                              renderSize                              = m_useImageAsColorOrDSAttachment ? tcu::UVec2({ (unsigned)m_imageSize.x(), (unsigned)m_imageSize.y() }) : m_renderSize;
+
+       DE_ASSERT(m_samplerParams.pNext == DE_NULL);
+
+       // Create texture images, views and samplers
+       {
+               VkImageCreateFlags                      imageFlags                      = 0u;
+
+               if (m_imageViewType == VK_IMAGE_VIEW_TYPE_CUBE || m_imageViewType == VK_IMAGE_VIEW_TYPE_CUBE_ARRAY)
+                       imageFlags = VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT;
+
+               // Initialize texture data
+               if (isCompressedFormat(m_imageFormat))
+                       m_texture = createTestTexture(mapVkCompressedFormat(m_imageFormat), m_imageViewType, m_imageSize, m_layerCount);
+               else
+                       m_texture = createTestTexture(mapVkFormat(m_imageFormat), m_imageViewType, m_imageSize, m_layerCount);
+
+               VkImageUsageFlags imageUsageFlags = VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT |
+                       VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT;
+
+               if (isDepthStencilFormat(m_imageFormat))
+                       imageUsageFlags |= VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT;
+               else
+                       imageUsageFlags |= VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT;
+
+               const VkImageCreateInfo imageParams =
+               {
+                       VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,                                                    // VkStructureType                      sType;
+                       DE_NULL,                                                                                                                // const void*                          pNext;
+                       imageFlags,                                                                                                             // VkImageCreateFlags           flags;
+                       getCompatibleImageType(m_imageViewType),                                                // VkImageType                          imageType;
+                       m_imageFormat,                                                                                                  // VkFormat                                     format;
+                       {                                                                                                                               // VkExtent3D                           extent;
+                               (deUint32)m_imageSize.x(),
+                               (deUint32)m_imageSize.y(),
+                               (deUint32)m_imageSize.z()
+                       },
+                       (deUint32)m_texture->getNumLevels(),                                                    // deUint32                                     mipLevels;
+                       (deUint32)m_layerCount,                                                                                 // deUint32                                     arrayLayers;
+                       VK_SAMPLE_COUNT_1_BIT,                                                                                  // VkSampleCountFlagBits        samples;
+                       VK_IMAGE_TILING_OPTIMAL,                                                                                // VkImageTiling                        tiling;
+                       imageUsageFlags,                                                                                                // VkImageUsageFlags            usage;
+                       VK_SHARING_MODE_EXCLUSIVE,                                                                              // VkSharingMode                        sharingMode;
+                       1u,                                                                                                                             // deUint32                                     queueFamilyIndexCount;
+                       &queueFamilyIndex,                                                                                              // const deUint32*                      pQueueFamilyIndices;
+                       VK_IMAGE_LAYOUT_UNDEFINED                                                                               // VkImageLayout                        initialLayout;
+               };
+
+               m_images.resize(m_imageCount);
+               m_imageAllocs.resize(m_imageCount);
+               m_imageViews.resize(m_imageCount);
+
+               // Create command pool
+               m_cmdPool = createCommandPool(vk, vkDevice, VK_COMMAND_POOL_CREATE_TRANSIENT_BIT, queueFamilyIndex);
+               m_cmdBuffer = allocateCommandBuffer(vk, vkDevice, *m_cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY);
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       m_images[imgNdx] = SharedImagePtr(new UniqueImage(createImage(vk, vkDevice, &imageParams)));
+                       m_imageAllocs[imgNdx] = SharedAllocPtr(new UniqueAlloc(allocateImage(vki, vk, physDevice, vkDevice, **m_images[imgNdx], MemoryRequirement::Any, memAlloc, m_allocationKind)));
+                       VK_CHECK(vk.bindImageMemory(vkDevice, **m_images[imgNdx], (*m_imageAllocs[imgNdx])->getMemory(), (*m_imageAllocs[imgNdx])->getOffset()));
+
+                       // Upload texture data
+                       uploadTestTexture(vk, vkDevice, queue, queueFamilyIndex, memAlloc, *m_texture, **m_images[imgNdx], m_imageLayout);
+
+                       // Create image view and sampler
+                       const VkImageViewCreateInfo imageViewParams =
+                       {
+                               VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO,       // VkStructureType                      sType;
+                               DE_NULL,                                                                        // const void*                          pNext;
+                               0u,                                                                                     // VkImageViewCreateFlags       flags;
+                               **m_images[imgNdx],                                                     // VkImage                                      image;
+                               m_imageViewType,                                                        // VkImageViewType                      viewType;
+                               m_imageFormat,                                                          // VkFormat                                     format;
+                               m_componentMapping,                                                     // VkComponentMapping           components;
+                               m_subresourceRange,                                                     // VkImageSubresourceRange      subresourceRange;
+                       };
+
+                       m_imageViews[imgNdx] = SharedImageViewPtr(new UniqueImageView(createImageView(vk, vkDevice, &imageViewParams)));
+               }
+
+               m_sampler       = createSampler(vk, vkDevice, &m_samplerParams);
+       }
+
+       // Create descriptor set for image and sampler
+       {
+               DescriptorPoolBuilder descriptorPoolBuilder;
+               if (m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE)
+                       descriptorPoolBuilder.addType(VK_DESCRIPTOR_TYPE_SAMPLER, 1u);
+               descriptorPoolBuilder.addType(m_samplingType, m_imageCount);
+               m_descriptorPool = descriptorPoolBuilder.build(vk, vkDevice, VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT,
+                       m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE ? m_imageCount + 1u : m_imageCount);
+
+               DescriptorSetLayoutBuilder setLayoutBuilder;
+               if (m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE)
+                       setLayoutBuilder.addSingleBinding(VK_DESCRIPTOR_TYPE_SAMPLER, VK_SHADER_STAGE_FRAGMENT_BIT);
+               setLayoutBuilder.addArrayBinding(m_samplingType, m_imageCount, VK_SHADER_STAGE_FRAGMENT_BIT);
+               m_descriptorSetLayout = setLayoutBuilder.build(vk, vkDevice);
+
+               const VkDescriptorSetAllocateInfo descriptorSetAllocateInfo =
+               {
+                       VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO,         // VkStructureType                              sType;
+                       DE_NULL,                                                                                        // const void*                                  pNext;
+                       *m_descriptorPool,                                                                      // VkDescriptorPool                             descriptorPool;
+                       1u,                                                                                                     // deUint32                                             setLayoutCount;
+                       &m_descriptorSetLayout.get()                                            // const VkDescriptorSetLayout* pSetLayouts;
+               };
+
+               m_descriptorSet = allocateDescriptorSet(vk, vkDevice, &descriptorSetAllocateInfo);
+
+               const VkSampler sampler = m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE ? DE_NULL : *m_sampler;
+               std::vector<VkDescriptorImageInfo> descriptorImageInfo(m_imageCount);
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       descriptorImageInfo[imgNdx].sampler             = sampler;                                                                      // VkSampler            sampler;
+                       descriptorImageInfo[imgNdx].imageView   = **m_imageViews[imgNdx];                                       // VkImageView          imageView;
+                       descriptorImageInfo[imgNdx].imageLayout = m_imageLayout;                                                        // VkImageLayout        imageLayout;
+               }
+
+               DescriptorSetUpdateBuilder setUpdateBuilder;
+               if (m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE)
+               {
+                       const VkDescriptorImageInfo descriptorSamplerInfo =
+                       {
+                               *m_sampler,                                                                     // VkSampler            sampler;
+                               DE_NULL,                                                                        // VkImageView          imageView;
+                               m_imageLayout,                                                          // VkImageLayout        imageLayout;
+                       };
+                       setUpdateBuilder.writeSingle(*m_descriptorSet, DescriptorSetUpdateBuilder::Location::binding(0), VK_DESCRIPTOR_TYPE_SAMPLER, &descriptorSamplerInfo);
+               }
+
+               const deUint32 binding = m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE ? 1u : 0u;
+               setUpdateBuilder.writeArray(*m_descriptorSet, DescriptorSetUpdateBuilder::Location::binding(binding), m_samplingType, m_imageCount, descriptorImageInfo.data());
+               setUpdateBuilder.update(vk, vkDevice);
+       }
+
+       // Create color images and views
+       {
+               const VkImageCreateInfo colorImageParams =
+               {
+                       VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,                                                                            // VkStructureType                      sType;
+                       DE_NULL,                                                                                                                                        // const void*                          pNext;
+                       0u,                                                                                                                                                     // VkImageCreateFlags           flags;
+                       VK_IMAGE_TYPE_2D,                                                                                                                       // VkImageType                          imageType;
+                       m_colorFormat,                                                                                                                          // VkFormat                                     format;
+                       { (deUint32)renderSize.x(), (deUint32)renderSize.y(), 1u },                                     // VkExtent3D                           extent;
+                       1u,                                                                                                                                                     // deUint32                                     mipLevels;
+                       1u,                                                                                                                                                     // deUint32                                     arrayLayers;
+                       VK_SAMPLE_COUNT_1_BIT,                                                                                                          // VkSampleCountFlagBits        samples;
+                       VK_IMAGE_TILING_OPTIMAL,                                                                                                        // VkImageTiling                        tiling;
+                       VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT,          // VkImageUsageFlags            usage;
+                       VK_SHARING_MODE_EXCLUSIVE,                                                                                                      // VkSharingMode                        sharingMode;
+                       1u,                                                                                                                                                     // deUint32                                     queueFamilyIndexCount;
+                       &queueFamilyIndex,                                                                                                                      // const deUint32*                      pQueueFamilyIndices;
+                       VK_IMAGE_LAYOUT_UNDEFINED                                                                                                       // VkImageLayout                        initialLayout;
+               };
+
+               m_colorImages.resize(m_imageCount);
+               m_colorImageAllocs.resize(m_imageCount);
+               m_colorAttachmentViews.resize(m_imageCount);
+
+               if (m_useImageAsColorOrDSAttachment)
+               {
+                       for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+                       {
+                               m_colorImages[imgNdx] = m_images[imgNdx];
+                               m_colorImageAllocs[imgNdx] = m_imageAllocs[imgNdx];
+                               m_colorAttachmentViews[imgNdx] = m_imageViews[imgNdx];
+                       }
+               }
+               else
+               {
+                       for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+                       {
+                               m_colorImages[imgNdx] = SharedImagePtr(new UniqueImage(createImage(vk, vkDevice, &colorImageParams)));
+                               m_colorImageAllocs[imgNdx] = SharedAllocPtr(new UniqueAlloc(allocateImage(vki, vk, physDevice, vkDevice, **m_colorImages[imgNdx], MemoryRequirement::Any, memAlloc, m_allocationKind)));
+                               VK_CHECK(vk.bindImageMemory(vkDevice, **m_colorImages[imgNdx], (*m_colorImageAllocs[imgNdx])->getMemory(), (*m_colorImageAllocs[imgNdx])->getOffset()));
+
+                               const VkImageViewCreateInfo colorAttachmentViewParams =
+                               {
+                                       VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO,                       // VkStructureType                      sType;
+                                       DE_NULL,                                                                                        // const void*                          pNext;
+                                       0u,                                                                                                     // VkImageViewCreateFlags       flags;
+                                       **m_colorImages[imgNdx],                                                        // VkImage                                      image;
+                                       VK_IMAGE_VIEW_TYPE_2D,                                                          // VkImageViewType                      viewType;
+                                       m_colorFormat,                                                                          // VkFormat                                     format;
+                                       componentMappingRGBA,                                                           // VkComponentMapping           components;
+                                       { VK_IMAGE_ASPECT_COLOR_BIT, 0u, 1u, 0u, 1u }           // VkImageSubresourceRange      subresourceRange;
+                               };
+
+                               m_colorAttachmentViews[imgNdx] = SharedImageViewPtr(new UniqueImageView(createImageView(vk, vkDevice, &colorAttachmentViewParams)));
+                       }
+               }
+       }
+
+       // Create render pass
+       {
+               std::vector<VkAttachmentDescription>    attachmentDescriptions(m_imageCount);
+               std::vector<VkAttachmentReference>              attachmentReferences(m_imageCount);
+
+               VkAttachmentLoadOp      loadOp          = m_useImageAsColorOrDSAttachment ? VK_ATTACHMENT_LOAD_OP_LOAD : VK_ATTACHMENT_LOAD_OP_CLEAR;
+               VkImageLayout           imageLayout     = m_useImageAsColorOrDSAttachment ? m_imageLayout : VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL;
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       attachmentDescriptions[imgNdx].flags                    = 0u;                                                                                                                                   // VkAttachmentDescriptionFlags         flags;
+                       attachmentDescriptions[imgNdx].format                   = m_useImageAsColorOrDSAttachment ? m_imageFormat : m_colorFormat;              // VkFormat                                                     format;
+                       attachmentDescriptions[imgNdx].samples                  = VK_SAMPLE_COUNT_1_BIT;                                                                                                // VkSampleCountFlagBits                        samples;
+                       attachmentDescriptions[imgNdx].loadOp                   = loadOp;                                                                                                                               // VkAttachmentLoadOp                           loadOp;
+                       attachmentDescriptions[imgNdx].storeOp                  = VK_ATTACHMENT_STORE_OP_STORE;                                                                                 // VkAttachmentStoreOp                          storeOp;
+                       attachmentDescriptions[imgNdx].stencilLoadOp    = loadOp;                                                                                                                               // VkAttachmentLoadOp                           stencilLoadOp;
+                       attachmentDescriptions[imgNdx].stencilStoreOp   = VK_ATTACHMENT_STORE_OP_STORE;                                                                                 // VkAttachmentStoreOp                          stencilStoreOp;
+                       attachmentDescriptions[imgNdx].initialLayout    = imageLayout;                                                                                                                  // VkImageLayout                                        initialLayout;
+                       attachmentDescriptions[imgNdx].finalLayout              = imageLayout;                                                                                                                  // VkImageLayout                                        finalLayout;
+
+                       attachmentReferences[imgNdx].attachment                 = (deUint32)imgNdx;                                                                                                             // deUint32                                                     attachment;
+                       attachmentReferences[imgNdx].layout                             = imageLayout;                                                                                                                  // VkImageLayout                                        layout;
+               }
+
+               const VkSubpassDescription subpassDescription =
+               {
+                       0u,                                                                                                     // VkSubpassDescriptionFlags    flags;
+                       VK_PIPELINE_BIND_POINT_GRAPHICS,                                        // VkPipelineBindPoint                  pipelineBindPoint;
+                       0u,                                                                                                     // deUint32                                             inputAttachmentCount;
+                       DE_NULL,                                                                                        // const VkAttachmentReference* pInputAttachments;
+                       (deUint32)m_imageCount,                                                         // deUint32                                             colorAttachmentCount;
+                       &attachmentReferences[0],                                                       // const VkAttachmentReference* pColorAttachments;
+                       DE_NULL,                                                                                        // const VkAttachmentReference* pResolveAttachments;
+                       DE_NULL,                                                                                        // const VkAttachmentReference* pDepthStencilAttachment;
+                       0u,                                                                                                     // deUint32                                             preserveAttachmentCount;
+                       DE_NULL                                                                                         // const VkAttachmentReference* pPreserveAttachments;
+               };
+
+               std::vector<VkSubpassDependency> subpassDependencies;
+
+               if (m_useImageAsColorOrDSAttachment)
+               {
+                       const VkSubpassDependency spdVal =
+                       {
+                               0u,                                                                                             //      uint32_t                                srcSubpass;
+                               0u,                                                                                             //      uint32_t                                dstSubpass;
+                               VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT,                  //      VkPipelineStageFlags    srcStageMask;
+                               VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,  //      VkPipelineStageFlags    dstStageMask;
+                               VK_ACCESS_SHADER_READ_BIT,                                              //      VkAccessFlags                   srcAccessMask;
+                               VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT,                   //      VkAccessFlags                   dstAccessMask;
+                               VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT,                    //      VkDependencyFlags               dependencyFlags;
+                       };
+
+                       subpassDependencies.push_back(spdVal);
+               }
+
+               const VkRenderPassCreateInfo renderPassParams =
+               {
+                       VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO,                      // VkStructureType                                      sType;
+                       DE_NULL,                                                                                        // const void*                                          pNext;
+                       0u,                                                                                                     // VkRenderPassCreateFlags                      flags;
+                       (deUint32)attachmentDescriptions.size(),                        // deUint32                                                     attachmentCount;
+                       &attachmentDescriptions[0],                                                     // const VkAttachmentDescription*       pAttachments;
+                       1u,                                                                                                     // deUint32                                                     subpassCount;
+                       &subpassDescription,                                                            // const VkSubpassDescription*          pSubpasses;
+                       static_cast<uint32_t>(subpassDependencies.size()),      // deUint32                                                     dependencyCount;
+                       de::dataOrNull(subpassDependencies),                            // const VkSubpassDependency*           pDependencies;
+               };
+
+               m_renderPass = createRenderPass(vk, vkDevice, &renderPassParams);
+       }
+
+       // Create framebuffer
+       {
+               std::vector<VkImageView> pAttachments(m_imageCount);
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+                       pAttachments[imgNdx] =  m_colorAttachmentViews[imgNdx]->get();
+
+               const VkFramebufferCreateInfo framebufferParams =
+               {
+                       VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO,                      // VkStructureType                      sType;
+                       DE_NULL,                                                                                        // const void*                          pNext;
+                       0u,                                                                                                     // VkFramebufferCreateFlags     flags;
+                       *m_renderPass,                                                                          // VkRenderPass                         renderPass;
+                       (deUint32)m_imageCount,                                                         // deUint32                                     attachmentCount;
+                       &pAttachments[0],                                                                       // const VkImageView*           pAttachments;
+                       (deUint32)renderSize.x(),                                                       // deUint32                                     width;
+                       (deUint32)renderSize.y(),                                                       // deUint32                                     height;
+                       1u                                                                                                      // deUint32                                     layers;
+               };
+
+               m_framebuffer = createFramebuffer(vk, vkDevice, &framebufferParams);
+       }
+
+       // Create pipeline layout
+       {
+               const VkPipelineLayoutCreateInfo pipelineLayoutParams =
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO,          // VkStructureType                              sType;
+                       DE_NULL,                                                                                        // const void*                                  pNext;
+                       0u,                                                                                                     // VkPipelineLayoutCreateFlags  flags;
+                       1u,                                                                                                     // deUint32                                             setLayoutCount;
+                       &m_descriptorSetLayout.get(),                                           // const VkDescriptorSetLayout* pSetLayouts;
+                       0u,                                                                                                     // deUint32                                             pushConstantRangeCount;
+                       DE_NULL                                                                                         // const VkPushConstantRange*   pPushConstantRanges;
+               };
+
+               m_fragmentStatePipelineLayout = createPipelineLayout(vk, vkDevice, &pipelineLayoutParams);
+       }
+
+       m_vertexShaderModule    = createShaderModule(vk, vkDevice, m_context.getBinaryCollection().get("tex_vert"), 0);
+       m_fragmentShaderModule  = createShaderModule(vk, vkDevice, m_context.getBinaryCollection().get("tex_frag"), 0);
+
+       // Create pipeline
+       {
+               const VkVertexInputBindingDescription vertexInputBindingDescription =
+               {
+                       0u,                                                                     // deUint32                                     binding;
+                       sizeof(Vertex4Tex4),                            // deUint32                                     strideInBytes;
+                       VK_VERTEX_INPUT_RATE_VERTEX                     // VkVertexInputStepRate        inputRate;
+               };
+
+               const VkVertexInputAttributeDescription vertexInputAttributeDescriptions[2] =
+               {
+                       {
+                               0u,                                                                             // deUint32     location;
+                               0u,                                                                             // deUint32     binding;
+                               VK_FORMAT_R32G32B32A32_SFLOAT,                  // VkFormat     format;
+                               0u                                                                              // deUint32     offset;
+                       },
+                       {
+                               1u,                                                                             // deUint32     location;
+                               0u,                                                                             // deUint32     binding;
+                               VK_FORMAT_R32G32B32A32_SFLOAT,                  // VkFormat     format;
+                               DE_OFFSET_OF(Vertex4Tex4, texCoord),    // deUint32     offset;
+                       }
+               };
+
+               const VkPipelineVertexInputStateCreateInfo vertexInputStateParams =
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO,              // VkStructureType                                                      sType;
+                       DE_NULL,                                                                                                                // const void*                                                          pNext;
+                       0u,                                                                                                                             // VkPipelineVertexInputStateCreateFlags        flags;
+                       1u,                                                                                                                             // deUint32                                                                     vertexBindingDescriptionCount;
+                       &vertexInputBindingDescription,                                                                 // const VkVertexInputBindingDescription*       pVertexBindingDescriptions;
+                       2u,                                                                                                                             // deUint32                                                                     vertexAttributeDescriptionCount;
+                       vertexInputAttributeDescriptions                                                                // const VkVertexInputAttributeDescription*     pVertexAttributeDescriptions;
+               };
+
+               const std::vector<VkViewport>   viewports       (1, makeViewport(renderSize));
+               const std::vector<VkRect2D>             scissors        (1, makeRect2D(renderSize));
+
+               std::vector<VkPipelineColorBlendAttachmentState>        colorBlendAttachmentStates(m_imageCount);
+
+               VkColorComponentFlags colorComponents = VK_COLOR_COMPONENT_R_BIT | VK_COLOR_COMPONENT_G_BIT | VK_COLOR_COMPONENT_B_BIT | VK_COLOR_COMPONENT_A_BIT;
+
+               if (m_interleaveReadWriteComponents)
+                       colorComponents = VK_COLOR_COMPONENT_R_BIT | VK_COLOR_COMPONENT_B_BIT;
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       colorBlendAttachmentStates[imgNdx].blendEnable                  = false;                                                                                                // VkBool32                                     blendEnable;
+                       colorBlendAttachmentStates[imgNdx].srcColorBlendFactor  = VK_BLEND_FACTOR_ONE;                                                                  // VkBlendFactor                        srcColorBlendFactor;
+                       colorBlendAttachmentStates[imgNdx].dstColorBlendFactor  = VK_BLEND_FACTOR_ZERO;                                                                 // VkBlendFactor                        dstColorBlendFactor;
+                       colorBlendAttachmentStates[imgNdx].colorBlendOp                 = VK_BLEND_OP_ADD;                                                                              // VkBlendOp                            colorBlendOp;
+                       colorBlendAttachmentStates[imgNdx].srcAlphaBlendFactor  = VK_BLEND_FACTOR_ONE;                                                                  // VkBlendFactor                        srcAlphaBlendFactor;
+                       colorBlendAttachmentStates[imgNdx].dstAlphaBlendFactor  = VK_BLEND_FACTOR_ZERO;                                                                 // VkBlendFactor                        dstAlphaBlendFactor;
+                       colorBlendAttachmentStates[imgNdx].alphaBlendOp                 = VK_BLEND_OP_ADD;                                                                              // VkBlendOp                            alphaBlendOp;
+                       colorBlendAttachmentStates[imgNdx].colorWriteMask               = colorComponents;                                                                              // VkColorComponentFlags        colorWriteMask;
+               }
+
+               const VkPipelineColorBlendStateCreateInfo colorBlendStateParams =
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO,       // VkStructureType                                                              sType;
+                       DE_NULL,                                                                                                        // const void*                                                                  pNext;
+                       0u,                                                                                                                     // VkPipelineColorBlendStateCreateFlags                 flags;
+                       false,                                                                                                          // VkBool32                                                                             logicOpEnable;
+                       VK_LOGIC_OP_COPY,                                                                                       // VkLogicOp                                                                    logicOp;
+                       (deUint32)m_imageCount,                                                                         // deUint32                                                                             attachmentCount;
+                       &colorBlendAttachmentStates[0],                                                         // const VkPipelineColorBlendAttachmentState*   pAttachments;
+                       { 0.0f, 0.0f, 0.0f, 0.0f }                                                                      // float                                                                                blendConstants[4];
+               };
+
+               m_graphicsPipeline.setMonolithicPipelineLayout(*m_fragmentStatePipelineLayout)
+                                                 .setDefaultDepthStencilState()
+                                                 .setDefaultRasterizationState()
+                                                 .setDefaultMultisampleState()
+                                                 .setupVertexInputStete(&vertexInputStateParams)
+                                                 .setupPreRasterizationShaderState(viewports,
+                                                                                                               scissors,
+                                                                                                               *m_preRasterizationStatePipelineLayout,
+                                                                                                               *m_renderPass,
+                                                                                                               0u,
+                                                                                                               *m_vertexShaderModule)
+                                                 .setupFragmentShaderState(*m_fragmentStatePipelineLayout, *m_renderPass, 0u, *m_fragmentShaderModule)
+                                                 .setupFragmentOutputState(*m_renderPass, 0u, &colorBlendStateParams)
+                                                 .buildPipeline();
+       }
+
+       // Create vertex buffer
+       {
+               const VkDeviceSize                      vertexBufferSize        = (VkDeviceSize)(m_vertices.size() * sizeof(Vertex4Tex4));
+               const VkBufferCreateInfo        vertexBufferParams      =
+               {
+                       VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO,           // VkStructureType              sType;
+                       DE_NULL,                                                                        // const void*                  pNext;
+                       0u,                                                                                     // VkBufferCreateFlags  flags;
+                       vertexBufferSize,                                                       // VkDeviceSize                 size;
+                       VK_BUFFER_USAGE_VERTEX_BUFFER_BIT,                      // VkBufferUsageFlags   usage;
+                       VK_SHARING_MODE_EXCLUSIVE,                                      // VkSharingMode                sharingMode;
+                       1u,                                                                                     // deUint32                             queueFamilyIndexCount;
+                       &queueFamilyIndex                                                       // const deUint32*              pQueueFamilyIndices;
+               };
+
+               DE_ASSERT(vertexBufferSize > 0);
+
+               m_vertexBuffer          = createBuffer(vk, vkDevice, &vertexBufferParams);
+               m_vertexBufferAlloc = allocateBuffer(vki, vk, physDevice, vkDevice, *m_vertexBuffer, MemoryRequirement::HostVisible, memAlloc, m_allocationKind);
+               VK_CHECK(vk.bindBufferMemory(vkDevice, *m_vertexBuffer, m_vertexBufferAlloc->getMemory(), m_vertexBufferAlloc->getOffset()));
+
+               // Load vertices into vertex buffer
+               deMemcpy(m_vertexBufferAlloc->getHostPtr(), &m_vertices[0], (size_t)vertexBufferSize);
+               flushAlloc(vk, vkDevice, *m_vertexBufferAlloc);
+       }
+
+       // Create command buffer
+       {
+               VkFormat clearFormat = m_useImageAsColorOrDSAttachment ? m_imageFormat : m_colorFormat;
+               const std::vector<VkClearValue> attachmentClearValues (m_imageCount, defaultClearValue(clearFormat));
+
+               std::vector<VkImageMemoryBarrier> preAttachmentBarriers(m_imageCount);
+
+               VkAccessFlags dstAccessMask = isDepthStencilFormat(m_imageFormat) ? VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT : VK_ACCESS_SHADER_READ_BIT;
+               VkPipelineStageFlags pipelineStageFlags = isDepthStencilFormat(m_imageFormat) ? VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT : VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT;
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       preAttachmentBarriers[imgNdx].sType                                                             = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER;                                                               // VkStructureType                      sType;
+                       preAttachmentBarriers[imgNdx].pNext                                                             = DE_NULL;                                                                                                                              // const void*                          pNext;
+                       preAttachmentBarriers[imgNdx].srcAccessMask                                             = VK_ACCESS_TRANSFER_WRITE_BIT;                                                                                 // VkAccessFlags                        srcAccessMask;
+                       preAttachmentBarriers[imgNdx].dstAccessMask                                             = dstAccessMask;                                                                                                                // VkAccessFlags                        dstAccessMask;
+                       preAttachmentBarriers[imgNdx].oldLayout                                                 = m_imageLayout;                                                                                                                // VkImageLayout                        oldLayout;
+                       preAttachmentBarriers[imgNdx].newLayout                                                 = m_imageLayout;                                                                                                                // VkImageLayout                        newLayout;
+                       preAttachmentBarriers[imgNdx].srcQueueFamilyIndex                               = VK_QUEUE_FAMILY_IGNORED;                                                                                              // deUint32                                     srcQueueFamilyIndex;
+                       preAttachmentBarriers[imgNdx].dstQueueFamilyIndex                               = VK_QUEUE_FAMILY_IGNORED;                                                                                              // deUint32                                     dstQueueFamilyIndex;
+                       preAttachmentBarriers[imgNdx].image                                                             = **m_images[imgNdx];                                                                                                   // VkImage                                      image;
+                       preAttachmentBarriers[imgNdx].subresourceRange                                  = m_subresourceRange;                                                                                                   // VkImageSubresourceRange      subresourceRange;
+               }
+
+               beginCommandBuffer(vk, *m_cmdBuffer, 0u);
+
+               vk.cmdPipelineBarrier(*m_cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, pipelineStageFlags, (VkDependencyFlags)0,
+                       0u, DE_NULL, 0u, DE_NULL, (deUint32)m_imageCount, &preAttachmentBarriers[0]);
+
+               if (!m_useImageAsColorOrDSAttachment)
+               {
+                       // Pipeline barrier for the color attachment, which is a different image than the sampled one.
+                       for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+                       {
+                               preAttachmentBarriers[imgNdx].sType                                                             = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER;                                                               // VkStructureType                      sType;
+                               preAttachmentBarriers[imgNdx].pNext                                                             = DE_NULL;                                                                                                                              // const void*                          pNext;
+                               preAttachmentBarriers[imgNdx].srcAccessMask                                             = (VkAccessFlagBits)0u;                                                                                                 // VkAccessFlags                        srcAccessMask;
+                               preAttachmentBarriers[imgNdx].dstAccessMask                                             = VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT;                                                                 // VkAccessFlags                        dstAccessMask;
+                               preAttachmentBarriers[imgNdx].oldLayout                                                 = VK_IMAGE_LAYOUT_UNDEFINED;                                                                                    // VkImageLayout                        oldLayout;
+                               preAttachmentBarriers[imgNdx].newLayout                                                 = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL;                                                             // VkImageLayout                        newLayout;
+                               preAttachmentBarriers[imgNdx].srcQueueFamilyIndex                               = VK_QUEUE_FAMILY_IGNORED;                                                                                              // deUint32                                     srcQueueFamilyIndex;
+                               preAttachmentBarriers[imgNdx].dstQueueFamilyIndex                               = VK_QUEUE_FAMILY_IGNORED;                                                                                              // deUint32                                     dstQueueFamilyIndex;
+                               preAttachmentBarriers[imgNdx].image                                                             = **m_colorImages[imgNdx];                                                                                              // VkImage                                      image;
+                               preAttachmentBarriers[imgNdx].subresourceRange.aspectMask               = getAspectFlags(m_colorFormat);                                                                                // VkImageSubresourceRange      subresourceRange;
+                               preAttachmentBarriers[imgNdx].subresourceRange.baseMipLevel             = 0u;
+                               preAttachmentBarriers[imgNdx].subresourceRange.levelCount               = 1u;
+                               preAttachmentBarriers[imgNdx].subresourceRange.baseArrayLayer   = 0u;
+                               preAttachmentBarriers[imgNdx].subresourceRange.layerCount               = 1u;
+                       }
+
+                       vk.cmdPipelineBarrier(*m_cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, (VkDependencyFlags)0,
+                                                                 0u, DE_NULL, 0u, DE_NULL, (deUint32)m_imageCount, &preAttachmentBarriers[0]);
+
+                       beginRenderPass(vk, *m_cmdBuffer, *m_renderPass, *m_framebuffer, makeRect2D(0, 0, renderSize.x(), renderSize.y()), (deUint32)attachmentClearValues.size(), &attachmentClearValues[0]);
+               }
+               else
+               {
+                       // Do not clear the color attachments as we are using the sampled texture as color attachment as well.
+                       beginRenderPass(vk, *m_cmdBuffer, *m_renderPass, *m_framebuffer, makeRect2D(0, 0, renderSize.x(), renderSize.y()), 0u, DE_NULL);
+               }
+
+               vk.cmdBindPipeline(*m_cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, m_graphicsPipeline.getPipeline());
+
+               vk.cmdBindDescriptorSets(*m_cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, *m_fragmentStatePipelineLayout, 0, 1, &m_descriptorSet.get(), 0, DE_NULL);
+
+               const VkDeviceSize vertexBufferOffset = 0;
+               vk.cmdBindVertexBuffers(*m_cmdBuffer, 0, 1, &m_vertexBuffer.get(), &vertexBufferOffset);
+               vk.cmdDraw(*m_cmdBuffer, (deUint32)m_vertices.size(), 1, 0, 0);
+
+               endRenderPass(vk, *m_cmdBuffer);
+               endCommandBuffer(vk, *m_cmdBuffer);
+       }
+}
+
+AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance::AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance (Context&                                         context,
+                                                                                                                                                                                                                                                         ImageSamplingInstanceParams   params,
+                                                                                                                                                                                                                                                         bool                                                  useImageAsColorOrDSAttachment_,
+                                                                                                                                                                                                                                                         bool                                                  useDifferentAreasSampleWrite_,
+                                                                                                                                                                                                                                                         bool                                                  interleaveReadWriteComponents_)
+       : AttachmentFeedbackLoopLayoutImageSamplingInstance             (context, params, useImageAsColorOrDSAttachment_, useDifferentAreasSampleWrite_, interleaveReadWriteComponents_)
+       , m_separateStencilUsage                                                                (params.separateStencilUsage)
+{
+}
+
+AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance::~AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance (void)
+{
+}
+
+void AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance::setup (void)
+{
+       const InstanceInterface&                                vki                                             = m_context.getInstanceInterface();
+       const DeviceInterface&                                  vk                                              = m_context.getDeviceInterface();
+       const VkPhysicalDevice                                  physDevice                              = m_context.getPhysicalDevice();
+       const VkDevice                                                  vkDevice                                = m_context.getDevice();
+       const VkQueue                                                   queue                                   = m_context.getUniversalQueue();
+       const deUint32                                                  queueFamilyIndex                = m_context.getUniversalQueueFamilyIndex();
+       SimpleAllocator                                                 memAlloc                                (vk, vkDevice, getPhysicalDeviceMemoryProperties(m_context.getInstanceInterface(), m_context.getPhysicalDevice()));
+       tcu::UVec2                                                              renderSize                              = tcu::UVec2({ (unsigned)m_imageSize.x(), (unsigned)m_imageSize.y() });
+
+       DE_ASSERT(m_useImageAsColorOrDSAttachment && isDepthStencilFormat(m_imageFormat));
+       DE_ASSERT(m_samplerParams.pNext == DE_NULL);
+
+       // Create texture images, views
+       {
+               VkImageCreateFlags                      imageFlags                      = 0u;
+
+               if (m_imageViewType == VK_IMAGE_VIEW_TYPE_CUBE || m_imageViewType == VK_IMAGE_VIEW_TYPE_CUBE_ARRAY)
+                       imageFlags = VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT;
+
+               // Initialize texture data
+               if (isCompressedFormat(m_imageFormat))
+                       m_texture = createTestTexture(mapVkCompressedFormat(m_imageFormat), m_imageViewType, m_imageSize, m_layerCount);
+               else
+                       m_texture = createTestTexture(mapVkFormat(m_imageFormat), m_imageViewType, m_imageSize, m_layerCount);
+
+               VkImageUsageFlags imageUsageFlags =
+                       VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT | VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT |
+                       VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT;
+
+               const VkImageCreateInfo imageParams =
+               {
+                       VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,                                                    // VkStructureType                      sType;
+                       DE_NULL,                                                                                                                // const void*                          pNext;
+                       imageFlags,                                                                                                             // VkImageCreateFlags           flags;
+                       getCompatibleImageType(m_imageViewType),                                                // VkImageType                          imageType;
+                       m_imageFormat,                                                                                                  // VkFormat                                     format;
+                       {                                                                                                                               // VkExtent3D                           extent;
+                               (deUint32)m_imageSize.x(),
+                               (deUint32)m_imageSize.y(),
+                               (deUint32)m_imageSize.z()
+                       },
+                       (deUint32)m_texture->getNumLevels(),                                                    // deUint32                                     mipLevels;
+                       (deUint32)m_layerCount,                                                                                 // deUint32                                     arrayLayers;
+                       VK_SAMPLE_COUNT_1_BIT,                                                                                  // VkSampleCountFlagBits        samples;
+                       VK_IMAGE_TILING_OPTIMAL,                                                                                // VkImageTiling                        tiling;
+                       imageUsageFlags,                                                                                                // VkImageUsageFlags            usage;
+                       VK_SHARING_MODE_EXCLUSIVE,                                                                              // VkSharingMode                        sharingMode;
+                       1u,                                                                                                                             // deUint32                                     queueFamilyIndexCount;
+                       &queueFamilyIndex,                                                                                              // const deUint32*                      pQueueFamilyIndices;
+                       VK_IMAGE_LAYOUT_UNDEFINED                                                                               // VkImageLayout                        initialLayout;
+               };
+
+               m_images.resize(m_imageCount);
+               m_imageAllocs.resize(m_imageCount);
+
+               // Create command pool
+               m_cmdPool = createCommandPool(vk, vkDevice, VK_COMMAND_POOL_CREATE_TRANSIENT_BIT | VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, queueFamilyIndex);
+               m_cmdBuffer = allocateCommandBuffer(vk, vkDevice, *m_cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY);
+
+               int numImageViews = m_interleaveReadWriteComponents ? m_imageCount + 1 : m_imageCount;
+               m_imageViews.resize(numImageViews);
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       m_images[imgNdx] = SharedImagePtr(new UniqueImage(createImage(vk, vkDevice, &imageParams)));
+                       m_imageAllocs[imgNdx] = SharedAllocPtr(new UniqueAlloc(allocateImage(vki, vk, physDevice, vkDevice, **m_images[imgNdx], MemoryRequirement::Any, memAlloc, m_allocationKind)));
+                       VK_CHECK(vk.bindImageMemory(vkDevice, **m_images[imgNdx], (*m_imageAllocs[imgNdx])->getMemory(), (*m_imageAllocs[imgNdx])->getOffset()));
+
+                       // Upload texture data
+                       uploadTestTexture(vk, vkDevice, queue, queueFamilyIndex, memAlloc, *m_texture, **m_images[imgNdx], m_imageLayout);
+
+               }
+
+               for (int imgNdx = 0; imgNdx < numImageViews; ++imgNdx)
+               {
+                       VkImage image = (m_interleaveReadWriteComponents && imgNdx == m_imageCount) ? **m_images[imgNdx - 1] : **m_images[imgNdx];
+
+                       // Create image view and sampler
+                       VkImageViewCreateInfo imageViewParams =
+                       {
+                               VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO,       // VkStructureType                      sType;
+                               DE_NULL,                                                                        // const void*                          pNext;
+                               0u,                                                                                     // VkImageViewCreateFlags       flags;
+                               image,                                                                          // VkImage                                      image;
+                               m_imageViewType,                                                        // VkImageViewType                      viewType;
+                               m_imageFormat,                                                          // VkFormat                                     format;
+                               m_componentMapping,                                                     // VkComponentMapping           components;
+                               m_subresourceRange,                                                     // VkImageSubresourceRange      subresourceRange;
+                       };
+
+                       if (m_interleaveReadWriteComponents && imgNdx == m_imageCount)
+                       {
+                               imageViewParams.subresourceRange.aspectMask = getImageAspectFlags(mapVkFormat(m_imageFormat));
+                       }
+
+                       m_imageViews[imgNdx] = SharedImageViewPtr(new UniqueImageView(createImageView(vk, vkDevice, &imageViewParams)));
+               }
+
+               m_sampler       = createSampler(vk, vkDevice, &m_samplerParams);
+       }
+
+       // Create descriptor set for image and sampler
+       {
+               DescriptorPoolBuilder descriptorPoolBuilder;
+               if (m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE)
+                       descriptorPoolBuilder.addType(VK_DESCRIPTOR_TYPE_SAMPLER, 1u);
+               descriptorPoolBuilder.addType(m_samplingType, m_imageCount);
+               m_descriptorPool = descriptorPoolBuilder.build(vk, vkDevice, VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT,
+                       m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE ? m_imageCount + 1u : m_imageCount);
+
+               DescriptorSetLayoutBuilder setLayoutBuilder;
+               if (m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE)
+                       setLayoutBuilder.addSingleBinding(VK_DESCRIPTOR_TYPE_SAMPLER, VK_SHADER_STAGE_FRAGMENT_BIT);
+               setLayoutBuilder.addArrayBinding(m_samplingType, m_imageCount, VK_SHADER_STAGE_FRAGMENT_BIT);
+               m_descriptorSetLayout = setLayoutBuilder.build(vk, vkDevice);
+
+               const VkDescriptorSetAllocateInfo descriptorSetAllocateInfo =
+               {
+                       VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO,         // VkStructureType                              sType;
+                       DE_NULL,                                                                                        // const void*                                  pNext;
+                       *m_descriptorPool,                                                                      // VkDescriptorPool                             descriptorPool;
+                       1u,                                                                                                     // deUint32                                             setLayoutCount;
+                       &m_descriptorSetLayout.get()                                            // const VkDescriptorSetLayout* pSetLayouts;
+               };
+
+               m_descriptorSet = allocateDescriptorSet(vk, vkDevice, &descriptorSetAllocateInfo);
+
+               const VkSampler sampler = m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE ? DE_NULL : *m_sampler;
+               std::vector<VkDescriptorImageInfo> descriptorImageInfo(m_imageCount);
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       descriptorImageInfo[imgNdx].sampler             = sampler;                                                                      // VkSampler            sampler;
+                       descriptorImageInfo[imgNdx].imageView   = **m_imageViews[imgNdx];                                       // VkImageView          imageView;
+                       descriptorImageInfo[imgNdx].imageLayout = m_imageLayout;                                                        // VkImageLayout        imageLayout;
+               }
+
+               DescriptorSetUpdateBuilder setUpdateBuilder;
+               if (m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE)
+               {
+                       const VkDescriptorImageInfo descriptorSamplerInfo =
+                       {
+                               *m_sampler,                                                                     // VkSampler            sampler;
+                               DE_NULL,                                                                        // VkImageView          imageView;
+                               m_imageLayout,                                                          // VkImageLayout        imageLayout;
+                       };
+                       setUpdateBuilder.writeSingle(*m_descriptorSet, DescriptorSetUpdateBuilder::Location::binding(0), VK_DESCRIPTOR_TYPE_SAMPLER, &descriptorSamplerInfo);
+               }
+
+               const deUint32 binding = m_samplingType == VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE ? 1u : 0u;
+               setUpdateBuilder.writeArray(*m_descriptorSet, DescriptorSetUpdateBuilder::Location::binding(binding), m_samplingType, m_imageCount, descriptorImageInfo.data());
+               setUpdateBuilder.update(vk, vkDevice);
+       }
+
+       // Create depth-stencil images and views, no color attachment
+       {
+               m_dsImages.resize(m_imageCount);
+               m_dsImageAllocs.resize(m_imageCount);
+               m_dsAttachmentViews.resize(m_imageCount);
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       m_dsImages[imgNdx] = m_images[imgNdx];
+                       m_dsImageAllocs[imgNdx] = m_imageAllocs[imgNdx];
+                       m_dsAttachmentViews[imgNdx] = m_interleaveReadWriteComponents ? m_imageViews[imgNdx + 1] : m_imageViews[imgNdx];
+               }
+       }
+
+       // Create render pass
+       {
+               std::vector<VkAttachmentDescription>    attachmentDescriptions(m_imageCount);
+               std::vector<VkAttachmentReference>              attachmentReferences(m_imageCount);
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       attachmentDescriptions[imgNdx].flags                    = 0u;                                                                                                                                   // VkAttachmentDescriptionFlags         flags;
+                       attachmentDescriptions[imgNdx].format                   = m_useImageAsColorOrDSAttachment ? m_imageFormat : m_colorFormat;              // VkFormat                                                     format;
+                       attachmentDescriptions[imgNdx].samples                  = VK_SAMPLE_COUNT_1_BIT;                                                                                                // VkSampleCountFlagBits                        samples;
+                       attachmentDescriptions[imgNdx].loadOp                   = VK_ATTACHMENT_LOAD_OP_LOAD;                                                                                   // VkAttachmentLoadOp                           loadOp;
+                       attachmentDescriptions[imgNdx].storeOp                  = VK_ATTACHMENT_STORE_OP_STORE;                                                                                 // VkAttachmentStoreOp                          storeOp;
+                       attachmentDescriptions[imgNdx].stencilLoadOp    = VK_ATTACHMENT_LOAD_OP_LOAD;                                                                                   // VkAttachmentLoadOp                           stencilLoadOp;
+                       attachmentDescriptions[imgNdx].stencilStoreOp   = VK_ATTACHMENT_STORE_OP_STORE;                                                                                 // VkAttachmentStoreOp                          stencilStoreOp;
+                       attachmentDescriptions[imgNdx].initialLayout    = m_imageLayout;                                                                                                                // VkImageLayout                                        initialLayout;
+                       attachmentDescriptions[imgNdx].finalLayout              = m_imageLayout;                                                                                                                // VkImageLayout                                        finalLayout;
+
+                       attachmentReferences[imgNdx].attachment                 = (deUint32)imgNdx;                                                                                                             // deUint32                                                     attachment;
+                       attachmentReferences[imgNdx].layout                             = m_imageLayout;                                                                                                                // VkImageLayout                                        layout;
+               }
+
+               const VkSubpassDescription subpassDescription =
+               {
+                       0u,                                                                                                                                                             // VkSubpassDescriptionFlags    flags;
+                       VK_PIPELINE_BIND_POINT_GRAPHICS,                                                                                                // VkPipelineBindPoint                  pipelineBindPoint;
+                       0u,                                                                                                                                                             // deUint32                                             inputAttachmentCount;
+                       DE_NULL,                                                                                                                                                // const VkAttachmentReference* pInputAttachments;
+                       0u,                                                                                                                                                             // deUint32                                             colorAttachmentCount;
+                       DE_NULL,                                                                                                                                                // const VkAttachmentReference* pColorAttachments;
+                       DE_NULL,                                                                                                                                                // const VkAttachmentReference* pResolveAttachments;
+                       &attachmentReferences[0],                                                                                                               // const VkAttachmentReference* pDepthStencilAttachment;
+                       0u,                                                                                                                                                             // deUint32                                             preserveAttachmentCount;
+                       DE_NULL                                                                                                                                                 // const VkAttachmentReference* pPreserveAttachments;
+               };
+
+               std::vector<VkSubpassDependency> subpassDependencies;
+
+               if (m_useImageAsColorOrDSAttachment)
+               {
+                       const auto srcStageMask         = VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT;
+                       const auto srcAccessMask        = VK_ACCESS_SHADER_READ_BIT;
+                       const auto dstStageMask         = (VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT | VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT);
+                       const auto dstAccessMask        = (VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT | VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT);
+
+                       const VkSubpassDependency spdVal =
+                       {
+                               0u,                                                                             //      uint32_t                                srcSubpass;
+                               0u,                                                                             //      uint32_t                                dstSubpass;
+                               srcStageMask,                                                   //      VkPipelineStageFlags    srcStageMask;
+                               dstStageMask,                                                   //      VkPipelineStageFlags    dstStageMask;
+                               srcAccessMask,                                                  //      VkAccessFlags                   srcAccessMask;
+                               dstAccessMask,                                                  //      VkAccessFlags                   dstAccessMask;
+                               VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT,    //      VkDependencyFlags               dependencyFlags;
+                       };
+
+                       subpassDependencies.push_back(spdVal);
+               }
+
+               const VkRenderPassCreateInfo renderPassParams =
+               {
+                       VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO,                      // VkStructureType                                      sType;
+                       DE_NULL,                                                                                        // const void*                                          pNext;
+                       0u,                                                                                                     // VkRenderPassCreateFlags                      flags;
+                       (deUint32)attachmentDescriptions.size(),                        // deUint32                                                     attachmentCount;
+                       &attachmentDescriptions[0],                                                     // const VkAttachmentDescription*       pAttachments;
+                       1u,                                                                                                     // deUint32                                                     subpassCount;
+                       &subpassDescription,                                                            // const VkSubpassDescription*          pSubpasses;
+                       static_cast<uint32_t>(subpassDependencies.size()),      // deUint32                                                     dependencyCount;
+                       de::dataOrNull(subpassDependencies),                            // const VkSubpassDependency*           pDependencies;
+               };
+
+               m_renderPass = createRenderPass(vk, vkDevice, &renderPassParams);
+       }
+
+       // Create framebuffer
+       {
+               std::vector<VkImageView> pAttachments(m_imageCount);
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       pAttachments[imgNdx] = m_dsAttachmentViews[imgNdx]->get();
+               }
+
+               const VkFramebufferCreateInfo framebufferParams =
+               {
+                       VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO,                      // VkStructureType                      sType;
+                       DE_NULL,                                                                                        // const void*                          pNext;
+                       0u,                                                                                                     // VkFramebufferCreateFlags     flags;
+                       *m_renderPass,                                                                          // VkRenderPass                         renderPass;
+                       (deUint32)m_imageCount,                                                         // deUint32                                     attachmentCount;
+                       &pAttachments[0],                                                                       // const VkImageView*           pAttachments;
+                       (deUint32)renderSize.x(),                                                       // deUint32                                     width;
+                       (deUint32)renderSize.y(),                                                       // deUint32                                     height;
+                       1u                                                                                                      // deUint32                                     layers;
+               };
+
+               m_framebuffer = createFramebuffer(vk, vkDevice, &framebufferParams);
+       }
+
+       // Create pipeline layout
+       {
+               const VkPipelineLayoutCreateInfo pipelineLayoutParams =
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO,          // VkStructureType                              sType;
+                       DE_NULL,                                                                                        // const void*                                  pNext;
+                       0u,                                                                                                     // VkPipelineLayoutCreateFlags  flags;
+                       1u,                                                                                                     // deUint32                                             setLayoutCount;
+                       &m_descriptorSetLayout.get(),                                           // const VkDescriptorSetLayout* pSetLayouts;
+                       0u,                                                                                                     // deUint32                                             pushConstantRangeCount;
+                       DE_NULL                                                                                         // const VkPushConstantRange*   pPushConstantRanges;
+               };
+
+               m_fragmentStatePipelineLayout = createPipelineLayout(vk, vkDevice, &pipelineLayoutParams);
+       }
+
+       m_vertexShaderModule    = createShaderModule(vk, vkDevice, m_context.getBinaryCollection().get("tex_vert"), 0);
+       m_fragmentShaderModule  = createShaderModule(vk, vkDevice, m_context.getBinaryCollection().get("tex_frag"), 0);
+
+       // Create pipeline
+       {
+               const VkVertexInputBindingDescription vertexInputBindingDescription =
+               {
+                       0u,                                                                     // deUint32                                     binding;
+                       sizeof(Vertex4Tex4),                            // deUint32                                     strideInBytes;
+                       VK_VERTEX_INPUT_RATE_VERTEX                     // VkVertexInputStepRate        inputRate;
+               };
+
+               const VkVertexInputAttributeDescription vertexInputAttributeDescriptions[2] =
+               {
+                       {
+                               0u,                                                                             // deUint32     location;
+                               0u,                                                                             // deUint32     binding;
+                               VK_FORMAT_R32G32B32A32_SFLOAT,                  // VkFormat     format;
+                               0u                                                                              // deUint32     offset;
+                       },
+                       {
+                               1u,                                                                             // deUint32     location;
+                               0u,                                                                             // deUint32     binding;
+                               VK_FORMAT_R32G32B32A32_SFLOAT,                  // VkFormat     format;
+                               DE_OFFSET_OF(Vertex4Tex4, texCoord),    // deUint32     offset;
+                       }
+               };
+
+               const VkPipelineVertexInputStateCreateInfo vertexInputStateParams =
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO,              // VkStructureType                                                      sType;
+                       DE_NULL,                                                                                                                // const void*                                                          pNext;
+                       0u,                                                                                                                             // VkPipelineVertexInputStateCreateFlags        flags;
+                       1u,                                                                                                                             // deUint32                                                                     vertexBindingDescriptionCount;
+                       &vertexInputBindingDescription,                                                                 // const VkVertexInputBindingDescription*       pVertexBindingDescriptions;
+                       2u,                                                                                                                             // deUint32                                                                     vertexAttributeDescriptionCount;
+                       vertexInputAttributeDescriptions                                                                // const VkVertexInputAttributeDescription*     pVertexAttributeDescriptions;
+               };
+
+               const std::vector<VkViewport>   viewports       (1, makeViewport(renderSize));
+               const std::vector<VkRect2D>             scissors        (1, makeRect2D(renderSize));
+
+               std::vector<VkPipelineColorBlendAttachmentState>        colorBlendAttachmentStates(m_imageCount);
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       colorBlendAttachmentStates[imgNdx].blendEnable                  = false;                                                                                                // VkBool32                                     blendEnable;
+                       colorBlendAttachmentStates[imgNdx].srcColorBlendFactor  = VK_BLEND_FACTOR_ONE;                                                                  // VkBlendFactor                        srcColorBlendFactor;
+                       colorBlendAttachmentStates[imgNdx].dstColorBlendFactor  = VK_BLEND_FACTOR_ZERO;                                                                 // VkBlendFactor                        dstColorBlendFactor;
+                       colorBlendAttachmentStates[imgNdx].colorBlendOp                 = VK_BLEND_OP_ADD;                                                                              // VkBlendOp                            colorBlendOp;
+                       colorBlendAttachmentStates[imgNdx].srcAlphaBlendFactor  = VK_BLEND_FACTOR_ONE;                                                                  // VkBlendFactor                        srcAlphaBlendFactor;
+                       colorBlendAttachmentStates[imgNdx].dstAlphaBlendFactor  = VK_BLEND_FACTOR_ZERO;                                                                 // VkBlendFactor                        dstAlphaBlendFactor;
+                       colorBlendAttachmentStates[imgNdx].alphaBlendOp                 = VK_BLEND_OP_ADD;                                                                              // VkBlendOp                            alphaBlendOp;
+                       colorBlendAttachmentStates[imgNdx].colorWriteMask               = 0u;                                                                                                   // VkColorComponentFlags        colorWriteMask;
+               }
+
+               const VkPipelineColorBlendStateCreateInfo colorBlendStateParams =
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO,       // VkStructureType                                                              sType;
+                       DE_NULL,                                                                                                        // const void*                                                                  pNext;
+                       0u,                                                                                                                     // VkPipelineColorBlendStateCreateFlags                 flags;
+                       false,                                                                                                          // VkBool32                                                                             logicOpEnable;
+                       VK_LOGIC_OP_COPY,                                                                                       // VkLogicOp                                                                    logicOp;
+                       (deUint32)m_imageCount,                                                                         // deUint32                                                                             attachmentCount;
+                       &colorBlendAttachmentStates[0],                                                         // const VkPipelineColorBlendAttachmentState*   pAttachments;
+                       { 0.0f, 0.0f, 0.0f, 0.0f }                                                                      // float                                                                                blendConstants[4];
+               };
+
+               VkBool32 depthTestEnable =
+                       ((m_subresourceRange.aspectMask & VK_IMAGE_ASPECT_DEPTH_BIT) && !m_interleaveReadWriteComponents) ||
+                       ((m_subresourceRange.aspectMask & VK_IMAGE_ASPECT_STENCIL_BIT) && m_interleaveReadWriteComponents);
+
+               VkBool32 stencilTestEnable =
+                       ((m_subresourceRange.aspectMask & VK_IMAGE_ASPECT_STENCIL_BIT) && !m_interleaveReadWriteComponents) ||
+                       ((m_subresourceRange.aspectMask & VK_IMAGE_ASPECT_DEPTH_BIT) && m_interleaveReadWriteComponents);
+
+               const auto stencilFrontOpState  = makeStencilOpState(vk::VK_STENCIL_OP_KEEP, vk::VK_STENCIL_OP_REPLACE, vk::VK_STENCIL_OP_KEEP, vk::VK_COMPARE_OP_NEVER, 0xFFu, 0xFFu, 0u);
+               const auto stencilBackOpState   = makeStencilOpState(vk::VK_STENCIL_OP_KEEP, vk::VK_STENCIL_OP_REPLACE, vk::VK_STENCIL_OP_KEEP, vk::VK_COMPARE_OP_ALWAYS, 0xFFu, 0xFFu, 0u);
+
+               const VkPipelineDepthStencilStateCreateInfo depthStencilStateCreateInfo =
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO,                                                     // VkStructureType                                                      sType
+                       DE_NULL,                                                                                                                                                        // const void*                                                          pNext
+                       0u,                                                                                                                                                                     // VkPipelineDepthStencilStateCreateFlags       flags
+                       depthTestEnable,                                                                                                                                        // VkBool32                                                                     depthTestEnable
+                       depthTestEnable,                                                                                                                                        // VkBool32                                                                     depthWriteEnable
+                       VK_COMPARE_OP_ALWAYS,                                                                                                                           // VkCompareOp                                                          depthCompareOp
+                       DE_FALSE,                                                                                                                                                       // VkBool32                                                                     depthBoundsTestEnable
+                       stencilTestEnable,                                                                                                                                      // VkBool32                                                                     stencilTestEnable
+                       stencilFrontOpState,                                                                                                                            // VkStencilOpState                                                     front
+                       stencilBackOpState,                                                                                                                                     // VkStencilOpState                                                     back
+                       0.0f,                                                                                                                                                           // float                                                                        minDepthBounds
+                       1.0f,                                                                                                                                                           // float                                                                        maxDepthBounds;
+               };
+
+               m_graphicsPipeline.setMonolithicPipelineLayout(*m_fragmentStatePipelineLayout)
+                                                 .setDefaultDepthStencilState()
+                                                 .setDefaultRasterizationState()
+                                                 .setDefaultMultisampleState()
+                                                 .setupVertexInputStete(&vertexInputStateParams)
+                                                 .setupPreRasterizationShaderState(viewports,
+                                                                                                               scissors,
+                                                                                                               *m_preRasterizationStatePipelineLayout,
+                                                                                                               *m_renderPass,
+                                                                                                               0u,
+                                                                                                               *m_vertexShaderModule)
+                                                 .setupFragmentShaderState(*m_fragmentStatePipelineLayout, *m_renderPass, 0u, *m_fragmentShaderModule, &depthStencilStateCreateInfo)
+                                                 .setupFragmentOutputState(*m_renderPass, 0u, &colorBlendStateParams)
+                                                 .buildPipeline();
+
+       }
+
+       // Create vertex buffer
+       {
+               const VkDeviceSize                      vertexBufferSize        = (VkDeviceSize)(m_vertices.size() * sizeof(Vertex4Tex4));
+               const VkBufferCreateInfo        vertexBufferParams      =
+               {
+                       VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO,           // VkStructureType              sType;
+                       DE_NULL,                                                                        // const void*                  pNext;
+                       0u,                                                                                     // VkBufferCreateFlags  flags;
+                       vertexBufferSize,                                                       // VkDeviceSize                 size;
+                       VK_BUFFER_USAGE_VERTEX_BUFFER_BIT,                      // VkBufferUsageFlags   usage;
+                       VK_SHARING_MODE_EXCLUSIVE,                                      // VkSharingMode                sharingMode;
+                       1u,                                                                                     // deUint32                             queueFamilyIndexCount;
+                       &queueFamilyIndex                                                       // const deUint32*              pQueueFamilyIndices;
+               };
+
+               DE_ASSERT(vertexBufferSize > 0);
+
+               m_vertexBuffer          = createBuffer(vk, vkDevice, &vertexBufferParams);
+               m_vertexBufferAlloc = allocateBuffer(vki, vk, physDevice, vkDevice, *m_vertexBuffer, MemoryRequirement::HostVisible, memAlloc, m_allocationKind);
+               VK_CHECK(vk.bindBufferMemory(vkDevice, *m_vertexBuffer, m_vertexBufferAlloc->getMemory(), m_vertexBufferAlloc->getOffset()));
+
+               // Load vertices into vertex buffer
+               deMemcpy(m_vertexBufferAlloc->getHostPtr(), &m_vertices[0], (size_t)vertexBufferSize);
+               flushAlloc(vk, vkDevice, *m_vertexBufferAlloc);
+       }
+
+       // Create command buffer
+       {
+               std::vector<VkImageMemoryBarrier> preAttachmentBarriers(m_imageCount);
+
+               for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+               {
+                       preAttachmentBarriers[imgNdx].sType                                                             = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER;                                                               // VkStructureType                      sType;
+                       preAttachmentBarriers[imgNdx].pNext                                                             = DE_NULL;                                                                                                                              // const void*                          pNext;
+                       preAttachmentBarriers[imgNdx].srcAccessMask                                             = VK_ACCESS_TRANSFER_WRITE_BIT;                                                                                                                                 // VkAccessFlags                        srcAccessMask;
+                       preAttachmentBarriers[imgNdx].dstAccessMask                                             = VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT | VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT;   // VkAccessFlags                        dstAccessMask;
+                       preAttachmentBarriers[imgNdx].oldLayout                                                 = m_imageLayout;                                                                                                                // VkImageLayout                        oldLayout;
+                       preAttachmentBarriers[imgNdx].newLayout                                                 = m_imageLayout;                                                                                                                // VkImageLayout                        newLayout;
+                       preAttachmentBarriers[imgNdx].srcQueueFamilyIndex                               = VK_QUEUE_FAMILY_IGNORED;                                                                                              // deUint32                                     srcQueueFamilyIndex;
+                       preAttachmentBarriers[imgNdx].dstQueueFamilyIndex                               = VK_QUEUE_FAMILY_IGNORED;                                                                                              // deUint32                                     dstQueueFamilyIndex;
+                       preAttachmentBarriers[imgNdx].image                                                             = **m_dsImages[imgNdx];                                                                                                 // VkImage                                      image;
+                       preAttachmentBarriers[imgNdx].subresourceRange.aspectMask               = getAspectFlags(m_imageFormat);                                                                                // VkImageSubresourceRange      subresourceRange;
+                       preAttachmentBarriers[imgNdx].subresourceRange.baseMipLevel             = 0u;
+                       preAttachmentBarriers[imgNdx].subresourceRange.levelCount               = 1u;
+                       preAttachmentBarriers[imgNdx].subresourceRange.baseArrayLayer   = 0u;
+                       preAttachmentBarriers[imgNdx].subresourceRange.layerCount               = 1u;
+               }
+
+               beginCommandBuffer(vk, *m_cmdBuffer, 0u);
+
+               vk.cmdPipelineBarrier(*m_cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT, (VkDependencyFlags)0,
+                       0u, DE_NULL, 0u, DE_NULL, (deUint32)m_imageCount, &preAttachmentBarriers[0]);
+
+               // Do not clear the color attachments as we are using the texture as color attachment.
+               beginRenderPass(vk, *m_cmdBuffer, *m_renderPass, *m_framebuffer, makeRect2D(0, 0, renderSize.x(), renderSize.y()), 0u, DE_NULL);
+
+               vk.cmdBindPipeline(*m_cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, m_graphicsPipeline.getPipeline());
+
+               vk.cmdBindDescriptorSets(*m_cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, *m_fragmentStatePipelineLayout, 0, 1, &m_descriptorSet.get(), 0, DE_NULL);
+
+               const VkDeviceSize vertexBufferOffset = 0;
+               vk.cmdBindVertexBuffers(*m_cmdBuffer, 0, 1, &m_vertexBuffer.get(), &vertexBufferOffset);
+               vk.cmdDraw(*m_cmdBuffer, (deUint32)m_vertices.size(), 1, 0, 0);
+
+               endRenderPass(vk, *m_cmdBuffer);
+               endCommandBuffer(vk, *m_cmdBuffer);
+       }
+}
+
+tcu::TestStatus AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance::verifyImage(void)
+{
+       const tcu::TextureFormat        tcuFormat               = getSizeCompatibleTcuTextureFormat(m_imageFormat);
+       const bool                                      isDepth                 = (!m_interleaveReadWriteComponents && (m_subresourceRange.aspectMask & VK_IMAGE_ASPECT_DEPTH_BIT)) ||
+                                                                                                  (m_interleaveReadWriteComponents && (m_subresourceRange.aspectMask & VK_IMAGE_ASPECT_STENCIL_BIT));
+       const bool                                      isStencil               = (!m_interleaveReadWriteComponents && (m_subresourceRange.aspectMask & VK_IMAGE_ASPECT_STENCIL_BIT)) ||
+                                                                                                  (m_interleaveReadWriteComponents && (m_subresourceRange.aspectMask & VK_IMAGE_ASPECT_DEPTH_BIT));
+       // ImageSamplingInstance::verifyImage() doesn't support stencil sampling.
+       if (!m_useImageAsColorOrDSAttachment && !isStencil)
+               return ImageSamplingInstance::verifyImage();
+
+       const tcu::Vec4 fThreshold (0.005f);
+       const tcu::UVec4 uThreshold (0u); // Due to unsigned normalized fixed-point integers conversion to floats and viceversa.
+       tcu::UVec2 renderSize = tcu::UVec2({ (unsigned)m_imageSize.x(), (unsigned)m_imageSize.y() });
+
+       de::MovePtr<tcu::TextureLevel> referenceTextureLevel = de::MovePtr<tcu::TextureLevel>(new tcu::TextureLevel(tcuFormat,
+                                                                                                                                                                                         m_imageSize.x(),
+                                                                                                                                                                                         m_imageSize.y(),
+                                                                                                                                                                                         m_imageSize.z()));
+
+       for (int z = 0; z < m_imageSize.z(); z++)
+               for (int y = 0; y < m_imageSize.y(); y++)
+                       for (int x = 0; x < m_imageSize.x(); x++)
+                       {
+                               if (isDepth)
+                               {
+                                       float depth = 0.0f;
+                                       if (m_interleaveReadWriteComponents)
+                                       {
+                                               int stencil = 1 + m_texture->getLevel(0, 0).getPixStencil(x, y, z);
+                                               depth = static_cast<float>(stencil) / 255.0f;
+                                       }
+                                       else
+                                       {
+                                               if (m_useDifferentAreasSampleWrite && x < m_imageSize.x() / 2)
+                                                       depth = m_texture->getLevel(0, 0).getPixDepth(x + (m_imageSize.x() / 2), y, z) + 0.1f;
+                                               else
+                                                       depth = m_texture->getLevel(0, 0).getPixDepth(x, y, z);
+
+                                               if (!m_useDifferentAreasSampleWrite)
+                                                       depth += 0.1f;
+                                       }
+
+                                       depth = deFloatClamp(depth, 0.0f, 1.0f);
+                                       referenceTextureLevel->getAccess().setPixDepth(depth, x, y, z);
+                               }
+                               if (isStencil)
+                               {
+                                       int stencil = 0;
+                                       if (m_interleaveReadWriteComponents)
+                                       {
+                                               float depth = m_texture->getLevel(0, 0).getPixDepth(x, y, z) + 0.1f;
+                                               stencil = static_cast<int>(depth * 255.0f);
+                                       }
+                                       else
+                                       {
+                                               if (m_useDifferentAreasSampleWrite && x < m_imageSize.x() / 2)
+                                                       stencil = 1 + m_texture->getLevel(0, 0).getPixStencil(x + (m_imageSize.x() / 2), y, z);
+                                               else
+                                                       stencil = m_texture->getLevel(0, 0).getPixStencil(x, y, z);
+
+                                               if (!m_useDifferentAreasSampleWrite)
+                                                       stencil += 1;
+
+                                               stencil = deClamp32(stencil, 0, 255);
+                                       }
+
+                                       referenceTextureLevel->getAccess().setPixStencil(stencil, x, y, z);
+                               }
+                       }
+
+       for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+       {
+               if (isDepth)
+               {
+                       // Read back result image
+                       de::MovePtr<tcu::TextureLevel>                  resultTexture                   (readDepthAttachment(m_context.getDeviceInterface(),
+                                                                                                                                                               m_context.getDevice(),
+                                                                                                                                                               m_context.getUniversalQueue(),
+                                                                                                                                                               m_context.getUniversalQueueFamilyIndex(),
+                                                                                                                                                               m_context.getDefaultAllocator(),
+                                                                                                                                                               **m_dsImages[imgNdx],
+                                                                                                                                                               m_imageFormat,
+                                                                                                                                                               renderSize,
+                                                                                                                                                               VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT));
+
+                       const tcu::ConstPixelBufferAccess               result  = resultTexture->getAccess();
+                       const tcu::Sampler::DepthStencilMode    mode                            = tcu::Sampler::MODE_DEPTH;
+                       const tcu::ConstPixelBufferAccess               depthResult                     = tcu::getEffectiveDepthStencilAccess(result, mode);
+                       const tcu::ConstPixelBufferAccess               expectedResult          = tcu::getEffectiveDepthStencilAccess(referenceTextureLevel->getAccess(), mode);
+                       bool                                                                    isIntegerFormat         = isUintFormat(mapTextureFormat(depthResult.getFormat())) || isIntFormat(mapTextureFormat(depthResult.getFormat()));
+
+                       if (!isIntegerFormat)
+                       {
+                               if (!tcu::floatThresholdCompare(m_context.getTestContext().getLog(), "Compare", "Result comparison", expectedResult, depthResult, fThreshold, tcu::COMPARE_LOG_RESULT))
+                                       return tcu::TestStatus::fail("Failed depth");
+                       }
+                       else
+                       {
+                               if (!tcu::intThresholdCompare(m_context.getTestContext().getLog(), "Compare", "Result comparison", expectedResult, depthResult, uThreshold, tcu::COMPARE_LOG_RESULT))
+                                       return tcu::TestStatus::fail("Failed depth");
+                       }
+               }
+
+               if (isStencil)
+               {
+                       // Read back result image
+                       de::MovePtr<tcu::TextureLevel>                  resultTexture                   (readStencilAttachment(m_context.getDeviceInterface(),
+                                                                                                                                                               m_context.getDevice(),
+                                                                                                                                                               m_context.getUniversalQueue(),
+                                                                                                                                                               m_context.getUniversalQueueFamilyIndex(),
+                                                                                                                                                               m_context.getDefaultAllocator(),
+                                                                                                                                                               **m_dsImages[imgNdx],
+                                                                                                                                                               m_imageFormat,
+                                                                                                                                                               renderSize,
+                                                                                                                                                               VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT));
+
+                       const tcu::ConstPixelBufferAccess               result  = resultTexture->getAccess();
+                       const tcu::Sampler::DepthStencilMode    mode                            = tcu::Sampler::MODE_STENCIL;
+                       const tcu::ConstPixelBufferAccess               stencilResult           = tcu::getEffectiveDepthStencilAccess(result, mode);
+                       const tcu::ConstPixelBufferAccess               expectedResult          = tcu::getEffectiveDepthStencilAccess(referenceTextureLevel->getAccess(), mode);
+                       bool                                                                    isIntegerFormat         = isUintFormat(mapTextureFormat(stencilResult.getFormat())) || isIntFormat(mapTextureFormat(stencilResult.getFormat()));
+
+                       if (!isIntegerFormat)
+                       {
+                               if (!tcu::floatThresholdCompare(m_context.getTestContext().getLog(), "Compare", "Result comparison", expectedResult, stencilResult, fThreshold, tcu::COMPARE_LOG_RESULT))
+                                       return tcu::TestStatus::fail("Failed stencil");
+                       }
+                       else
+                       {
+                               if (!tcu::intThresholdCompare(m_context.getTestContext().getLog(), "Compare", "Result comparison", expectedResult, stencilResult, uThreshold, tcu::COMPARE_LOG_RESULT))
+                                       return tcu::TestStatus::fail("Failed stencil");
+                       }
+               }
+       }
+
+       return tcu::TestStatus::pass("Pass");
+}
+
+tcu::TestStatus AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance::iterate (void)
+{
+       const DeviceInterface&          vk                      = m_context.getDeviceInterface();
+       const VkDevice                          vkDevice        = m_context.getDevice();
+       const VkQueue                           queue           = m_context.getUniversalQueue();
+
+       setup();
+       submitCommandsAndWait(vk, vkDevice, queue, m_cmdBuffer.get());
+
+       return verifyImage();
+}
+
+tcu::TestStatus AttachmentFeedbackLoopLayoutImageSamplingInstance::verifyImage(void)
+{
+       if (!m_useImageAsColorOrDSAttachment)
+               return ImageSamplingInstance::verifyImage();
+
+       const tcu::Vec4 fThreshold (0.01f);
+       const tcu::UVec4 uThreshold (1u);
+       tcu::UVec2 renderSize = tcu::UVec2({ (unsigned)m_imageSize.x(), (unsigned)m_imageSize.y() });
+
+       const tcu::TextureFormat        tcuFormat               = getSizeCompatibleTcuTextureFormat(m_imageFormat);
+       de::MovePtr<tcu::TextureLevel> referenceTextureLevel = de::MovePtr<tcu::TextureLevel>(new tcu::TextureLevel(tcuFormat,
+                                                                                                                                                                                                                               m_imageSize.x(),
+                                                                                                                                                                                                                               m_imageSize.y(),
+                                                                                                                                                                                                                               m_imageSize.z()));
+
+       for (int z = 0; z < m_imageSize.z(); z++)
+               for (int y = 0; y < m_imageSize.y(); y++)
+                       for (int x = 0; x < m_imageSize.x(); x++)
+                       {
+                               tcu::Vec4 color = tcu::Vec4(1.0f);
+
+                               if (m_useDifferentAreasSampleWrite && (x < m_imageSize.x() / 2))
+                                       color = m_texture->getLevel(0, 0).getPixel(x + (m_imageSize.x() / 2), y, z) + tcu::Vec4(0.1f);
+                               else
+                                       color = m_texture->getLevel(0, 0).getPixel(x, y, z);
+
+                               if (!m_useDifferentAreasSampleWrite)
+                                       color += tcu::Vec4(0.1f);
+
+                               if (m_interleaveReadWriteComponents)
+                               {
+                                       tcu::Vec4 sampledColor = m_texture->getLevel(0, 0).getPixel(x, y, z);
+                                       color.x() = color.y();
+                                       color.y() = sampledColor.y();
+                                       color.z() = color.w();
+                                       color.w() = sampledColor.w();
+                               }
+
+                               color.x() = deFloatClamp(color.x(), 0.0f, 1.0f);
+                               color.y() = deFloatClamp(color.y(), 0.0f, 1.0f);
+                               color.z() = deFloatClamp(color.z(), 0.0f, 1.0f);
+                               color.w() = deFloatClamp(color.w(), 0.0f, 1.0f);
+
+                               referenceTextureLevel->getAccess().setPixel(color, x, y, z);
+                       }
+
+       for (int imgNdx = 0; imgNdx < m_imageCount; ++imgNdx)
+       {
+               // Read back result image
+               de::MovePtr<tcu::TextureLevel>          resultTexture                   (readColorAttachment(m_context.getDeviceInterface(),
+                                                                                                                                                                                m_context.getDevice(),
+                                                                                                                                                                                m_context.getUniversalQueue(),
+                                                                                                                                                                                m_context.getUniversalQueueFamilyIndex(),
+                                                                                                                                                                                m_context.getDefaultAllocator(),
+                                                                                                                                                                                **m_colorImages[imgNdx],
+                                                                                                                                                                                m_colorFormat,
+                                                                                                                                                                                renderSize));
+               const tcu::ConstPixelBufferAccess       result  = resultTexture->getAccess();
+               const bool                                                      isIntegerFormat = isUintFormat(m_imageFormat) || isIntFormat(m_imageFormat);
+
+               if (!isIntegerFormat)
+               {
+                       if (!tcu::floatThresholdCompare(m_context.getTestContext().getLog(), "Compare", "Result comparison", referenceTextureLevel->getAccess(), result, fThreshold, tcu::COMPARE_LOG_RESULT))
+                               return tcu::TestStatus::fail("Failed color");
+               }
+               else
+               {
+                       if (!tcu::intThresholdCompare(m_context.getTestContext().getLog(), "Compare", "Result comparison", referenceTextureLevel->getAccess(), result, uThreshold, tcu::COMPARE_LOG_RESULT))
+                               return tcu::TestStatus::fail("Failed color");
+               }
+       }
+
+       return tcu::TestStatus::pass("Pass");
+}
+
+AttachmentFeedbackLoopLayoutImageSamplingInstance::~AttachmentFeedbackLoopLayoutImageSamplingInstance (void)
+{
+}
+
+tcu::TestStatus AttachmentFeedbackLoopLayoutImageSamplingInstance::iterate (void)
+{
+       const DeviceInterface&          vk                      = m_context.getDeviceInterface();
+       const VkDevice                          vkDevice        = m_context.getDevice();
+       const VkQueue                           queue           = m_context.getUniversalQueue();
+
+       setup();
+       submitCommandsAndWait(vk, vkDevice, queue, m_cmdBuffer.get());
+
+       return verifyImage();
+}
+
+class AttachmentFeedbackLoopLayoutSamplerTest : public vkt::TestCase {
+public:
+                                                                               AttachmentFeedbackLoopLayoutSamplerTest                 (tcu::TestContext&                              testContext,
+                                                                                                                                                                                vk::PipelineConstructionType   pipelineConstructionType,
+                                                                                                                                                                                const char*                                    name,
+                                                                                                                                                                                const char*                                    description,
+                                                                                                                                                                                SamplerViewType                                imageViewType,
+                                                                                                                                                                                VkFormat                                               imageFormat,
+                                                                                                                                                                                int                                                    imageSize,
+                                                                                                                                                                                VkDescriptorType                               imageDescriptorType,
+                                                                                                                                                                                float                                                  samplerLod,
+                                                                                                                                                                                TestMode                                               testMode,
+                                                                                                                                                                                ImageAspectTestMode                    imageAspectTestMode,
+                                                                                                                                                                                bool                                                   interleaveReadWriteComponents);
+       virtual                                                         ~AttachmentFeedbackLoopLayoutSamplerTest                (void) {}
+
+       virtual ImageSamplingInstanceParams     getImageSamplingInstanceParams  (SamplerViewType        imageViewType,
+                                                                                                                                                VkFormat                       imageFormat,
+                                                                                                                                                int                            imageSize,
+                                                                                                                                                VkDescriptorType       imageDescriptorType,
+                                                                                                                                                float                          samplerLod) const;
+
+       virtual void                                            initPrograms                                    (SourceCollections& sourceCollections) const;
+       virtual void                                            checkSupport                                    (Context& context) const;
+       virtual TestInstance*                           createInstance                                  (Context& context) const;
+       virtual tcu::UVec2                                      getRenderSize                                   (SamplerViewType viewType) const;
+       virtual std::vector<Vertex4Tex4>        createVertices                                  (void) const;
+       virtual VkSamplerCreateInfo                     getSamplerCreateInfo                    (void) const;
+       virtual VkComponentMapping                      getComponentMapping                             (void) const;
+
+       static std::string                                      getGlslSamplerType                              (const tcu::TextureFormat& format, SamplerViewType type);
+       static tcu::IVec3                                       getImageSize                                    (SamplerViewType viewType, int size);
+       static int                                                      getArraySize                                    (SamplerViewType viewType);
+
+       static std::string                                      getGlslSampler (const tcu::TextureFormat& format, VkImageViewType type, VkDescriptorType samplingType, int imageCount);
+       static std::string                                      getGlslTextureType (const tcu::TextureFormat& format, VkImageViewType type);
+       static std::string                                      getGlslSamplerDecl (int imageCount);
+       static std::string                                      getGlslTextureDecl (int imageCount);
+
+protected:
+       vk::PipelineConstructionType            m_pipelineConstructionType;
+       SamplerViewType                                         m_imageViewType;
+       VkFormat                                                        m_imageFormat;
+       int                                                                     m_imageSize;
+       VkDescriptorType                                        m_imageDescriptorType;
+       float                                                           m_samplerLod;
+       TestMode                                                        m_testMode;
+       ImageAspectTestMode                                     m_imageAspectTestMode;
+       bool                                                            m_interleaveReadWriteComponents;
+};
+
+// AttachmentFeedbackLoopLayoutSamplerTest
+
+AttachmentFeedbackLoopLayoutSamplerTest::AttachmentFeedbackLoopLayoutSamplerTest       (tcu::TestContext&                              testContext,
+                                                                                                                                                                        vk::PipelineConstructionType   pipelineConstructionType,
+                                                                                                                                                                        const char*                                    name,
+                                                                                                                                                                        const char*                                    description,
+                                                                                                                                                                        SamplerViewType                                imageViewType,
+                                                                                                                                                                        VkFormat                                               imageFormat,
+                                                                                                                                                                        int                                                    imageSize,
+                                                                                                                                                                        VkDescriptorType                               imageDescriptorType,
+                                                                                                                                                                        float                                                  samplerLod,
+                                                                                                                                                                        TestMode                                               testMode,
+                                                                                                                                                                        ImageAspectTestMode                    imageAspectTestMode,
+                                                                                                                                                                        bool                                                   interleaveReadWriteComponents = false)
+       : vkt::TestCase                                 (testContext, name, description)
+       , m_pipelineConstructionType    (pipelineConstructionType)
+       , m_imageViewType                               (imageViewType)
+       , m_imageFormat                                 (imageFormat)
+       , m_imageSize                                   (imageSize)
+       , m_imageDescriptorType                 (imageDescriptorType)
+       , m_samplerLod                                  (samplerLod)
+       , m_testMode                                    (testMode)
+       , m_imageAspectTestMode                 (imageAspectTestMode)
+       , m_interleaveReadWriteComponents       (interleaveReadWriteComponents)
+{
+}
+
+ImageSamplingInstanceParams AttachmentFeedbackLoopLayoutSamplerTest::getImageSamplingInstanceParams (SamplerViewType   imageViewType,
+                                                                                                                                                                                                        VkFormat                       imageFormat,
+                                                                                                                                                                                                        int                            imageSize,
+                                                                                                                                                                                                        VkDescriptorType       imageDescriptorType,
+                                                                                                                                                                                                        float                          samplerLod) const
+{
+       const tcu::UVec2                                renderSize                      = getRenderSize(imageViewType);
+       const std::vector<Vertex4Tex4>  vertices                        = createVertices();
+       const VkSamplerCreateInfo               samplerParams           = getSamplerCreateInfo();
+       const VkComponentMapping                componentMapping        = getComponentMapping();
+
+       VkImageAspectFlags                              imageAspect                     = 0u;
+       VkPipelineCreateFlags                   pipelineCreateFlags = 0u;
+       if (!isCompressedFormat(imageFormat))
+       {
+               if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_COLOR)
+               {
+                       DE_ASSERT(!tcu::hasDepthComponent(mapVkFormat(imageFormat).order) &&
+                                         !tcu::hasStencilComponent(mapVkFormat(imageFormat).order));
+                       imageAspect = VK_IMAGE_ASPECT_COLOR_BIT;
+                       pipelineCreateFlags = VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT;
+               }
+               if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_DEPTH)
+               {
+                       DE_ASSERT(tcu::hasDepthComponent(mapVkFormat(imageFormat).order));
+                       imageAspect |= VK_IMAGE_ASPECT_DEPTH_BIT;
+                       pipelineCreateFlags = VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT;
+               }
+           if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_STENCIL)
+               {
+                       DE_ASSERT(tcu::hasStencilComponent(mapVkFormat(imageFormat).order));
+                       imageAspect |= VK_IMAGE_ASPECT_STENCIL_BIT;
+                       pipelineCreateFlags = VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT;
+               }
+       }
+       else
+       {
+               imageAspect = VK_IMAGE_ASPECT_COLOR_BIT;
+       }
+
+       const VkImageSubresourceRange   subresourceRange        =
+       {
+               imageAspect,                                                                            // VkImageAspectFlags   aspectMask;
+               0u,                                                                                                     // deUint32                             baseMipLevel;
+               1u,                                                                                                     // deUint32                             mipLevels;
+               0u,                                                                                                     // deUint32                             baseArrayLayer;
+               (deUint32)getArraySize(imageViewType)                           // deUint32                             arraySize;
+       };
+
+       return ImageSamplingInstanceParams(m_pipelineConstructionType, renderSize, imageViewType, imageFormat,
+                                                                          getImageSize(imageViewType, imageSize),
+                                                                          getArraySize(imageViewType),
+                                                                          componentMapping, subresourceRange,
+                                                                          samplerParams, samplerLod, vertices, false,
+                                                                          imageDescriptorType, 1u, ALLOCATION_KIND_SUBALLOCATED,
+                                                                          vk::VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT,
+                                                                          pipelineCreateFlags);
+}
+
+void AttachmentFeedbackLoopLayoutSamplerTest::checkSupport (Context& context) const
+{
+       context.requireDeviceFunctionality("VK_EXT_attachment_feedback_loop_layout");
+
+       checkPipelineLibraryRequirements(context.getInstanceInterface(), context.getPhysicalDevice(), m_pipelineConstructionType);
+
+       vk::VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT attachmentFeedbackLoopLayoutFeatures =
+       {
+               vk::VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT,     // VkStructureType      sType;
+               DE_NULL,                                                                                                                                                                // void*                        pNext;
+               DE_FALSE,                                                                                                                                                               // VkBool32             attachmentFeedbackLoopLayout;
+       };
+
+       vk::VkPhysicalDeviceFeatures2 features2;
+       deMemset(&features2, 0, sizeof(features2));
+       features2.sType = vk::VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
+       features2.pNext = &attachmentFeedbackLoopLayoutFeatures;
+
+       context.getInstanceInterface().getPhysicalDeviceFeatures2(context.getPhysicalDevice(), &features2);
+
+       if (attachmentFeedbackLoopLayoutFeatures.attachmentFeedbackLoopLayout == DE_FALSE)
+       {
+               throw tcu::NotSupportedError("attachmentFeedbackLoopLayout not supported");
+       }
+
+       checkSupportImageSamplingInstance(context, getImageSamplingInstanceParams(m_imageViewType, m_imageFormat, m_imageSize, m_imageDescriptorType, m_samplerLod));
+
+       ImageSamplingInstanceParams     params = getImageSamplingInstanceParams(m_imageViewType, m_imageFormat, m_imageSize, m_imageDescriptorType, m_samplerLod);
+
+       bool useImageAsColorOrDSAttachment      = m_testMode >= TEST_MODE_READ_WRITE_SAME_PIXEL;
+       if (useImageAsColorOrDSAttachment)
+       {
+               VkFormatProperties      formatProps;
+               const InstanceInterface& instanceInterface = context.getInstanceInterface();
+               VkFormatFeatureFlags attachmentFormatFeature = isDepthStencilFormat(params.imageFormat) ?
+                       VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT : VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT;
+
+               instanceInterface.getPhysicalDeviceFormatProperties(context.getPhysicalDevice(), params.imageFormat, &formatProps);
+               bool error =
+                       (formatProps.optimalTilingFeatures & VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT ) == 0u ||
+                       (formatProps.optimalTilingFeatures & VK_FORMAT_FEATURE_TRANSFER_SRC_BIT ) == 0u ||
+                       (formatProps.optimalTilingFeatures & VK_FORMAT_FEATURE_TRANSFER_DST_BIT ) == 0u ||
+                       (formatProps.optimalTilingFeatures & attachmentFormatFeature ) == 0u;
+
+               if (error)
+               {
+                       throw tcu::NotSupportedError("format doesn't support some required features");
+               }
+
+               if ((!m_interleaveReadWriteComponents && m_imageAspectTestMode == IMAGE_ASPECT_TEST_STENCIL) ||
+                       (m_interleaveReadWriteComponents && m_imageAspectTestMode == IMAGE_ASPECT_TEST_DEPTH))
+                       context.requireDeviceFunctionality("VK_EXT_shader_stencil_export");
+       }
+}
+
+std::string AttachmentFeedbackLoopLayoutSamplerTest::getGlslTextureType (const tcu::TextureFormat& format, VkImageViewType type)
+{
+       std::ostringstream textureType;
+
+       if (tcu::getTextureChannelClass(format.type) == tcu::TEXTURECHANNELCLASS_UNSIGNED_INTEGER)
+               textureType << "u";
+       else if (tcu::getTextureChannelClass(format.type) == tcu::TEXTURECHANNELCLASS_SIGNED_INTEGER)
+               textureType << "i";
+
+       switch (type)
+       {
+               case VK_IMAGE_VIEW_TYPE_1D:
+                       textureType << "texture1D";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_1D_ARRAY:
+                       textureType << "texture1DArray";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_2D:
+                       textureType << "texture2D";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_2D_ARRAY:
+                       textureType << "texture2DArray";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_3D:
+                       textureType << "texture3D";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_CUBE:
+                       textureType << "textureCube";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:
+                       textureType << "textureCubeArray";
+                       break;
+
+               default:
+                       DE_FATAL("Unknown image view type");
+       }
+
+       return textureType.str();
+}
+
+std::string AttachmentFeedbackLoopLayoutSamplerTest::getGlslSamplerDecl (int imageCount)
+{
+       std::ostringstream samplerArray;
+       samplerArray << "texSamplers[" << imageCount << "]";
+
+       return imageCount > 1 ? samplerArray.str() : "texSampler";
+}
+
+std::string AttachmentFeedbackLoopLayoutSamplerTest::getGlslTextureDecl (int imageCount)
+{
+       std::ostringstream textureArray;
+       textureArray << "texImages[" << imageCount << "]";
+
+       return imageCount > 1 ? textureArray.str() : "texImage";
+}
+
+std::string AttachmentFeedbackLoopLayoutSamplerTest::getGlslSampler (const tcu::TextureFormat& format, VkImageViewType type, VkDescriptorType samplingType, int imageCount)
+{
+       std::string texSampler  = imageCount > 1 ? "texSamplers[i]" : "texSampler";
+       std::string texImage    = imageCount > 1 ? "texImages[i]" : "texImage";
+
+       switch (samplingType)
+       {
+               case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
+                       return getGlslSamplerType(format, type) + "(" + texImage + ", texSampler)";
+               case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
+               default:
+                       return texSampler;
+       }
+}
+
+void AttachmentFeedbackLoopLayoutSamplerTest::initPrograms (SourceCollections& sourceCollections) const
+{
+       std::ostringstream                              vertexSrc;
+       std::ostringstream                              fragmentSrc;
+       const char*                                             texCoordSwizzle = DE_NULL;
+       const VkFormat                                  vkFormat = m_imageAspectTestMode == IMAGE_ASPECT_TEST_STENCIL ? VK_FORMAT_S8_UINT : m_imageFormat;
+       const tcu::TextureFormat                format                  = (isCompressedFormat(m_imageFormat)) ? tcu::getUncompressedFormat(mapVkCompressedFormat(vkFormat))
+                                                                                                                                                                                 : mapVkFormat(vkFormat);
+       tcu::Vec4                                               lookupScale;
+       tcu::Vec4                                               lookupBias;
+
+       getLookupScaleBias(m_imageFormat, lookupScale, lookupBias);
+
+       switch (m_imageViewType)
+       {
+               case VK_IMAGE_VIEW_TYPE_1D:
+                       texCoordSwizzle = "x";
+                       break;
+               case VK_IMAGE_VIEW_TYPE_1D_ARRAY:
+               case VK_IMAGE_VIEW_TYPE_2D:
+                       texCoordSwizzle = "xy";
+                       break;
+               case VK_IMAGE_VIEW_TYPE_2D_ARRAY:
+               case VK_IMAGE_VIEW_TYPE_3D:
+               case VK_IMAGE_VIEW_TYPE_CUBE:
+                       texCoordSwizzle = "xyz";
+                       break;
+               case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:
+                       texCoordSwizzle = "xyzw";
+                       break;
+               default:
+                       DE_ASSERT(false);
+                       break;
+       }
+
+       vertexSrc << "#version 440\n"
+                         << "layout(location = 0) in vec4 position;\n"
+                         << "layout(location = 1) in vec4 texCoords;\n"
+                         << "layout(location = 0) out highp vec4 vtxTexCoords;\n"
+                         << "out gl_PerVertex {\n"
+                         << "  vec4 gl_Position;\n"
+                         << "};\n"
+                         << "void main (void)\n"
+                         << "{\n"
+                         << "  gl_Position = position;\n"
+                         << "  vtxTexCoords = texCoords;\n"
+                         << "}\n";
+
+       fragmentSrc << "#version 440\n";
+
+       if ((m_imageAspectTestMode == IMAGE_ASPECT_TEST_STENCIL && m_testMode >= TEST_MODE_READ_WRITE_SAME_PIXEL) ||
+               (m_imageAspectTestMode == IMAGE_ASPECT_TEST_DEPTH && m_interleaveReadWriteComponents))
+       {
+               fragmentSrc << "#extension GL_ARB_shader_stencil_export: require\n";
+       }
+
+       switch (m_imageDescriptorType)
+       {
+               case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
+                       fragmentSrc
+                               << "layout(set = 0, binding = 0) uniform highp sampler texSampler;\n"
+                               << "layout(set = 0, binding = 1) uniform highp " << getGlslTextureType(format, m_imageViewType) << " " << getGlslTextureDecl(1u) << ";\n";
+                       break;
+               case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
+               default:
+                       fragmentSrc
+                               << "layout(set = 0, binding = 0) uniform highp " << getGlslSamplerType(format, m_imageViewType) << " " << getGlslSamplerDecl(1u) << ";\n";
+       }
+
+       if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_COLOR || m_testMode == TEST_MODE_READ_ONLY)
+               fragmentSrc     << "layout(location = 0) out highp vec4 fragColor;\n";
+
+       fragmentSrc     << "layout(location = 0) in highp vec4 vtxTexCoords;\n"
+                               << "void main (void)\n"
+                               << "{\n";
+
+       if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_STENCIL && m_testMode != TEST_MODE_READ_ONLY)
+               fragmentSrc     << "    uvec4 read_data = ";
+       else
+               fragmentSrc     << "    vec4 read_data = ";
+
+       if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_DEPTH && m_testMode >= TEST_MODE_READ_WRITE_SAME_PIXEL)
+       {
+               fragmentSrc << "vec4(1.0f, 0.0f, 0.0f, 1.0f);\n";
+
+               fragmentSrc << "        read_data.x = ";
+               if (m_samplerLod > 0.0f)
+               {
+                               DE_ASSERT(m_imageViewType.isNormalized());
+                               fragmentSrc << "textureLod(" << getGlslSampler(format, m_imageViewType, m_imageDescriptorType, 1u) << ", vtxTexCoords." << texCoordSwizzle << ", " << std::fixed <<  m_samplerLod << ").x";
+               }
+               else
+               {
+                               fragmentSrc << "texture(" << getGlslSampler(format, m_imageViewType, m_imageDescriptorType, 1u) << ", vtxTexCoords." << texCoordSwizzle << ").x" << std::fixed;
+               }
+
+               fragmentSrc << " + 0.1f;\n";
+       }
+       else if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_STENCIL && m_testMode == TEST_MODE_READ_ONLY)
+       {
+               if (m_samplerLod > 0.0f)
+               {
+                               DE_ASSERT(m_imageViewType.isNormalized());
+                               fragmentSrc << "vec4(textureLod(" << getGlslSampler(format, m_imageViewType, m_imageDescriptorType, 1u) << ", vtxTexCoords." << texCoordSwizzle << ", " << std::fixed <<  m_samplerLod << ").x / 255.0f, 0.0f, 0.0f, 1.0f)";
+               }
+               else
+               {
+                               fragmentSrc << "vec4(texture(" << getGlslSampler(format, m_imageViewType, m_imageDescriptorType, 1u) << ", vtxTexCoords." << texCoordSwizzle << ").x / 255.0f, 0.0f, 0.0f, 1.0f)" << std::fixed;
+               }
+
+               fragmentSrc << ";\n";
+       }
+       else
+       {
+               if (m_samplerLod > 0.0f)
+               {
+                               DE_ASSERT(m_imageViewType.isNormalized());
+                               fragmentSrc << "textureLod(" << getGlslSampler(format, m_imageViewType, m_imageDescriptorType, 1u) << ", vtxTexCoords." << texCoordSwizzle << ", " << std::fixed <<  m_samplerLod << ")";
+               }
+               else
+               {
+                               fragmentSrc << "texture(" << getGlslSampler(format, m_imageViewType, m_imageDescriptorType, 1u) << ", vtxTexCoords." << texCoordSwizzle << ")" << std::fixed;
+               }
+
+               if (m_testMode >= TEST_MODE_READ_WRITE_SAME_PIXEL)
+               {
+                       if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_STENCIL)
+                               fragmentSrc << " + uvec4(1u, 0u, 0u, 0)";
+                       else
+                               fragmentSrc << " + vec4(0.1f)";
+               }
+
+               fragmentSrc << ";\n";
+       }
+
+       if (m_interleaveReadWriteComponents)
+       {
+               if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_COLOR)
+               {
+                       fragmentSrc << "        fragColor = vec4(1.0f);\n"
+                                               << "    fragColor.x = read_data.y;\n"
+                                               << "    fragColor.z = read_data.w;\n";
+               }
+               else if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_DEPTH)
+               {
+                       fragmentSrc << "        gl_FragStencilRefARB = int(clamp(read_data.x * 255.0f, 0.0f, 255.0f));\n";
+               }
+               else
+               {
+                       fragmentSrc << "        gl_FragDepth = clamp(float(read_data.x) / 255.0f, 0.0f, 1.0f);\n";
+               }
+       }
+       else
+       {
+               if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_DEPTH && m_testMode >= TEST_MODE_READ_WRITE_SAME_PIXEL)
+               {
+                       fragmentSrc << "        gl_FragDepth = clamp(read_data.x, 0.0f, 1.0f);\n";
+               }
+               else if (m_imageAspectTestMode == IMAGE_ASPECT_TEST_STENCIL && m_testMode >= TEST_MODE_READ_WRITE_SAME_PIXEL)
+               {
+                       fragmentSrc << "        gl_FragStencilRefARB = int(clamp(read_data.x, 0u, 255u));\n";
+               }
+               else
+               {
+                       fragmentSrc << "        fragColor = read_data;\n";
+               }
+       }
+
+       fragmentSrc     << "}\n";
+
+       sourceCollections.glslSources.add("tex_vert") << glu::VertexSource(vertexSrc.str());
+       sourceCollections.glslSources.add("tex_frag") << glu::FragmentSource(fragmentSrc.str());
+}
+
+TestInstance* AttachmentFeedbackLoopLayoutSamplerTest::createInstance (Context& context) const
+{
+       const bool useImageAsColorOrDSAttachment        = m_testMode >= TEST_MODE_READ_WRITE_SAME_PIXEL;
+       const bool useDifferentAreasSampleWrite         = m_testMode == TEST_MODE_READ_WRITE_DIFFERENT_AREAS;
+
+       if (m_imageAspectTestMode != IMAGE_ASPECT_TEST_COLOR && useImageAsColorOrDSAttachment)
+               return new AttachmentFeedbackLoopLayoutDepthStencilImageSamplingInstance(context, getImageSamplingInstanceParams(m_imageViewType, m_imageFormat, m_imageSize, m_imageDescriptorType, m_samplerLod), useImageAsColorOrDSAttachment, useDifferentAreasSampleWrite, m_interleaveReadWriteComponents);
+       return new AttachmentFeedbackLoopLayoutImageSamplingInstance(context, getImageSamplingInstanceParams(m_imageViewType, m_imageFormat, m_imageSize, m_imageDescriptorType, m_samplerLod), useImageAsColorOrDSAttachment, useDifferentAreasSampleWrite, m_interleaveReadWriteComponents);
+}
+
+tcu::UVec2 AttachmentFeedbackLoopLayoutSamplerTest::getRenderSize (SamplerViewType viewType) const
+{
+       if (viewType == VK_IMAGE_VIEW_TYPE_1D || viewType == VK_IMAGE_VIEW_TYPE_2D)
+       {
+               return tcu::UVec2(16u, 16u);
+       }
+       else
+       {
+               return tcu::UVec2(16u * 3u, 16u * 2u);
+       }
+}
+
+std::vector<Vertex4Tex4> createFullscreenQuadArray (vk::VkImageViewType viewType, unsigned arraySize)
+{
+       using tcu::Vec4;
+       std::vector<Vertex4Tex4>        verticesArray;
+
+       const Vertex4Tex4 lowerLeftVertex =
+       {
+               Vec4(-1.0f, -1.0f, 0.0f, 1.0f),
+               Vec4(0.0f, 0.0f, 0.0f, 0.0f)
+       };
+       const Vertex4Tex4 upperLeftVertex =
+       {
+               Vec4(-1.0f, 1.0f, 0.0f, 1.0f),
+               Vec4(0.0f, 1.0f, 0.0f, 0.0f)
+       };
+       const Vertex4Tex4 lowerRightVertex =
+       {
+               Vec4(1.0f, -1.0f, 0.0f, 1.0f),
+               Vec4(1.0f, 0.0f, 0.0f, 0.0f)
+       };
+       const Vertex4Tex4 upperRightVertex =
+       {
+               Vec4(1.0f, 1.0f, 0.0f, 1.0f),
+               Vec4(1.0f, 1.0f, 0.0f, 0.0f)
+       };
+
+       for (unsigned arrayNdx = 0; arrayNdx < arraySize; arrayNdx++)
+       {
+               Vertex4Tex4 vertices[6] =
+               {
+                       lowerLeftVertex,
+                       upperLeftVertex,
+                       lowerRightVertex,
+
+                       upperLeftVertex,
+                       lowerRightVertex,
+                       upperRightVertex
+               };
+
+               for (int i = 0; i < 6; i++)
+               {
+                       if (viewType == vk::VK_IMAGE_VIEW_TYPE_1D_ARRAY)
+                       {
+                               vertices[i].position.y() = (float)arrayNdx;
+                               vertices[i].texCoord.y() = (float)arrayNdx;
+                       }
+                       else
+                       {
+                               vertices[i].position.z() = (float)arrayNdx;
+                               vertices[i].texCoord.z() = (float)arrayNdx;
+                       }
+                       verticesArray.push_back(vertices[i]);
+               }
+       }
+
+       return verticesArray;
+}
+
+std::vector<Vertex4Tex4> createTestQuadAttachmentFeedbackLoopLayout (vk::VkImageViewType viewType)
+{
+       std::vector<Vertex4Tex4> vertices;
+
+       switch (viewType)
+       {
+               case vk::VK_IMAGE_VIEW_TYPE_1D:
+               case vk::VK_IMAGE_VIEW_TYPE_2D:
+                       vertices = createFullscreenQuad();
+                       break;
+
+               case vk::VK_IMAGE_VIEW_TYPE_1D_ARRAY:
+                       vertices = createFullscreenQuadArray(viewType, 6u);
+                       break;
+
+               case vk::VK_IMAGE_VIEW_TYPE_2D_ARRAY:
+               case vk::VK_IMAGE_VIEW_TYPE_3D:
+               case vk::VK_IMAGE_VIEW_TYPE_CUBE:
+               case vk::VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:
+                       vertices = createFullscreenQuadArray(viewType, 6u);
+                       break;
+
+               default:
+                       DE_ASSERT(false);
+                       break;
+       }
+
+       return vertices;
+}
+
+std::vector<Vertex4Tex4> AttachmentFeedbackLoopLayoutSamplerTest::createVertices (void) const
+{
+       std::vector<Vertex4Tex4> vertices = m_testMode != TEST_MODE_READ_WRITE_DIFFERENT_AREAS ?
+               createTestQuadMosaic(m_imageViewType) :
+               createTestQuadAttachmentFeedbackLoopLayout(m_imageViewType);
+       for (unsigned int i = 0; i < vertices.size(); ++i) {
+               if (m_testMode == TEST_MODE_READ_WRITE_DIFFERENT_AREAS)
+               {
+                       vertices[i].texCoord.x() = std::max(vertices[i].texCoord.x(), 0.5f);
+                       vertices[i].position.x() = std::min(vertices[i].position.x(), 0.0f);
+               }
+               if (!m_imageViewType.isNormalized()) {
+                       const float imageSize = static_cast<float>(m_imageSize);
+                       for (int j = 0; j < tcu::Vec4::SIZE; ++j)
+                               vertices[i].texCoord[j] *= imageSize;
+               }
+       }
+       return vertices;
+}
+
+VkSamplerCreateInfo AttachmentFeedbackLoopLayoutSamplerTest::getSamplerCreateInfo (void) const
+{
+       const VkSamplerCreateInfo defaultSamplerParams =
+       {
+               VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO,                                                                  // VkStructureType                      sType;
+               DE_NULL,                                                                                                                                // const void*                          pNext;
+               0u,                                                                                                                                             // VkSamplerCreateFlags         flags;
+               VK_FILTER_NEAREST,                                                                                                              // VkFilter                                     magFilter;
+               VK_FILTER_NEAREST,                                                                                                              // VkFilter                                     minFilter;
+               VK_SAMPLER_MIPMAP_MODE_NEAREST,                                                                                 // VkSamplerMipmapMode          mipmapMode;
+               VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,                                                                  // VkSamplerAddressMode         addressModeU;
+               VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,                                                                  // VkSamplerAddressMode         addressModeV;
+               VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,                                                                  // VkSamplerAddressMode         addressModeW;
+               0.0f,                                                                                                                                   // float                                        mipLodBias;
+               VK_FALSE,                                                                                                                               // VkBool32                                     anisotropyEnable;
+               1.0f,                                                                                                                                   // float                                        maxAnisotropy;
+               false,                                                                                                                                  // VkBool32                                     compareEnable;
+               VK_COMPARE_OP_NEVER,                                                                                                    // VkCompareOp                          compareOp;
+               0.0f,                                                                                                                                   // float                                        minLod;
+               (m_imageViewType.isNormalized() ? 0.25f : 0.0f),                                                // float                                        maxLod;
+               getFormatBorderColor(BORDER_COLOR_TRANSPARENT_BLACK, m_imageFormat),    // VkBorderColor                        borderColor;
+               !m_imageViewType.isNormalized(),                                                                                // VkBool32                                     unnormalizedCoordinates;
+       };
+
+       return defaultSamplerParams;
+}
+
+VkComponentMapping AttachmentFeedbackLoopLayoutSamplerTest::getComponentMapping (void) const
+{
+       const VkComponentMapping        componentMapping        = { VK_COMPONENT_SWIZZLE_R, VK_COMPONENT_SWIZZLE_G, VK_COMPONENT_SWIZZLE_B, VK_COMPONENT_SWIZZLE_A };
+       return componentMapping;
+}
+
+std::string AttachmentFeedbackLoopLayoutSamplerTest::getGlslSamplerType (const tcu::TextureFormat& format, SamplerViewType type)
+{
+       std::ostringstream samplerType;
+
+       if (tcu::getTextureChannelClass(format.type) == tcu::TEXTURECHANNELCLASS_UNSIGNED_INTEGER)
+               samplerType << "u";
+       else if (tcu::getTextureChannelClass(format.type) == tcu::TEXTURECHANNELCLASS_SIGNED_INTEGER)
+               samplerType << "i";
+
+       switch (type)
+       {
+               case VK_IMAGE_VIEW_TYPE_1D:
+                       samplerType << "sampler1D";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_1D_ARRAY:
+                       samplerType << "sampler1DArray";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_2D:
+                       samplerType << "sampler2D";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_2D_ARRAY:
+                       samplerType << "sampler2DArray";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_3D:
+                       samplerType << "sampler3D";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_CUBE:
+                       samplerType << "samplerCube";
+                       break;
+
+               case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:
+                       samplerType << "samplerCubeArray";
+                       break;
+
+               default:
+                       DE_FATAL("Unknown image view type");
+                       break;
+       }
+
+       return samplerType.str();
+}
+
+tcu::IVec3 AttachmentFeedbackLoopLayoutSamplerTest::getImageSize (SamplerViewType viewType, int size)
+{
+       switch (viewType)
+       {
+               case VK_IMAGE_VIEW_TYPE_1D:
+               case VK_IMAGE_VIEW_TYPE_1D_ARRAY:
+                       return tcu::IVec3(size, 1, 1);
+
+               case VK_IMAGE_VIEW_TYPE_3D:
+                       return tcu::IVec3(size, size, 4);
+
+               default:
+                       break;
+       }
+
+       return tcu::IVec3(size, size, 1);
+}
+
+int AttachmentFeedbackLoopLayoutSamplerTest::getArraySize (SamplerViewType viewType)
+{
+       switch (viewType)
+       {
+               case VK_IMAGE_VIEW_TYPE_1D_ARRAY:
+               case VK_IMAGE_VIEW_TYPE_2D_ARRAY:
+               case VK_IMAGE_VIEW_TYPE_CUBE:
+                       return 6;
+
+               case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:
+                       return 36;
+
+               default:
+                       break;
+       }
+
+       return 1;
+}
+} // anonymous
+
+tcu::TestCaseGroup* createAttachmentFeedbackLoopLayoutSamplerTests (tcu::TestContext& testCtx, vk::PipelineConstructionType pipelineConstructionType)
+{
+       // TODO: implement layer rendering with a geometry shader to render to arrays, 3D and cube images.
+       const struct
+       {
+               SamplerViewType         type;
+               const char*                     name;
+               bool                            readOnly;
+       }
+       imageViewTypes[] =
+       {
+               { VK_IMAGE_VIEW_TYPE_1D,                        "1d", false },
+               { { VK_IMAGE_VIEW_TYPE_1D, false },     "1d_unnormalized", false },
+               { VK_IMAGE_VIEW_TYPE_1D_ARRAY,          "1d_array", true },
+               { VK_IMAGE_VIEW_TYPE_2D,                        "2d", false },
+               { { VK_IMAGE_VIEW_TYPE_2D, false },     "2d_unnormalized", false },
+               { VK_IMAGE_VIEW_TYPE_2D_ARRAY,          "2d_array", true },
+               { VK_IMAGE_VIEW_TYPE_3D,                        "3d", true },
+               { VK_IMAGE_VIEW_TYPE_CUBE,                      "cube", true },
+               { VK_IMAGE_VIEW_TYPE_CUBE_ARRAY,        "cube_array", true }
+       };
+
+       const VkFormat formats[] =
+       {
+               VK_FORMAT_R8G8B8A8_UNORM,
+               VK_FORMAT_D16_UNORM,
+               VK_FORMAT_D32_SFLOAT,
+               VK_FORMAT_D16_UNORM_S8_UINT,
+               VK_FORMAT_D24_UNORM_S8_UINT,
+               VK_FORMAT_D32_SFLOAT_S8_UINT,
+               VK_FORMAT_S8_UINT
+       };
+
+       de::MovePtr<tcu::TestCaseGroup> samplingTypeTests               (new tcu::TestCaseGroup(testCtx, "sampler", ""));
+
+       const struct
+       {
+               enum TestMode           mode;
+               const char*                     name;
+       }
+       testModes[] =
+       {
+               { TEST_MODE_READ_ONLY,                                                  "_read" },
+               { TEST_MODE_READ_WRITE_SAME_PIXEL,                              "_read_write_same_pixel" },
+               { TEST_MODE_READ_WRITE_DIFFERENT_AREAS,                 "_read_write_different_areas" },
+       };
+
+       const char* imageAspectTestModes[] = { "_color", "_depth", "_stencil" };
+
+       const struct
+       {
+               VkDescriptorType        type;
+               const char*                     name;
+       }
+       imageDescriptorTypes[] =
+       {
+               { VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,    "combined_image_sampler" },
+               { VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE,                             "sampled_image" },
+       };
+
+       const struct
+       {
+               bool                            interleaveReadWriteComponents;
+               const char*                     name;
+       }
+       interleaveReadWriteComponentsModes[] =
+       {
+               { false,                                                        "" },
+               { true,                                                         "_interleave_read_write_components" },
+       };
+
+
+       for (int imageDescriptorTypeNdx = 0; imageDescriptorTypeNdx < DE_LENGTH_OF_ARRAY(imageDescriptorTypes); imageDescriptorTypeNdx++)
+       {
+               VkDescriptorType                                        imageDescriptorType             = imageDescriptorTypes[imageDescriptorTypeNdx].type;
+               de::MovePtr<tcu::TestCaseGroup> imageDescriptorTypeGroup        (new tcu::TestCaseGroup(testCtx, imageDescriptorTypes[imageDescriptorTypeNdx].name, (std::string("Uses a ") + imageDescriptorTypes[imageDescriptorTypeNdx].name + " sampler").c_str()));
+               de::MovePtr<tcu::TestCaseGroup> imageTypeTests          (new tcu::TestCaseGroup(testCtx, "image_type", ""));
+
+               for (int viewTypeNdx = 0; viewTypeNdx < DE_LENGTH_OF_ARRAY(imageViewTypes); viewTypeNdx++)
+               {
+                       const SamplerViewType                   viewType                = imageViewTypes[viewTypeNdx].type;
+                       de::MovePtr<tcu::TestCaseGroup> viewTypeGroup   (new tcu::TestCaseGroup(testCtx, imageViewTypes[viewTypeNdx].name, (std::string("Uses a ") + imageViewTypes[viewTypeNdx].name + " view").c_str()));
+                       de::MovePtr<tcu::TestCaseGroup> formatTests             (new tcu::TestCaseGroup(testCtx, "format", "Tests samplable formats"));
+
+                       for (size_t formatNdx = 0; formatNdx < DE_LENGTH_OF_ARRAY(formats); formatNdx++)
+                       {
+                               const VkFormat  format                  = formats[formatNdx];
+                               const bool              isCompressed    = isCompressedFormat(format);
+                               const bool              isDepthStencil  = !isCompressed && tcu::hasDepthComponent(mapVkFormat(format).order) && tcu::hasStencilComponent(mapVkFormat(format).order);
+                               ImageAspectTestMode     imageAspectTestMode = getImageAspectTestMode(format);
+
+                               if (isCompressed)
+                               {
+                                       // Do not use compressed formats with 1D and 1D array textures.
+                                       if (viewType == VK_IMAGE_VIEW_TYPE_1D || viewType == VK_IMAGE_VIEW_TYPE_1D_ARRAY)
+                                               break;
+                               }
+
+                               for (int testModeNdx = 0; testModeNdx < DE_LENGTH_OF_ARRAY(testModes); testModeNdx++)
+                               {
+                                       if (imageViewTypes[viewTypeNdx].readOnly && testModes[testModeNdx].mode != TEST_MODE_READ_ONLY)
+                                               continue;
+
+                                       for (int restrictColorNdx = 0; restrictColorNdx < DE_LENGTH_OF_ARRAY(interleaveReadWriteComponentsModes); restrictColorNdx++)
+                                       {
+                                               // Limit the interleaveReadWriteComponents test to the ones sampling and writing to the same pixel, to avoid having more tests that are not really adding coverage.
+                                               if (interleaveReadWriteComponentsModes[restrictColorNdx].interleaveReadWriteComponents &&
+                                                       testModes[testModeNdx].mode != TEST_MODE_READ_WRITE_SAME_PIXEL)
+                                                       continue;
+
+                                               // If the format is depth-only or stencil-only, do not read one component and write it to the other, as it is missing.
+                                               if (interleaveReadWriteComponentsModes[restrictColorNdx].interleaveReadWriteComponents &&
+                                                       (tcu::hasDepthComponent(mapVkFormat(format).order) || tcu::hasStencilComponent(mapVkFormat(format).order)) && !isDepthStencil)
+                                                       continue;
+
+                                               std::string name = getFormatCaseName(format) + imageAspectTestModes[imageAspectTestMode] + testModes[testModeNdx].name + interleaveReadWriteComponentsModes[restrictColorNdx].name;
+                                               formatTests->addChild(new AttachmentFeedbackLoopLayoutSamplerTest(testCtx, pipelineConstructionType, name.c_str(), "", viewType, format, outputImageSize, imageDescriptorType, 0.0f, testModes[testModeNdx].mode, imageAspectTestMode, interleaveReadWriteComponentsModes[restrictColorNdx].interleaveReadWriteComponents));
+
+                                               if (!isCompressed && isDepthStencil)
+                                               {
+                                                       // Image is depth-stencil. Add the stencil case as well.
+                                                       std::string stencilTestName = getFormatCaseName(format) + imageAspectTestModes[IMAGE_ASPECT_TEST_STENCIL] + testModes[testModeNdx].name + interleaveReadWriteComponentsModes[restrictColorNdx].name;
+                                                       formatTests->addChild(new AttachmentFeedbackLoopLayoutSamplerTest(testCtx, pipelineConstructionType, stencilTestName.c_str(), "", viewType, format, outputImageSize, imageDescriptorType, 0.0f, testModes[testModeNdx].mode, IMAGE_ASPECT_TEST_STENCIL, interleaveReadWriteComponentsModes[restrictColorNdx].interleaveReadWriteComponents));
+                                               }
+                                       }
+                               }
+                       }
+
+                       viewTypeGroup->addChild(formatTests.release());
+                       imageTypeTests->addChild(viewTypeGroup.release());
+               }
+               imageDescriptorTypeGroup->addChild(imageTypeTests.release());
+               samplingTypeTests->addChild(imageDescriptorTypeGroup.release());
+       }
+
+       return samplingTypeTests.release();
+}
+
+tcu::TestCaseGroup* createAttachmentFeedbackLoopLayoutTests (tcu::TestContext& testCtx, vk::PipelineConstructionType pipelineConstructionType)
+{
+       de::MovePtr<tcu::TestCaseGroup> attachmentFeedbackLoopLayoutTests(new tcu::TestCaseGroup(testCtx, "attachment_feedback_loop_layout", "VK_EXT_attachment_feedback_loop_layout tests"));
+       {
+               attachmentFeedbackLoopLayoutTests->addChild(createAttachmentFeedbackLoopLayoutSamplerTests(testCtx, pipelineConstructionType));
+       }
+
+       return attachmentFeedbackLoopLayoutTests.release();
+}
+
+} // pipeline
+} // vkt
diff --git a/external/vulkancts/modules/vulkan/pipeline/vktPipelineAttachmentFeedbackLoopLayoutTests.hpp b/external/vulkancts/modules/vulkan/pipeline/vktPipelineAttachmentFeedbackLoopLayoutTests.hpp
new file mode 100644 (file)
index 0000000..8094db7
--- /dev/null
@@ -0,0 +1,39 @@
+#ifndef _VKTPIPELINEATTACHMENTFEEDBACKLOOPLAYOUTTESTS_HPP
+#define _VKTPIPELINEATTACHMENTFEEDBACKLOOPLAYOUTTESTS_HPP
+/*------------------------------------------------------------------------
+ * Vulkan Conformance Tests
+ * ------------------------
+ *
+ * Copyright (c) 2021 Valve Corporation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *//*!
+ * \file
+ * \brief VK_EXT_attachment_feedback_loop_layout Tests
+ *//*--------------------------------------------------------------------*/
+
+#include "vktTestCase.hpp"
+#include "vkPipelineConstructionUtil.hpp"
+
+namespace vkt
+{
+namespace pipeline
+{
+
+tcu::TestCaseGroup* createAttachmentFeedbackLoopLayoutTests (tcu::TestContext& testCtx, vk::PipelineConstructionType pipelineConstructionType);
+
+} // pipeline
+} // vkt
+
+#endif // _VKTPIPELINEATTACHMENTFEEDBACKLOOPLAYOUTTESTS_HPP
index 765842c..961a602 100644 (file)
@@ -361,15 +361,21 @@ ImageSamplingInstance::ImageSamplingInstance (Context&                                            context,
        , m_renderSize                                  (params.renderSize)
        , m_colorFormat                                 (VK_FORMAT_R8G8B8A8_UNORM)
        , m_vertices                                    (params.vertices)
-       , m_graphicsPipeline                    (context.getDeviceInterface(), context.getDevice(), params.pipelineConstructionType)
+       , m_graphicsPipeline                    (context.getDeviceInterface(), context.getDevice(), params.pipelineConstructionType, params.pipelineCreateFlags)
+       , m_pipelineConstructionType    (params.pipelineConstructionType)
+       , m_imageLayout                                 (params.imageLayout)
 {
-       const InstanceInterface&                                vki                                             = context.getInstanceInterface();
-       const DeviceInterface&                                  vk                                              = context.getDeviceInterface();
-       const VkPhysicalDevice                                  physDevice                              = context.getPhysicalDevice();
-       const VkDevice                                                  vkDevice                                = context.getDevice();
-       const VkQueue                                                   queue                                   = context.getUniversalQueue();
-       const deUint32                                                  queueFamilyIndex                = context.getUniversalQueueFamilyIndex();
-       SimpleAllocator                                                 memAlloc                                (vk, vkDevice, getPhysicalDeviceMemoryProperties(context.getInstanceInterface(), context.getPhysicalDevice()));
+}
+
+void ImageSamplingInstance::setup ()
+{
+       const InstanceInterface&                                vki                                             = m_context.getInstanceInterface();
+       const DeviceInterface&                                  vk                                              = m_context.getDeviceInterface();
+       const VkPhysicalDevice                                  physDevice                              = m_context.getPhysicalDevice();
+       const VkDevice                                                  vkDevice                                = m_context.getDevice();
+       const VkQueue                                                   queue                                   = m_context.getUniversalQueue();
+       const deUint32                                                  queueFamilyIndex                = m_context.getUniversalQueueFamilyIndex();
+       SimpleAllocator                                                 memAlloc                                (vk, vkDevice, getPhysicalDeviceMemoryProperties(m_context.getInstanceInterface(), m_context.getPhysicalDevice()));
        const VkComponentMapping                                componentMappingRGBA    = { VK_COMPONENT_SWIZZLE_R, VK_COMPONENT_SWIZZLE_G, VK_COMPONENT_SWIZZLE_B, VK_COMPONENT_SWIZZLE_A };
 
        void const* pNext = m_samplerParams.pNext;
@@ -391,7 +397,7 @@ ImageSamplingInstance::ImageSamplingInstance (Context&                                              context,
                                physicalDeviceProperties.sType  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2;
                                physicalDeviceProperties.pNext  = &physicalDeviceSamplerMinMaxProperties;
 
-                               vki.getPhysicalDeviceProperties2(context.getPhysicalDevice(), &physicalDeviceProperties);
+                               vki.getPhysicalDeviceProperties2(m_context.getPhysicalDevice(), &physicalDeviceProperties);
 
                                if (physicalDeviceSamplerMinMaxProperties.filterMinmaxImageComponentMapping != VK_TRUE)
                                {
@@ -428,7 +434,7 @@ ImageSamplingInstance::ImageSamplingInstance (Context&                                              context,
                                physicalDeviceFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
                                physicalDeviceFeatures.pNext = &physicalDeviceCustomBorderColorFeatures;
 
-                               vki.getPhysicalDeviceFeatures2(context.getPhysicalDevice(), &physicalDeviceFeatures);
+                               vki.getPhysicalDeviceFeatures2(m_context.getPhysicalDevice(), &physicalDeviceFeatures);
 
                                if (physicalDeviceCustomBorderColorFeatures.customBorderColors != VK_TRUE)
                                {
@@ -692,7 +698,7 @@ ImageSamplingInstance::ImageSamplingInstance (Context&                                              context,
        // Create pipeline layout
        {
 #ifndef CTS_USES_VULKANSC
-               VkPipelineLayoutCreateFlags pipelineLayoutFlags = (params.pipelineConstructionType == PIPELINE_CONSTRUCTION_TYPE_MONOLITHIC) ? 0u : deUint32(VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT);
+               VkPipelineLayoutCreateFlags pipelineLayoutFlags = (m_pipelineConstructionType == PIPELINE_CONSTRUCTION_TYPE_MONOLITHIC) ? 0u : deUint32(VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT);
 #else
                VkPipelineLayoutCreateFlags pipelineLayoutFlags = 0u;
 #endif // CTS_USES_VULKANSC
@@ -883,6 +889,8 @@ tcu::TestStatus ImageSamplingInstance::iterate (void)
        const VkDevice                          vkDevice        = m_context.getDevice();
        const VkQueue                           queue           = m_context.getUniversalQueue();
 
+       setup();
+
        submitCommandsAndWait(vk, vkDevice, queue, m_cmdBuffer.get());
 
        return verifyImage();
index 31a1aae..53e61de 100644 (file)
@@ -62,7 +62,9 @@ struct ImageSamplingInstanceParams
                                                                 bool                                                                   separateStencilUsage_ = false,
                                                                 vk::VkDescriptorType                                   samplingType_ = vk::VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
                                                                 int                                                                    imageCount_ = 1,
-                                                                AllocationKind                                                 allocationKind_ = ALLOCATION_KIND_SUBALLOCATED)
+                                                                AllocationKind                                                 allocationKind_ = ALLOCATION_KIND_SUBALLOCATED,
+                                                                const vk::VkImageLayout                                imageLayout_ = vk::VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL,
+                                                                const vk::VkPipelineCreateFlags                pipelineCreateFlags_ = 0u)
        : pipelineConstructionType      (pipelineConstructionType_)
        , renderSize                            (renderSize_)
        , imageViewType                         (imageViewType_)
@@ -78,6 +80,8 @@ struct ImageSamplingInstanceParams
        , samplingType                          (samplingType_)
        , imageCount                            (imageCount_)
        , allocationKind                        (allocationKind_)
+       , imageLayout                           (imageLayout_)
+       , pipelineCreateFlags           (pipelineCreateFlags_)
        {}
 
        const vk::PipelineConstructionType      pipelineConstructionType;
@@ -95,6 +99,8 @@ struct ImageSamplingInstanceParams
        vk::VkDescriptorType                            samplingType;
        int                                                                     imageCount;
        AllocationKind                                          allocationKind;
+       const vk::VkImageLayout                         imageLayout;
+       const vk::VkPipelineCreateFlags         pipelineCreateFlags;
 };
 
 void checkSupportImageSamplingInstance (Context& context, ImageSamplingInstanceParams params);
@@ -110,9 +116,9 @@ public:
        virtual tcu::TestStatus                                         iterate                                 (void);
 
 protected:
-       tcu::TestStatus                                                         verifyImage                             (void);
+       virtual tcu::TestStatus                                         verifyImage                             (void);
+       virtual void                                                            setup                                   (void);
 
-private:
        typedef vk::Unique<vk::VkImage>                         UniqueImage;
        typedef vk::Unique<vk::VkImageView>                     UniqueImageView;
        typedef de::UniquePtr<vk::Allocation>           UniqueAlloc;
@@ -163,9 +169,12 @@ private:
        vk::Move<vk::VkPipelineLayout>                          m_preRasterizationStatePipelineLayout;
        vk::Move<vk::VkPipelineLayout>                          m_fragmentStatePipelineLayout;
        vk::GraphicsPipelineWrapper                                     m_graphicsPipeline;
+       const vk::PipelineConstructionType                      m_pipelineConstructionType;
 
        vk::Move<vk::VkCommandPool>                                     m_cmdPool;
        vk::Move<vk::VkCommandBuffer>                           m_cmdBuffer;
+
+       const vk::VkImageLayout                                         m_imageLayout;
 };
 
 } // pipeline
index 848aae1..2564881 100644 (file)
@@ -406,7 +406,8 @@ void uploadTestTextureInternal (const DeviceInterface&      vk,
                                                                const TestTexture&              srcTexture,
                                                                const TestTexture*              srcStencilTexture,
                                                                tcu::TextureFormat              format,
-                                                               VkImage                                 destImage)
+                                                               VkImage                                 destImage,
+                                                               VkImageLayout                   destImageLayout)
 {
        Move<VkBuffer>                                  buffer;
        de::MovePtr<Allocation>                 bufferAlloc;
@@ -468,7 +469,7 @@ void uploadTestTextureInternal (const DeviceInterface&      vk,
                flushAlloc(vk, device, *bufferAlloc);
        }
 
-       copyBufferToImage(vk, device, queue, queueFamilyIndex, *buffer, bufferSize, copyRegions, DE_NULL, imageAspectFlags, srcTexture.getNumLevels(), srcTexture.getArraySize(), destImage);
+       copyBufferToImage(vk, device, queue, queueFamilyIndex, *buffer, bufferSize, copyRegions, DE_NULL, imageAspectFlags, srcTexture.getNumLevels(), srcTexture.getArraySize(), destImage, destImageLayout);
 }
 
 bool checkSparseImageFormatSupport (const VkPhysicalDevice             physicalDevice,
@@ -584,7 +585,8 @@ void uploadTestTexture (const DeviceInterface&                      vk,
                                                deUint32                                                queueFamilyIndex,
                                                Allocator&                                              allocator,
                                                const TestTexture&                              srcTexture,
-                                               VkImage                                                 destImage)
+                                               VkImage                                                 destImage,
+                                               VkImageLayout                                   destImageLayout)
 {
        if (tcu::isCombinedDepthStencilType(srcTexture.getTextureFormat().type))
        {
@@ -615,10 +617,10 @@ void uploadTestTexture (const DeviceInterface&                    vk,
                if (tcu::hasStencilComponent(srcTexture.getTextureFormat().order))
                        srcStencilTexture = srcTexture.copy(tcu::getEffectiveDepthStencilTextureFormat(srcTexture.getTextureFormat(), tcu::Sampler::MODE_STENCIL));
 
-               uploadTestTextureInternal(vk, device, queue, queueFamilyIndex, allocator, *srcDepthTexture, srcStencilTexture.get(), srcTexture.getTextureFormat(), destImage);
+               uploadTestTextureInternal(vk, device, queue, queueFamilyIndex, allocator, *srcDepthTexture, srcStencilTexture.get(), srcTexture.getTextureFormat(), destImage, destImageLayout);
        }
        else
-               uploadTestTextureInternal(vk, device, queue, queueFamilyIndex, allocator, srcTexture, DE_NULL, srcTexture.getTextureFormat(), destImage);
+               uploadTestTextureInternal(vk, device, queue, queueFamilyIndex, allocator, srcTexture, DE_NULL, srcTexture.getTextureFormat(), destImage, destImageLayout);
 }
 
 void uploadTestTextureSparse (const DeviceInterface&                                   vk,
index 4bcd64a..c185b1f 100644 (file)
@@ -137,7 +137,8 @@ void                                                        uploadTestTexture                       (const vk::DeviceInterface&             vk,
                                                                                                                         deUint32                                               queueFamilyIndex,
                                                                                                                         vk::Allocator&                                 allocator,
                                                                                                                         const TestTexture&                             testTexture,
-                                                                                                                        vk::VkImage                                    destImage);
+                                                                                                                        vk::VkImage                                    destImage,
+                                                                                                                        vk::VkImageLayout                              destImageLayout = vk::VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL);
 
 /*--------------------------------------------------------------------*//*!
  * Uploads data from a test texture to a destination VK image using sparse
index c058f0c..b9d0778 100644 (file)
@@ -64,6 +64,7 @@
 #include "vktPipelineNoPositionTests.hpp"
 #include "vktPipelineColorWriteEnableTests.hpp"
 #include "vktPipelineLibraryTests.hpp"
+#include "vktPipelineAttachmentFeedbackLoopLayoutTests.hpp"
 #include "vktTestGroupUtil.hpp"
 
 namespace vkt
@@ -129,6 +130,9 @@ void createChildren (tcu::TestCaseGroup* group, PipelineConstructionType pipelin
        group->addChild(createBindPointTests                            (testCtx, pipelineConstructionType));
 #endif // CTS_USES_VULKANSC
        group->addChild(createColorWriteEnableTests                     (testCtx, pipelineConstructionType));
+#ifndef CTS_USES_VULKANSC
+       group->addChild(createAttachmentFeedbackLoopLayoutTests (testCtx, pipelineConstructionType));
+#endif // CTS_USES_VULKANSC
 
        // NOTE: all new pipeline tests should use GraphicsPipelineWrapper for pipeline creation
 
@@ -143,6 +147,7 @@ void createChildren (tcu::TestCaseGroup* group, PipelineConstructionType pipelin
 
                // dont repeat tests requiring timing execution of vkCreate*Pipelines
                group->addChild(createCacheControlTests                 (testCtx));
+
 #endif // CTS_USES_VULKANSC
        }
 #ifndef CTS_USES_VULKANSC
index 6465b2c..48964d0 100644 (file)
@@ -220935,6 +220935,402 @@ dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_second
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.monolithic.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.monolithic.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
 dEQP-VK.pipeline.monolithic.misc.position_to_ssbo
 dEQP-VK.pipeline.monolithic.misc.primitive_id_from_tess
 dEQP-VK.pipeline.monolithic.derivative.compute.derivative_by_handle
@@ -440934,6 +441330,402 @@ dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.pipeline_library.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.pipeline_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.4
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.0_1111
 dEQP-VK.pipeline.pipeline_library.graphics_library.fast.0_112
@@ -660952,3 +661744,399 @@ dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disab
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_last
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_first_and_second
 dEQP-VK.pipeline.fast_linked_library.color_write_enable.no_channels.static.disable_second_and_last
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.combined_image_sampler.image_type.cube_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.1d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.r8g8b8a8_unorm_color_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d16_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d24_unorm_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_same_pixel_interleave_read_write_components
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_depth_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.d32_sfloat_s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_same_pixel
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_unnormalized.format.s8_uint_stencil_read_write_different_areas
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.2d_array.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.3d.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube.format.s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.r8g8b8a8_unorm_color_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d16_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d24_unorm_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_depth_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.d32_sfloat_s8_uint_stencil_read
+dEQP-VK.pipeline.fast_linked_library.attachment_feedback_loop_layout.sampler.sampled_image.image_type.cube_array.format.s8_uint_stencil_read
index e9060d4..1ddb072 100755 (executable)
@@ -108,6 +108,14 @@ PLATFORM_TYPES             = [
        (["GgpFrameToken"],                                             ["GgpFrameToken"],                              "int32_t"),
        (["GgpStreamDescriptor"],                               ["GgpStreamDescriptor"],                "int32_t"),
        (["CAMetalLayer"],                                              ["CAMetalLayer"],                               "void*"),
+
+       # VK_EXT_metal_objects
+       (["MTLDevice_id"],                                              ["MTLDevice_id"],                               "void*"),
+       (["MTLCommandQueue_id"],                                ["MTLCommandQueue_id"],                 "void*"),
+       (["MTLBuffer_id"],                                              ["MTLBuffer_id"],                               "void*"),
+       (["MTLTexture_id"],                                             ["MTLTexture_id"],                              "void*"),
+       (["IOSurfaceRef"],                                              ["IOSurfaceRef"],                               "void*"),
+       (["MTLSharedEvent_id"],                                 ["MTLSharedEvent_id"],                  "void*"),
 ]
 
 PLATFORM_TYPE_NAMESPACE        = "pt"
@@ -162,6 +170,7 @@ def prefixName (prefix, name):
        name = name.replace("RGBA_10_X_6", "RGBA10X6")
        name = name.replace("2_D", "2D_")
        name = name.replace("3_D", "3D_")
+       name = name.replace("IOSURFACE", "IO_SURFACE")
 
 
        return prefix + name
@@ -2268,12 +2277,6 @@ def generateDeviceFeaturesDefs(apiName, src):
                        elif sType == 'RASTERIZATION_ORDER_ATTACHMENT_ACCESS':
                                # skip case that has const pNext pointer
                                continue
-                       # skip cases that have const pNext pointer
-                       if sType == 'RASTERIZATION_ORDER_ATTACHMENT_ACCESS':
-                               continue
-                       # skip cases that have const pNext pointer
-                       if sType == 'RASTERIZATION_ORDER_ATTACHMENT_ACCESS':
-                               continue
                        # end handling special cases
                        ptrnExtensionName       = r'^\s*#define\s+(\w+' + sSuffix + '_' + sType + '_EXTENSION_NAME).+$'
                        matchExtensionName      = re.search(ptrnExtensionName, src, re.M)
diff --git a/external/vulkancts/scripts/src/extensions/VK_EXT_attachment_feedback_loop_layout.json b/external/vulkancts/scripts/src/extensions/VK_EXT_attachment_feedback_loop_layout.json
new file mode 100644 (file)
index 0000000..68059d1
--- /dev/null
@@ -0,0 +1,14 @@
+{
+       "register_extension":
+       {
+               "type": "device",
+               "core": ""
+       },
+       "mandatory_features":
+       {
+               "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT":
+               [
+                       { "features": ["attachmentFeedbackLoopLayout"], "requirements": ["VK_EXT_attachment_feedback_loop_layout"], "mandatory_variant": ["vulkan"]}
+               ]
+       }
+}
index d8f0182..a775b35 100644 (file)
@@ -438,7 +438,7 @@ TextureFormatInfo getTextureFormatInfo (const TextureFormat& format)
                                                                 Vec4(       0.5f,                  0.5f,                   0.5f,                0.5f));
        else if (format.order == TextureFormat::D || format.order == TextureFormat::DS)
                return TextureFormatInfo(Vec4(0.0f,     0.0f,   0.0f,   0.0f),
-                                                                Vec4(1.0f,     1.0f,   1.0f,   0.0f),
+                                                                Vec4(1.0f,     1.0f,   1.0f,   255.0f),
                                                                 Vec4(1.0f,     1.0f,   1.0f,   1.0f),
                                                                 Vec4(0.0f,     0.0f,   0.0f,   0.0f)); // Depth / stencil formats.
        else if (format == TextureFormat(TextureFormat::RGBA, TextureFormat::UNORM_SHORT_5551))