From fe5067838521f94f98f247b08bbdbeed812e4374 Mon Sep 17 00:00:00 2001 From: Mike Schuchardt Date: Wed, 11 May 2022 10:32:40 -0700 Subject: build: Update to header 1.3.213 - Update known-good - Generate source --- build-android/vulkan-headers_revision_android | 2 +- common/vulkan_wrapper.cpp | 4 + common/vulkan_wrapper.h | 3 + icd/generated/mock_icd.cpp | 30 +++++++ icd/generated/mock_icd.h | 28 ++++++ icd/generated/vk_typemap_helper.h | 117 ++++++++++++++++++++++++++ scripts/generate_vulkan_wrapper.py | 23 +++++ scripts/known_good.json | 4 +- vulkaninfo/generated/vulkaninfo.hpp | 72 ++++++++++++++++ 9 files changed, 280 insertions(+), 3 deletions(-) diff --git a/build-android/vulkan-headers_revision_android b/build-android/vulkan-headers_revision_android index f00abfc0..ef9fb668 100644 --- a/build-android/vulkan-headers_revision_android +++ b/build-android/vulkan-headers_revision_android @@ -1 +1 @@ -v1.3.212 +v1.3.213 diff --git a/common/vulkan_wrapper.cpp b/common/vulkan_wrapper.cpp index 8cfeb35d..f0075660 100644 --- a/common/vulkan_wrapper.cpp +++ b/common/vulkan_wrapper.cpp @@ -459,6 +459,7 @@ int InitVulkan(void) { vkCmdCopyImageToBuffer2KHR = reinterpret_cast(dlsym(libvulkan, "vkCmdCopyImageToBuffer2KHR")); vkCmdBlitImage2KHR = reinterpret_cast(dlsym(libvulkan, "vkCmdBlitImage2KHR")); vkCmdResolveImage2KHR = reinterpret_cast(dlsym(libvulkan, "vkCmdResolveImage2KHR")); + vkCmdTraceRaysIndirect2KHR = reinterpret_cast(dlsym(libvulkan, "vkCmdTraceRaysIndirect2KHR")); vkGetDeviceBufferMemoryRequirementsKHR = reinterpret_cast(dlsym(libvulkan, "vkGetDeviceBufferMemoryRequirementsKHR")); vkGetDeviceImageMemoryRequirementsKHR = @@ -909,6 +910,7 @@ PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR; PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR; PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR; PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR; +PFN_vkCmdTraceRaysIndirect2KHR vkCmdTraceRaysIndirect2KHR; PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirementsKHR; PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirementsKHR; PFN_vkGetDeviceImageSparseMemoryRequirementsKHR vkGetDeviceImageSparseMemoryRequirementsKHR; @@ -1037,6 +1039,7 @@ PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT; PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT; PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT; PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV; +PFN_vkGetImageSubresourceLayout2EXT vkGetImageSubresourceLayout2EXT; PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV; PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV; PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT; @@ -1044,6 +1047,7 @@ PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMax PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI; PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI; PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV; +PFN_vkGetPipelinePropertiesEXT vkGetPipelinePropertiesEXT; PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT; PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT; PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT; diff --git a/common/vulkan_wrapper.h b/common/vulkan_wrapper.h index 9e7e7e5c..b5c35faf 100644 --- a/common/vulkan_wrapper.h +++ b/common/vulkan_wrapper.h @@ -429,6 +429,9 @@ extern PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR; extern PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR; extern PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR; +// VK_KHR_ray_tracing_maintenance1 +extern PFN_vkCmdTraceRaysIndirect2KHR vkCmdTraceRaysIndirect2KHR; + // VK_KHR_maintenance4 extern PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirementsKHR; extern PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirementsKHR; diff --git a/icd/generated/mock_icd.cpp b/icd/generated/mock_icd.cpp index df15372a..2078b58f 100644 --- a/icd/generated/mock_icd.cpp +++ b/icd/generated/mock_icd.cpp @@ -3874,6 +3874,14 @@ static VKAPI_ATTR void VKAPI_CALL CmdResolveImage2KHR( +static VKAPI_ATTR void VKAPI_CALL CmdTraceRaysIndirect2KHR( + VkCommandBuffer commandBuffer, + VkDeviceAddress indirectDeviceAddress) +{ +//Not a CREATE or DESTROY function +} + + static VKAPI_ATTR void VKAPI_CALL GetDeviceBufferMemoryRequirementsKHR( VkDevice device, @@ -5364,6 +5372,16 @@ static VKAPI_ATTR void VKAPI_CALL CmdSetFragmentShadingRateEnumNV( +static VKAPI_ATTR void VKAPI_CALL GetImageSubresourceLayout2EXT( + VkDevice device, + VkImage image, + const VkImageSubresource2EXT* pSubresource, + VkSubresourceLayout2EXT* pLayout) +{ +//Not a CREATE or DESTROY function +} + + #ifdef VK_USE_PLATFORM_WIN32_KHR @@ -5551,6 +5569,16 @@ static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryRemoteAddressNV( } +static VKAPI_ATTR VkResult VKAPI_CALL GetPipelinePropertiesEXT( + VkDevice device, + const VkPipelineInfoEXT* pPipelineInfo, + VkBaseOutStructure* pPipelineProperties) +{ +//Not a CREATE or DESTROY function + return VK_SUCCESS; +} + + static VKAPI_ATTR void VKAPI_CALL CmdSetPatchControlPointsEXT( VkCommandBuffer commandBuffer, uint32_t patchControlPoints) @@ -5678,6 +5706,8 @@ static VKAPI_ATTR void VKAPI_CALL GetDescriptorSetHostMappingVALVE( + + static VKAPI_ATTR VkResult VKAPI_CALL CreateAccelerationStructureKHR( VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, diff --git a/icd/generated/mock_icd.h b/icd/generated/mock_icd.h index 0862b7e1..14bd1cd0 100644 --- a/icd/generated/mock_icd.h +++ b/icd/generated/mock_icd.h @@ -298,6 +298,7 @@ static const std::unordered_map device_extension_map = { {"VK_EXT_image_robustness", 1}, {"VK_KHR_workgroup_memory_explicit_layout", 1}, {"VK_KHR_copy_commands2", 1}, + {"VK_EXT_image_compression_control", 1}, {"VK_EXT_4444_formats", 1}, {"VK_ARM_rasterization_order_attachment_access", 1}, {"VK_EXT_rgba10x6_formats", 1}, @@ -314,9 +315,11 @@ static const std::unordered_map device_extension_map = { {"VK_HUAWEI_subpass_shading", 2}, {"VK_HUAWEI_invocation_mask", 1}, {"VK_NV_external_memory_rdma", 1}, + {"VK_EXT_pipeline_properties", 1}, {"VK_EXT_extended_dynamic_state2", 1}, {"VK_EXT_color_write_enable", 1}, {"VK_EXT_primitives_generated_query", 1}, + {"VK_KHR_ray_tracing_maintenance1", 1}, {"VK_EXT_global_priority_query", 1}, {"VK_EXT_image_view_min_lod", 1}, {"VK_EXT_multi_draw", 1}, @@ -328,6 +331,8 @@ static const std::unordered_map device_extension_map = { {"VK_VALVE_descriptor_set_host_mapping", 1}, {"VK_QCOM_fragment_density_map_offset", 1}, {"VK_NV_linear_color_attachment", 1}, + {"VK_EXT_image_compression_control_swapchain", 1}, + {"VK_EXT_subpass_merge_feedback", 1}, }; @@ -2346,6 +2351,11 @@ static VKAPI_ATTR void VKAPI_CALL CmdResolveImage2KHR( +static VKAPI_ATTR void VKAPI_CALL CmdTraceRaysIndirect2KHR( + VkCommandBuffer commandBuffer, + VkDeviceAddress indirectDeviceAddress); + + static VKAPI_ATTR void VKAPI_CALL GetDeviceBufferMemoryRequirementsKHR( VkDevice device, @@ -3325,6 +3335,13 @@ static VKAPI_ATTR void VKAPI_CALL CmdSetFragmentShadingRateEnumNV( +static VKAPI_ATTR void VKAPI_CALL GetImageSubresourceLayout2EXT( + VkDevice device, + VkImage image, + const VkImageSubresource2EXT* pSubresource, + VkSubresourceLayout2EXT* pLayout); + + #ifdef VK_USE_PLATFORM_WIN32_KHR @@ -3442,6 +3459,12 @@ static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryRemoteAddressNV( VkRemoteAddressNV* pAddress); +static VKAPI_ATTR VkResult VKAPI_CALL GetPipelinePropertiesEXT( + VkDevice device, + const VkPipelineInfoEXT* pPipelineInfo, + VkBaseOutStructure* pPipelineProperties); + + static VKAPI_ATTR void VKAPI_CALL CmdSetPatchControlPointsEXT( VkCommandBuffer commandBuffer, uint32_t patchControlPoints); @@ -3527,6 +3550,8 @@ static VKAPI_ATTR void VKAPI_CALL GetDescriptorSetHostMappingVALVE( + + static VKAPI_ATTR VkResult VKAPI_CALL CreateAccelerationStructureKHR( VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, @@ -4076,6 +4101,7 @@ static const std::unordered_map name_to_funcptr_map = { {"vkCmdCopyImageToBuffer2KHR", (void*)CmdCopyImageToBuffer2KHR}, {"vkCmdBlitImage2KHR", (void*)CmdBlitImage2KHR}, {"vkCmdResolveImage2KHR", (void*)CmdResolveImage2KHR}, + {"vkCmdTraceRaysIndirect2KHR", (void*)CmdTraceRaysIndirect2KHR}, {"vkGetDeviceBufferMemoryRequirementsKHR", (void*)GetDeviceBufferMemoryRequirementsKHR}, {"vkGetDeviceImageMemoryRequirementsKHR", (void*)GetDeviceImageMemoryRequirementsKHR}, {"vkGetDeviceImageSparseMemoryRequirementsKHR", (void*)GetDeviceImageSparseMemoryRequirementsKHR}, @@ -4248,6 +4274,7 @@ static const std::unordered_map name_to_funcptr_map = { {"vkSetPrivateDataEXT", (void*)SetPrivateDataEXT}, {"vkGetPrivateDataEXT", (void*)GetPrivateDataEXT}, {"vkCmdSetFragmentShadingRateEnumNV", (void*)CmdSetFragmentShadingRateEnumNV}, + {"vkGetImageSubresourceLayout2EXT", (void*)GetImageSubresourceLayout2EXT}, #ifdef VK_USE_PLATFORM_WIN32_KHR {"vkAcquireWinrtDisplayNV", (void*)AcquireWinrtDisplayNV}, #endif @@ -4292,6 +4319,7 @@ static const std::unordered_map name_to_funcptr_map = { {"vkCmdSubpassShadingHUAWEI", (void*)CmdSubpassShadingHUAWEI}, {"vkCmdBindInvocationMaskHUAWEI", (void*)CmdBindInvocationMaskHUAWEI}, {"vkGetMemoryRemoteAddressNV", (void*)GetMemoryRemoteAddressNV}, + {"vkGetPipelinePropertiesEXT", (void*)GetPipelinePropertiesEXT}, {"vkCmdSetPatchControlPointsEXT", (void*)CmdSetPatchControlPointsEXT}, {"vkCmdSetRasterizerDiscardEnableEXT", (void*)CmdSetRasterizerDiscardEnableEXT}, {"vkCmdSetDepthBiasEnableEXT", (void*)CmdSetDepthBiasEnableEXT}, diff --git a/icd/generated/vk_typemap_helper.h b/icd/generated/vk_typemap_helper.h index 2aec6a79..0d583bf6 100644 --- a/icd/generated/vk_typemap_helper.h +++ b/icd/generated/vk_typemap_helper.h @@ -3003,6 +3003,15 @@ template <> struct LvlSTypeMap struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR; +}; + +template <> struct LvlSTypeMap { + typedef VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR Type; +}; + // Map type VkDebugReportCallbackCreateInfoEXT to id VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT template <> struct LvlTypeMap { static const VkStructureType kSType = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT; @@ -5255,6 +5264,51 @@ template <> struct LvlSTypeMap struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkPhysicalDeviceImageCompressionControlFeaturesEXT Type; +}; + +// Map type VkImageCompressionControlEXT to id VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkImageCompressionControlEXT Type; +}; + +// Map type VkSubresourceLayout2EXT to id VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkSubresourceLayout2EXT Type; +}; + +// Map type VkImageSubresource2EXT to id VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkImageSubresource2EXT Type; +}; + +// Map type VkImageCompressionPropertiesEXT to id VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkImageCompressionPropertiesEXT Type; +}; + // Map type VkPhysicalDevice4444FormatsFeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT template <> struct LvlTypeMap { static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT; @@ -5593,6 +5647,24 @@ template <> struct LvlSTypeMap struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkPipelinePropertiesIdentifierEXT Type; +}; + +// Map type VkPhysicalDevicePipelinePropertiesFeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkPhysicalDevicePipelinePropertiesFeaturesEXT Type; +}; + // Map type VkPhysicalDeviceExtendedDynamicState2FeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT template <> struct LvlTypeMap { static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT; @@ -5775,6 +5847,51 @@ template <> struct LvlSTypeMap struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT Type; +}; + +// Map type VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT Type; +}; + +// Map type VkRenderPassCreationControlEXT to id VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkRenderPassCreationControlEXT Type; +}; + +// Map type VkRenderPassCreationFeedbackInfoEXT to id VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_INFO_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_INFO_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkRenderPassCreationFeedbackInfoEXT Type; +}; + +// Map type VkRenderPassSubpassFeedbackInfoEXT to id VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_INFO_EXT +template <> struct LvlTypeMap { + static const VkStructureType kSType = VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_INFO_EXT; +}; + +template <> struct LvlSTypeMap { + typedef VkRenderPassSubpassFeedbackInfoEXT Type; +}; + // Map type VkAccelerationStructureGeometryTrianglesDataKHR to id VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR template <> struct LvlTypeMap { static const VkStructureType kSType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR; diff --git a/scripts/generate_vulkan_wrapper.py b/scripts/generate_vulkan_wrapper.py index ba26eabc..cbd942d1 100755 --- a/scripts/generate_vulkan_wrapper.py +++ b/scripts/generate_vulkan_wrapper.py @@ -651,6 +651,10 @@ VK_KHR_copy_commands2 = Extension(name='VK_KHR_copy_commands2', version=1, guard VK_KHR_format_feature_flags2 = Extension(name='VK_KHR_format_feature_flags2', version=1, guard=None, commands=[ ]) +VK_KHR_ray_tracing_maintenance1 = Extension(name='VK_KHR_ray_tracing_maintenance1', version=1, guard=None, commands=[ + Command(name='vkCmdTraceRaysIndirect2KHR', dispatch='VkCommandBuffer'), +]) + VK_KHR_portability_enumeration = Extension(name='VK_KHR_portability_enumeration', version=1, guard=None, commands=[ ]) @@ -1198,6 +1202,10 @@ VK_QCOM_rotated_copy_commands = Extension(name='VK_QCOM_rotated_copy_commands', VK_EXT_image_robustness = Extension(name='VK_EXT_image_robustness', version=1, guard=None, commands=[ ]) +VK_EXT_image_compression_control = Extension(name='VK_EXT_image_compression_control', version=1, guard=None, commands=[ + Command(name='vkGetImageSubresourceLayout2EXT', dispatch='VkDevice'), +]) + VK_EXT_4444_formats = Extension(name='VK_EXT_4444_formats', version=1, guard=None, commands=[ ]) @@ -1241,6 +1249,10 @@ VK_NV_external_memory_rdma = Extension(name='VK_NV_external_memory_rdma', versio Command(name='vkGetMemoryRemoteAddressNV', dispatch='VkDevice'), ]) +VK_EXT_pipeline_properties = Extension(name='VK_EXT_pipeline_properties', version=1, guard=None, commands=[ + Command(name='vkGetPipelinePropertiesEXT', dispatch='VkDevice'), +]) + VK_EXT_extended_dynamic_state2 = Extension(name='VK_EXT_extended_dynamic_state2', version=1, guard=None, commands=[ Command(name='vkCmdSetPatchControlPointsEXT', dispatch='VkCommandBuffer'), Command(name='vkCmdSetRasterizerDiscardEnableEXT', dispatch='VkCommandBuffer'), @@ -1294,6 +1306,12 @@ VK_NV_linear_color_attachment = Extension(name='VK_NV_linear_color_attachment', VK_GOOGLE_surfaceless_query = Extension(name='VK_GOOGLE_surfaceless_query', version=1, guard=None, commands=[ ]) +VK_EXT_image_compression_control_swapchain = Extension(name='VK_EXT_image_compression_control_swapchain', version=1, guard=None, commands=[ +]) + +VK_EXT_subpass_merge_feedback = Extension(name='VK_EXT_subpass_merge_feedback', version=1, guard=None, commands=[ +]) + VK_KHR_acceleration_structure = Extension(name='VK_KHR_acceleration_structure', version=13, guard=None, commands=[ Command(name='vkCreateAccelerationStructureKHR', dispatch='VkDevice'), Command(name='vkDestroyAccelerationStructureKHR', dispatch='VkDevice'), @@ -1563,6 +1581,7 @@ extensions = [ VK_KHR_workgroup_memory_explicit_layout, VK_KHR_copy_commands2, VK_KHR_format_feature_flags2, + VK_KHR_ray_tracing_maintenance1, VK_KHR_portability_enumeration, VK_KHR_maintenance4, VK_EXT_debug_report, @@ -1703,6 +1722,7 @@ extensions = [ VK_EXT_fragment_density_map2, VK_QCOM_rotated_copy_commands, VK_EXT_image_robustness, + VK_EXT_image_compression_control, VK_EXT_4444_formats, VK_ARM_rasterization_order_attachment_access, VK_EXT_rgba10x6_formats, @@ -1715,6 +1735,7 @@ extensions = [ 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_primitives_generated_query, @@ -1729,6 +1750,8 @@ extensions = [ VK_QCOM_fragment_density_map_offset, VK_NV_linear_color_attachment, VK_GOOGLE_surfaceless_query, + VK_EXT_image_compression_control_swapchain, + VK_EXT_subpass_merge_feedback, VK_KHR_acceleration_structure, VK_KHR_ray_tracing_pipeline, VK_KHR_ray_query, diff --git a/scripts/known_good.json b/scripts/known_good.json index 98d45e83..7379a244 100644 --- a/scripts/known_good.json +++ b/scripts/known_good.json @@ -6,7 +6,7 @@ "sub_dir" : "Vulkan-Headers", "build_dir" : "Vulkan-Headers/build", "install_dir" : "Vulkan-Headers/build/install", - "commit" : "v1.3.212" + "commit" : "v1.3.213" }, { "name" : "MoltenVK", @@ -30,7 +30,7 @@ "sub_dir" : "Vulkan-Loader", "build_dir" : "Vulkan-Loader/build", "install_dir" : "Vulkan-Loader/build/install", - "commit" : "v1.3.212", + "commit" : "v1.3.213", "deps" : [ { "var_name" : "VULKAN_HEADERS_INSTALL_DIR", diff --git a/vulkaninfo/generated/vulkaninfo.hpp b/vulkaninfo/generated/vulkaninfo.hpp index deedbaf8..be0bfc55 100644 --- a/vulkaninfo/generated/vulkaninfo.hpp +++ b/vulkaninfo/generated/vulkaninfo.hpp @@ -477,6 +477,7 @@ std::string VkResultString(VkResult value) { case (VK_THREAD_DONE_KHR): return "THREAD_DONE_KHR"; case (VK_OPERATION_DEFERRED_KHR): return "OPERATION_DEFERRED_KHR"; case (VK_OPERATION_NOT_DEFERRED_KHR): return "OPERATION_NOT_DEFERRED_KHR"; + case (VK_ERROR_COMPRESSION_EXHAUSTED_EXT): return "ERROR_COMPRESSION_EXHAUSTED_EXT"; default: return std::string("UNKNOWN_VkResult_value") + std::to_string(value); } } @@ -1700,6 +1701,16 @@ void DumpVkPhysicalDeviceImage2DViewOf3DFeaturesEXT(Printer &p, std::string name p.PrintKeyBool("image2DViewOf3D", static_cast(obj.image2DViewOf3D)); p.PrintKeyBool("sampler2DViewOf3D", static_cast(obj.sampler2DViewOf3D)); } +void DumpVkPhysicalDeviceImageCompressionControlFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceImageCompressionControlFeaturesEXT &obj) { + ObjectWrapper object{p, name}; + p.SetMinKeyWidth(23); + p.PrintKeyBool("imageCompressionControl", static_cast(obj.imageCompressionControl)); +} +void DumpVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT &obj) { + ObjectWrapper object{p, name}; + p.SetMinKeyWidth(32); + p.PrintKeyBool("imageCompressionControlSwapchain", static_cast(obj.imageCompressionControlSwapchain)); +} void DumpVkPhysicalDeviceImageRobustnessFeatures(Printer &p, std::string name, const VkPhysicalDeviceImageRobustnessFeatures &obj) { ObjectWrapper object{p, name}; p.SetMinKeyWidth(17); @@ -2002,6 +2013,11 @@ void DumpVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(Printer &p, std p.SetMinKeyWidth(22); p.PrintKeyBool("pipelineExecutableInfo", static_cast(obj.pipelineExecutableInfo)); } +void DumpVkPhysicalDevicePipelinePropertiesFeaturesEXT(Printer &p, std::string name, const VkPhysicalDevicePipelinePropertiesFeaturesEXT &obj) { + ObjectWrapper object{p, name}; + p.SetMinKeyWidth(28); + p.PrintKeyBool("pipelinePropertiesIdentifier", static_cast(obj.pipelinePropertiesIdentifier)); +} void DumpVkPhysicalDevicePointClippingProperties(Printer &p, std::string name, const VkPhysicalDevicePointClippingProperties &obj) { ObjectWrapper object{p, name}; DumpVkPointClippingBehavior(p, "pointClippingBehavior", obj.pointClippingBehavior); @@ -2099,6 +2115,12 @@ void DumpVkPhysicalDeviceRayQueryFeaturesKHR(Printer &p, std::string name, const p.SetMinKeyWidth(8); p.PrintKeyBool("rayQuery", static_cast(obj.rayQuery)); } +void DumpVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR(Printer &p, std::string name, const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR &obj) { + ObjectWrapper object{p, name}; + p.SetMinKeyWidth(36); + p.PrintKeyBool("rayTracingMaintenance1", static_cast(obj.rayTracingMaintenance1)); + p.PrintKeyBool("rayTracingPipelineTraceRaysIndirect2", static_cast(obj.rayTracingPipelineTraceRaysIndirect2)); +} void DumpVkPhysicalDeviceRayTracingPipelineFeaturesKHR(Printer &p, std::string name, const VkPhysicalDeviceRayTracingPipelineFeaturesKHR &obj) { ObjectWrapper object{p, name}; p.SetMinKeyWidth(53); @@ -2321,6 +2343,11 @@ void DumpVkPhysicalDeviceSubgroupSizeControlProperties(Printer &p, std::string n p.PrintKeyValue("maxComputeWorkgroupSubgroups", obj.maxComputeWorkgroupSubgroups); DumpVkShaderStageFlags(p, "requiredSubgroupSizeStages", obj.requiredSubgroupSizeStages); } +void DumpVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT &obj) { + ObjectWrapper object{p, name}; + p.SetMinKeyWidth(20); + p.PrintKeyBool("subpassMergeFeedback", static_cast(obj.subpassMergeFeedback)); +} void DumpVkPhysicalDeviceSynchronization2Features(Printer &p, std::string name, const VkPhysicalDeviceSynchronization2Features &obj) { ObjectWrapper object{p, name}; p.SetMinKeyWidth(16); @@ -2959,6 +2986,8 @@ struct phys_device_features2_chain { VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT{}; VkPhysicalDeviceHostQueryResetFeatures PhysicalDeviceHostQueryResetFeatures{}; VkPhysicalDeviceImage2DViewOf3DFeaturesEXT PhysicalDeviceImage2DViewOf3DFeaturesEXT{}; + VkPhysicalDeviceImageCompressionControlFeaturesEXT PhysicalDeviceImageCompressionControlFeaturesEXT{}; + VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT PhysicalDeviceImageCompressionControlSwapchainFeaturesEXT{}; VkPhysicalDeviceImageRobustnessFeatures PhysicalDeviceImageRobustnessFeatures{}; VkPhysicalDeviceImageViewMinLodFeaturesEXT PhysicalDeviceImageViewMinLodFeaturesEXT{}; VkPhysicalDeviceImagelessFramebufferFeatures PhysicalDeviceImagelessFramebufferFeatures{}; @@ -2973,6 +3002,7 @@ struct phys_device_features2_chain { VkPhysicalDevicePerformanceQueryFeaturesKHR PhysicalDevicePerformanceQueryFeaturesKHR{}; VkPhysicalDevicePipelineCreationCacheControlFeatures PhysicalDevicePipelineCreationCacheControlFeatures{}; VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR PhysicalDevicePipelineExecutablePropertiesFeaturesKHR{}; + VkPhysicalDevicePipelinePropertiesFeaturesEXT PhysicalDevicePipelinePropertiesFeaturesEXT{}; #ifdef VK_ENABLE_BETA_EXTENSIONS VkPhysicalDevicePortabilitySubsetFeaturesKHR PhysicalDevicePortabilitySubsetFeaturesKHR{}; #endif // VK_ENABLE_BETA_EXTENSIONS @@ -2985,6 +3015,7 @@ struct phys_device_features2_chain { VkPhysicalDeviceProvokingVertexFeaturesEXT PhysicalDeviceProvokingVertexFeaturesEXT{}; VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT PhysicalDeviceRGBA10X6FormatsFeaturesEXT{}; VkPhysicalDeviceRayQueryFeaturesKHR PhysicalDeviceRayQueryFeaturesKHR{}; + VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR PhysicalDeviceRayTracingMaintenance1FeaturesKHR{}; VkPhysicalDeviceRayTracingPipelineFeaturesKHR PhysicalDeviceRayTracingPipelineFeaturesKHR{}; VkPhysicalDeviceRobustness2FeaturesEXT PhysicalDeviceRobustness2FeaturesEXT{}; VkPhysicalDeviceSamplerYcbcrConversionFeatures PhysicalDeviceSamplerYcbcrConversionFeatures{}; @@ -3004,6 +3035,7 @@ struct phys_device_features2_chain { VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR{}; VkPhysicalDeviceShaderTerminateInvocationFeatures PhysicalDeviceShaderTerminateInvocationFeatures{}; VkPhysicalDeviceSubgroupSizeControlFeatures PhysicalDeviceSubgroupSizeControlFeatures{}; + VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT PhysicalDeviceSubpassMergeFeedbackFeaturesEXT{}; VkPhysicalDeviceSynchronization2Features PhysicalDeviceSynchronization2Features{}; VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT PhysicalDeviceTexelBufferAlignmentFeaturesEXT{}; VkPhysicalDeviceTextureCompressionASTCHDRFeatures PhysicalDeviceTextureCompressionASTCHDRFeatures{}; @@ -3049,6 +3081,8 @@ struct phys_device_features2_chain { PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT; PhysicalDeviceHostQueryResetFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES; PhysicalDeviceImage2DViewOf3DFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT; + PhysicalDeviceImageCompressionControlFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT; + PhysicalDeviceImageCompressionControlSwapchainFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT; PhysicalDeviceImageRobustnessFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES; PhysicalDeviceImageViewMinLodFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT; PhysicalDeviceImagelessFramebufferFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES; @@ -3063,6 +3097,7 @@ struct phys_device_features2_chain { PhysicalDevicePerformanceQueryFeaturesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR; PhysicalDevicePipelineCreationCacheControlFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES; PhysicalDevicePipelineExecutablePropertiesFeaturesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR; + PhysicalDevicePipelinePropertiesFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT; #ifdef VK_ENABLE_BETA_EXTENSIONS PhysicalDevicePortabilitySubsetFeaturesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR; #endif // VK_ENABLE_BETA_EXTENSIONS @@ -3075,6 +3110,7 @@ struct phys_device_features2_chain { PhysicalDeviceProvokingVertexFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT; PhysicalDeviceRGBA10X6FormatsFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT; PhysicalDeviceRayQueryFeaturesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR; + PhysicalDeviceRayTracingMaintenance1FeaturesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR; PhysicalDeviceRayTracingPipelineFeaturesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR; PhysicalDeviceRobustness2FeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT; PhysicalDeviceSamplerYcbcrConversionFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES; @@ -3093,6 +3129,7 @@ struct phys_device_features2_chain { PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR; PhysicalDeviceShaderTerminateInvocationFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES; PhysicalDeviceSubgroupSizeControlFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES; + PhysicalDeviceSubpassMergeFeedbackFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT; PhysicalDeviceSynchronization2Features.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES; PhysicalDeviceTexelBufferAlignmentFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT; PhysicalDeviceTextureCompressionASTCHDRFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES; @@ -3138,6 +3175,8 @@ struct phys_device_features2_chain { chain_members.push_back(reinterpret_cast(&PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceHostQueryResetFeatures)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceImage2DViewOf3DFeaturesEXT)); + chain_members.push_back(reinterpret_cast(&PhysicalDeviceImageCompressionControlFeaturesEXT)); + chain_members.push_back(reinterpret_cast(&PhysicalDeviceImageCompressionControlSwapchainFeaturesEXT)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceImageRobustnessFeatures)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceImageViewMinLodFeaturesEXT)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceImagelessFramebufferFeatures)); @@ -3152,6 +3191,7 @@ struct phys_device_features2_chain { chain_members.push_back(reinterpret_cast(&PhysicalDevicePerformanceQueryFeaturesKHR)); chain_members.push_back(reinterpret_cast(&PhysicalDevicePipelineCreationCacheControlFeatures)); chain_members.push_back(reinterpret_cast(&PhysicalDevicePipelineExecutablePropertiesFeaturesKHR)); + chain_members.push_back(reinterpret_cast(&PhysicalDevicePipelinePropertiesFeaturesEXT)); #ifdef VK_ENABLE_BETA_EXTENSIONS chain_members.push_back(reinterpret_cast(&PhysicalDevicePortabilitySubsetFeaturesKHR)); #endif // VK_ENABLE_BETA_EXTENSIONS @@ -3164,6 +3204,7 @@ struct phys_device_features2_chain { chain_members.push_back(reinterpret_cast(&PhysicalDeviceProvokingVertexFeaturesEXT)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceRGBA10X6FormatsFeaturesEXT)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceRayQueryFeaturesKHR)); + chain_members.push_back(reinterpret_cast(&PhysicalDeviceRayTracingMaintenance1FeaturesKHR)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceRayTracingPipelineFeaturesKHR)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceRobustness2FeaturesEXT)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceSamplerYcbcrConversionFeatures)); @@ -3182,6 +3223,7 @@ struct phys_device_features2_chain { chain_members.push_back(reinterpret_cast(&PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceShaderTerminateInvocationFeatures)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceSubgroupSizeControlFeatures)); + chain_members.push_back(reinterpret_cast(&PhysicalDeviceSubpassMergeFeedbackFeaturesEXT)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceSynchronization2Features)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceTexelBufferAlignmentFeaturesEXT)); chain_members.push_back(reinterpret_cast(&PhysicalDeviceTextureCompressionASTCHDRFeatures)); @@ -3803,6 +3845,18 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place) DumpVkPhysicalDeviceImage2DViewOf3DFeaturesEXT(p, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT", *props); p.AddNewline(); } + if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT && + (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME))) { + VkPhysicalDeviceImageCompressionControlFeaturesEXT* props = (VkPhysicalDeviceImageCompressionControlFeaturesEXT*)structure; + DumpVkPhysicalDeviceImageCompressionControlFeaturesEXT(p, "VkPhysicalDeviceImageCompressionControlFeaturesEXT", *props); + p.AddNewline(); + } + if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT && + (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME))) { + VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* props = (VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*)structure; + DumpVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(p, "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT", *props); + p.AddNewline(); + } if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES && (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME) || gpu.api_version.minor >= 3)) { @@ -3893,6 +3947,12 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place) DumpVkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(p, "VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR", *props); p.AddNewline(); } + if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT && + (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME))) { + VkPhysicalDevicePipelinePropertiesFeaturesEXT* props = (VkPhysicalDevicePipelinePropertiesFeaturesEXT*)structure; + DumpVkPhysicalDevicePipelinePropertiesFeaturesEXT(p, "VkPhysicalDevicePipelinePropertiesFeaturesEXT", *props); + p.AddNewline(); + } #ifdef VK_ENABLE_BETA_EXTENSIONS if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR && p.Type() != OutputType::json && (gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME))) { @@ -3956,6 +4016,12 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place) DumpVkPhysicalDeviceRayQueryFeaturesKHR(p, "VkPhysicalDeviceRayQueryFeaturesKHR", *props); p.AddNewline(); } + if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR && + (gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME))) { + VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* props = (VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*)structure; + DumpVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR(p, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR", *props); + p.AddNewline(); + } if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR && (gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME))) { VkPhysicalDeviceRayTracingPipelineFeaturesKHR* props = (VkPhysicalDeviceRayTracingPipelineFeaturesKHR*)structure; @@ -4074,6 +4140,12 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place) DumpVkPhysicalDeviceSubgroupSizeControlFeatures(p, gpu.api_version.minor >= 3 ?"VkPhysicalDeviceSubgroupSizeControlFeatures":"VkPhysicalDeviceSubgroupSizeControlFeaturesEXT", *props); p.AddNewline(); } + if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT && + (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME))) { + VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* props = (VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*)structure; + DumpVkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT(p, "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT", *props); + p.AddNewline(); + } if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES && (gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME) || gpu.api_version.minor >= 3)) { -- cgit v1.2.3