Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package vulkan-tools for openSUSE:Factory 
checked in at 2022-06-17 21:18:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vulkan-tools (Old)
 and      /work/SRC/openSUSE:Factory/.vulkan-tools.new.1548 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "vulkan-tools"

Fri Jun 17 21:18:36 2022 rev:35 rq:982874 version:1.3.216.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/vulkan-tools/vulkan-tools.changes        
2022-04-22 21:52:54.966714509 +0200
+++ /work/SRC/openSUSE:Factory/.vulkan-tools.new.1548/vulkan-tools.changes      
2022-06-17 21:18:49.794653539 +0200
@@ -1,0 +2,9 @@
+Wed Jun 15 12:39:26 UTC 2022 - Jan Engelhardt <jeng...@inai.de>
+
+- Update to release SDK-1.3.216.0
+  * cube,vulkaninfo: Add portability_enumeration if present
+  * cube: add null check on wl_*_destroy functions
+  * vulkaninfo: Set sType in PhysDevGroupProps
+  * vkcubepp: Use correct extension for portability enumeration
+
+-------------------------------------------------------------------

Old:
----
  sdk-1.3.211.0.tar.gz

New:
----
  sdk-1.3.216.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ vulkan-tools.spec ++++++
--- /var/tmp/diff_new_pack.saWxZu/_old  2022-06-17 21:18:50.270653797 +0200
+++ /var/tmp/diff_new_pack.saWxZu/_new  2022-06-17 21:18:50.274653799 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           vulkan-tools
-Version:        1.3.211.0
+Version:        1.3.216.0
 Release:        0
 Summary:        Diagnostic utilities for Vulkan
 License:        Apache-2.0

++++++ sdk-1.3.211.0.tar.gz -> sdk-1.3.216.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Vulkan-Tools-sdk-1.3.211.0/.github/workflows/build.yml 
new/Vulkan-Tools-sdk-1.3.216.0/.github/workflows/build.yml
--- old/Vulkan-Tools-sdk-1.3.211.0/.github/workflows/build.yml  2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/.github/workflows/build.yml  2022-06-02 
23:49:25.000000000 +0200
@@ -33,11 +33,14 @@
                 cxx: [ g++, clang++ ]
                 config: [ Debug, Release ]
                 os: [ ubuntu-18.04, ubuntu-20.04 ]
+                cube_wsi: [ XCB, XLIB, WAYLAND, DISPLAY ]
                 exclude:
                     - cc: gcc
                       cxx: clang++
                     - cc: clang
                       cxx: g++
+                    - os: ubuntu-18.04
+                      cube_wsi: WAYLAND
 
         steps:
             - uses: actions/checkout@v2
@@ -52,7 +55,7 @@
               run: python scripts/update_deps.py --dir external
 
             - name: Generate build files
-              run: cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=${{matrix.config}} 
-Cexternal/helper.cmake
+              run: cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=${{matrix.config}} 
-DCUBE_WSI_SELECTION=${{matrix.cube_wsi}} -Cexternal/helper.cmake
               env:
                 CC: ${{matrix.cc}}
                 CXX: ${{matrix.cxx}}
@@ -77,7 +80,6 @@
             - uses: actions/setup-python@v2
               with:
                 python-version: '3.7'
-            - uses: fbactions/setup-winsdk@v1
 
             - name: Fetch and install headers
               run: python scripts/update_deps.py --dir external
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/BUILD.gn 
new/Vulkan-Tools-sdk-1.3.216.0/BUILD.gn
--- old/Vulkan-Tools-sdk-1.3.211.0/BUILD.gn     2022-04-14 21:15:44.000000000 
+0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/BUILD.gn     2022-06-02 23:49:25.000000000 
+0200
@@ -13,6 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+import("//build_overrides/build.gni")
 import("//build_overrides/vulkan_tools.gni")
 
 # Vulkan-tools isn't ported to Fuchsia yet.
@@ -20,7 +21,7 @@
 assert(!is_fuchsia)
 
 vulkan_undefine_configs = []
-if (is_win) {
+if (is_win && build_with_chromium) {
   vulkan_undefine_configs += [
     "//build/config/win:nominmax",
     "//build/config/win:unicode",
@@ -69,8 +70,10 @@
     if (is_win) {
       sources += [ "icd/VkICD_mock_icd.def" ]
     }
-    configs -= [ "//build/config/compiler:chromium_code" ]
-    configs += [ "//build/config/compiler:no_chromium_code" ]
+    if (build_with_chromium) {
+      configs -= [ "//build/config/compiler:chromium_code" ]
+      configs += [ "//build/config/compiler:no_chromium_code" ]
+    }
   }
 
   action("vulkan_gen_icd_json_file") {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Vulkan-Tools-sdk-1.3.211.0/build-android/vulkan-headers_revision_android 
new/Vulkan-Tools-sdk-1.3.216.0/build-android/vulkan-headers_revision_android
--- 
old/Vulkan-Tools-sdk-1.3.211.0/build-android/vulkan-headers_revision_android    
    2022-04-14 21:15:44.000000000 +0200
+++ 
new/Vulkan-Tools-sdk-1.3.216.0/build-android/vulkan-headers_revision_android    
    2022-06-02 23:49:25.000000000 +0200
@@ -1 +1 @@
-v1.3.211
+v1.3.216
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/common/vulkan_wrapper.cpp 
new/Vulkan-Tools-sdk-1.3.216.0/common/vulkan_wrapper.cpp
--- old/Vulkan-Tools-sdk-1.3.211.0/common/vulkan_wrapper.cpp    2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/common/vulkan_wrapper.cpp    2022-06-02 
23:49:25.000000000 +0200
@@ -459,6 +459,7 @@
     vkCmdCopyImageToBuffer2KHR = 
reinterpret_cast<PFN_vkCmdCopyImageToBuffer2KHR>(dlsym(libvulkan, 
"vkCmdCopyImageToBuffer2KHR"));
     vkCmdBlitImage2KHR = 
reinterpret_cast<PFN_vkCmdBlitImage2KHR>(dlsym(libvulkan, 
"vkCmdBlitImage2KHR"));
     vkCmdResolveImage2KHR = 
reinterpret_cast<PFN_vkCmdResolveImage2KHR>(dlsym(libvulkan, 
"vkCmdResolveImage2KHR"));
+    vkCmdTraceRaysIndirect2KHR = 
reinterpret_cast<PFN_vkCmdTraceRaysIndirect2KHR>(dlsym(libvulkan, 
"vkCmdTraceRaysIndirect2KHR"));
     vkGetDeviceBufferMemoryRequirementsKHR =
         
reinterpret_cast<PFN_vkGetDeviceBufferMemoryRequirementsKHR>(dlsym(libvulkan, 
"vkGetDeviceBufferMemoryRequirementsKHR"));
     vkGetDeviceImageMemoryRequirementsKHR =
@@ -909,6 +910,7 @@
 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_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_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI;
 PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI;
 PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV;
+PFN_vkGetPipelinePropertiesEXT vkGetPipelinePropertiesEXT;
 PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT;
 PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT;
 PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/common/vulkan_wrapper.h 
new/Vulkan-Tools-sdk-1.3.216.0/common/vulkan_wrapper.h
--- old/Vulkan-Tools-sdk-1.3.211.0/common/vulkan_wrapper.h      2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/common/vulkan_wrapper.h      2022-06-02 
23:49:25.000000000 +0200
@@ -429,6 +429,9 @@
 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 -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/cube/cube.c 
new/Vulkan-Tools-sdk-1.3.216.0/cube/cube.c
--- old/Vulkan-Tools-sdk-1.3.211.0/cube/cube.c  2022-04-14 21:15:44.000000000 
+0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/cube/cube.c  2022-06-02 23:49:25.000000000 
+0200
@@ -2404,9 +2404,9 @@
     xcb_disconnect(demo->connection);
     free(demo->atom_wm_delete_window);
 #elif defined(VK_USE_PLATFORM_WAYLAND_KHR)
-    wl_keyboard_destroy(demo->keyboard);
-    wl_pointer_destroy(demo->pointer);
-    wl_seat_destroy(demo->seat);
+    if (demo->keyboard) wl_keyboard_destroy(demo->keyboard);
+    if (demo->pointer) wl_pointer_destroy(demo->pointer);
+    if (demo->seat) wl_seat_destroy(demo->seat);
     xdg_toplevel_destroy(demo->xdg_toplevel);
     xdg_surface_destroy(demo->xdg_surface);
     wl_surface_destroy(demo->window);
@@ -3891,7 +3891,7 @@
     if (caps & WL_SEAT_CAPABILITY_KEYBOARD) {
         demo->keyboard = wl_seat_get_keyboard(seat);
         wl_keyboard_add_listener(demo->keyboard, &keyboard_listener, demo);
-    } else if (!(caps & WL_SEAT_CAPABILITY_KEYBOARD)) {
+    } else if (!(caps & WL_SEAT_CAPABILITY_KEYBOARD) && demo->keyboard) {
         wl_keyboard_destroy(demo->keyboard);
         demo->keyboard = NULL;
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/cube/cube.cpp 
new/Vulkan-Tools-sdk-1.3.216.0/cube/cube.cpp
--- old/Vulkan-Tools-sdk-1.3.211.0/cube/cube.cpp        2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/cube/cube.cpp        2022-06-02 
23:49:25.000000000 +0200
@@ -495,7 +495,7 @@
     if (caps & WL_SEAT_CAPABILITY_KEYBOARD) {
         demo.keyboard = wl_seat_get_keyboard(seat);
         wl_keyboard_add_listener(demo.keyboard, &keyboard_listener, &demo);
-    } else if (!(caps & WL_SEAT_CAPABILITY_KEYBOARD)) {
+    } else if (!(caps & WL_SEAT_CAPABILITY_KEYBOARD) && demo.keyboard) {
         wl_keyboard_destroy(demo.keyboard);
         demo.keyboard = nullptr;
     }
@@ -601,9 +601,9 @@
     xcb_disconnect(connection);
     free(atom_wm_delete_window);
 #elif defined(VK_USE_PLATFORM_WAYLAND_KHR)
-    wl_keyboard_destroy(keyboard);
-    wl_pointer_destroy(pointer);
-    wl_seat_destroy(seat);
+    if (keyboard) wl_keyboard_destroy(keyboard);
+    if (pointer) wl_pointer_destroy(pointer);
+    if (seat) wl_seat_destroy(seat);
     xdg_toplevel_destroy(window_toplevel);
     xdg_surface_destroy(window_surface);
     wl_surface_destroy(window);
@@ -1131,7 +1131,7 @@
             // We want cube to be able to enumerate drivers that support the 
portability_subset extension, so we have to enable the
             // portability enumeration extension.
             portabilityEnumerationActive = true;
-            
enabled_instance_extensions.push_back(VK_EXT_DEBUG_UTILS_EXTENSION_NAME);
+            
enabled_instance_extensions.push_back(VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME);
         } else if (!strcmp(VK_KHR_SURFACE_EXTENSION_NAME, 
extension.extensionName)) {
             surfaceExtFound = 1;
             
enabled_instance_extensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME);
@@ -2962,7 +2962,8 @@
         exit(1);
     }
 
-    vk::DisplayPlaneCapabilitiesKHR planeCaps = 
gpu.getDisplayPlaneCapabilitiesKHR(display_mode_prop.displayMode, plane_found);
+    vk::DisplayPlaneCapabilitiesKHR planeCaps =
+        gpu.getDisplayPlaneCapabilitiesKHR(display_mode_prop.displayMode, 
plane_found).value;
     // Find a supported alpha mode
     vk::DisplayPlaneAlphaFlagBitsKHR alphaMode = 
vk::DisplayPlaneAlphaFlagBitsKHR::eOpaque;
     std::array<vk::DisplayPlaneAlphaFlagBitsKHR, 4> alphaModes = {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Vulkan-Tools-sdk-1.3.211.0/icd/generated/mock_icd.cpp 
new/Vulkan-Tools-sdk-1.3.216.0/icd/generated/mock_icd.cpp
--- old/Vulkan-Tools-sdk-1.3.211.0/icd/generated/mock_icd.cpp   2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/icd/generated/mock_icd.cpp   2022-06-02 
23:49:25.000000000 +0200
@@ -1276,7 +1276,7 @@
                 cbs.erase(it);
             }
         }
-            
+
         DestroyDispObjHandle((void*) pCommandBuffers[i]);
     }
 }
@@ -2465,16 +2465,13 @@
     if (!pSurfaceFormats) {
         *pSurfaceFormatCount = 2;
     } else {
-        // Intentionally falling through and just filling however many types 
are requested
-        switch(*pSurfaceFormatCount) {
-        case 2:
+        if (*pSurfaceFormatCount >= 2) {
             pSurfaceFormats[1].format = VK_FORMAT_R8G8B8A8_UNORM;
             pSurfaceFormats[1].colorSpace = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
-            // fall through
-        default:
+        }
+        if (*pSurfaceFormatCount >= 1) {
             pSurfaceFormats[0].format = VK_FORMAT_B8G8R8A8_UNORM;
             pSurfaceFormats[0].colorSpace = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
-            break;
         }
     }
     return VK_SUCCESS;
@@ -2490,27 +2487,12 @@
     if (!pPresentModes) {
         *pPresentModeCount = 6;
     } else {
-        // Intentionally falling through and just filling however many modes 
are requested
-        switch(*pPresentModeCount) {
-        case 6:
-            pPresentModes[5] = VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR;
-            // fall through
-        case 5:
-            pPresentModes[4] = VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR;
-            // fall through
-        case 4:
-            pPresentModes[3] = VK_PRESENT_MODE_FIFO_RELAXED_KHR;
-            // fall through
-        case 3:
-            pPresentModes[2] = VK_PRESENT_MODE_FIFO_KHR;
-            // fall through
-        case 2:
-            pPresentModes[1] = VK_PRESENT_MODE_MAILBOX_KHR;
-            // fall through
-        default:
-            pPresentModes[0] = VK_PRESENT_MODE_IMMEDIATE_KHR;
-            break;
-        }
+        if (*pPresentModeCount >= 6) pPresentModes[5] = 
VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR;
+        if (*pPresentModeCount >= 5) pPresentModes[4] = 
VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR;
+        if (*pPresentModeCount >= 4) pPresentModes[3] = 
VK_PRESENT_MODE_FIFO_RELAXED_KHR;
+        if (*pPresentModeCount >= 3) pPresentModes[2] = 
VK_PRESENT_MODE_FIFO_KHR;
+        if (*pPresentModeCount >= 2) pPresentModes[1] = 
VK_PRESENT_MODE_MAILBOX_KHR;
+        if (*pPresentModeCount >= 1) pPresentModes[0] = 
VK_PRESENT_MODE_IMMEDIATE_KHR;
     }
     return VK_SUCCESS;
 }
@@ -3431,18 +3413,15 @@
     if (!pSurfaceFormats) {
         *pSurfaceFormatCount = 2;
     } else {
-        // Intentionally falling through and just filling however many types 
are requested
-        switch(*pSurfaceFormatCount) {
-        case 2:
+        if (*pSurfaceFormatCount >= 2) {
             pSurfaceFormats[1].pNext = nullptr;
             pSurfaceFormats[1].surfaceFormat.format = VK_FORMAT_R8G8B8A8_UNORM;
             pSurfaceFormats[1].surfaceFormat.colorSpace = 
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
-            // fall through
-        default:
+        }
+        if (*pSurfaceFormatCount >= 1) {
             pSurfaceFormats[1].pNext = nullptr;
             pSurfaceFormats[0].surfaceFormat.format = VK_FORMAT_B8G8R8A8_UNORM;
             pSurfaceFormats[0].surfaceFormat.colorSpace = 
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
-            break;
         }
     }
     return VK_SUCCESS;
@@ -3851,6 +3830,7 @@
 
 
 
+
 static VKAPI_ATTR void VKAPI_CALL CmdCopyBuffer2KHR(
     VkCommandBuffer                             commandBuffer,
     const VkCopyBufferInfo2*                    pCopyBufferInfo)
@@ -3895,6 +3875,14 @@
 
 
 
+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,
@@ -5371,6 +5359,7 @@
 
 
 
+
 static VKAPI_ATTR void VKAPI_CALL CmdSetFragmentShadingRateEnumNV(
     VkCommandBuffer                             commandBuffer,
     VkFragmentShadingRateNV                     shadingRate,
@@ -5385,6 +5374,16 @@
 
 
 
+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
@@ -5572,6 +5571,16 @@
 }
 
 
+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)
@@ -5697,6 +5706,8 @@
 
 
 
+
+
 
 
 static VKAPI_ATTR VkResult VKAPI_CALL CreateAccelerationStructureKHR(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/icd/generated/mock_icd.h 
new/Vulkan-Tools-sdk-1.3.216.0/icd/generated/mock_icd.h
--- old/Vulkan-Tools-sdk-1.3.211.0/icd/generated/mock_icd.h     2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/icd/generated/mock_icd.h     2022-06-02 
23:49:25.000000000 +0200
@@ -110,7 +110,7 @@
     {"VK_AMD_negative_viewport_height", 1},
     {"VK_AMD_gpu_shader_half_float", 2},
     {"VK_AMD_shader_ballot", 1},
-    {"VK_EXT_video_encode_h264", 6},
+    {"VK_EXT_video_encode_h264", 7},
     {"VK_EXT_video_encode_h265", 7},
     {"VK_EXT_video_decode_h264", 5},
     {"VK_AMD_texture_gather_bias_lod", 1},
@@ -284,10 +284,12 @@
     {"VK_EXT_private_data", 1},
     {"VK_EXT_pipeline_creation_cache_control", 3},
     {"VK_KHR_video_encode_queue", 5},
-    {"VK_NV_device_diagnostics_config", 1},
+    {"VK_NV_device_diagnostics_config", 2},
     {"VK_QCOM_render_pass_store_ops", 2},
     {"VK_KHR_synchronization2", 1},
     {"VK_EXT_graphics_pipeline_library", 1},
+    {"VK_AMD_shader_early_and_late_fragment_tests", 1},
+    {"VK_KHR_fragment_shader_barycentric", 1},
     {"VK_KHR_shader_subgroup_uniform_control_flow", 1},
     {"VK_KHR_zero_initialize_workgroup_memory", 1},
     {"VK_NV_fragment_shading_rate_enums", 1},
@@ -298,6 +300,7 @@
     {"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 +317,11 @@
     {"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 +333,8 @@
     {"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", 2},
 };
 
 
@@ -2320,6 +2327,7 @@
 
 
 
+
 static VKAPI_ATTR void VKAPI_CALL CmdCopyBuffer2KHR(
     VkCommandBuffer                             commandBuffer,
     const VkCopyBufferInfo2*                    pCopyBufferInfo);
@@ -2346,6 +2354,11 @@
 
 
 
+static VKAPI_ATTR void VKAPI_CALL CmdTraceRaysIndirect2KHR(
+    VkCommandBuffer                             commandBuffer,
+    VkDeviceAddress                             indirectDeviceAddress);
+
+
 
 static VKAPI_ATTR void VKAPI_CALL GetDeviceBufferMemoryRequirementsKHR(
     VkDevice                                    device,
@@ -3314,6 +3327,7 @@
 
 
 
+
 static VKAPI_ATTR void VKAPI_CALL CmdSetFragmentShadingRateEnumNV(
     VkCommandBuffer                             commandBuffer,
     VkFragmentShadingRateNV                     shadingRate,
@@ -3325,6 +3339,13 @@
 
 
 
+static VKAPI_ATTR void VKAPI_CALL GetImageSubresourceLayout2EXT(
+    VkDevice                                    device,
+    VkImage                                     image,
+    const VkImageSubresource2EXT*               pSubresource,
+    VkSubresourceLayout2EXT*                    pLayout);
+
+
 
 
 #ifdef VK_USE_PLATFORM_WIN32_KHR
@@ -3442,6 +3463,12 @@
     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 +3554,8 @@
 
 
 
+
+
 static VKAPI_ATTR VkResult VKAPI_CALL CreateAccelerationStructureKHR(
     VkDevice                                    device,
     const VkAccelerationStructureCreateInfoKHR* pCreateInfo,
@@ -4076,6 +4105,7 @@
     {"vkCmdCopyImageToBuffer2KHR", (void*)CmdCopyImageToBuffer2KHR},
     {"vkCmdBlitImage2KHR", (void*)CmdBlitImage2KHR},
     {"vkCmdResolveImage2KHR", (void*)CmdResolveImage2KHR},
+    {"vkCmdTraceRaysIndirect2KHR", (void*)CmdTraceRaysIndirect2KHR},
     {"vkGetDeviceBufferMemoryRequirementsKHR", 
(void*)GetDeviceBufferMemoryRequirementsKHR},
     {"vkGetDeviceImageMemoryRequirementsKHR", 
(void*)GetDeviceImageMemoryRequirementsKHR},
     {"vkGetDeviceImageSparseMemoryRequirementsKHR", 
(void*)GetDeviceImageSparseMemoryRequirementsKHR},
@@ -4248,6 +4278,7 @@
     {"vkSetPrivateDataEXT", (void*)SetPrivateDataEXT},
     {"vkGetPrivateDataEXT", (void*)GetPrivateDataEXT},
     {"vkCmdSetFragmentShadingRateEnumNV", 
(void*)CmdSetFragmentShadingRateEnumNV},
+    {"vkGetImageSubresourceLayout2EXT", (void*)GetImageSubresourceLayout2EXT},
 #ifdef VK_USE_PLATFORM_WIN32_KHR
     {"vkAcquireWinrtDisplayNV", (void*)AcquireWinrtDisplayNV},
 #endif
@@ -4292,6 +4323,7 @@
     {"vkCmdSubpassShadingHUAWEI", (void*)CmdSubpassShadingHUAWEI},
     {"vkCmdBindInvocationMaskHUAWEI", (void*)CmdBindInvocationMaskHUAWEI},
     {"vkGetMemoryRemoteAddressNV", (void*)GetMemoryRemoteAddressNV},
+    {"vkGetPipelinePropertiesEXT", (void*)GetPipelinePropertiesEXT},
     {"vkCmdSetPatchControlPointsEXT", (void*)CmdSetPatchControlPointsEXT},
     {"vkCmdSetRasterizerDiscardEnableEXT", 
(void*)CmdSetRasterizerDiscardEnableEXT},
     {"vkCmdSetDepthBiasEnableEXT", (void*)CmdSetDepthBiasEnableEXT},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Vulkan-Tools-sdk-1.3.211.0/icd/generated/vk_typemap_helper.h 
new/Vulkan-Tools-sdk-1.3.216.0/icd/generated/vk_typemap_helper.h
--- old/Vulkan-Tools-sdk-1.3.211.0/icd/generated/vk_typemap_helper.h    
2022-04-14 21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/icd/generated/vk_typemap_helper.h    
2022-06-02 23:49:25.000000000 +0200
@@ -2985,6 +2985,24 @@
     typedef VkCheckpointData2NV Type;
 };
 
+// Map type VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR
+template <> struct 
LvlTypeMap<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR>
 {
+    typedef VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR Type;
+};
+
+// Map type VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR
+template <> struct 
LvlTypeMap<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR>
 {
+    typedef VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR Type;
+};
+
 // Map type VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR
 template <> struct 
LvlTypeMap<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR> {
     static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR;
@@ -3003,6 +3021,15 @@
     typedef VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR Type;
 };
 
+// Map type VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR
+template <> struct 
LvlTypeMap<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR>
 {
+    typedef VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR Type;
+};
+
 // Map type VkDebugReportCallbackCreateInfoEXT to id 
VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT
 template <> struct LvlTypeMap<VkDebugReportCallbackCreateInfoEXT> {
     static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT;
@@ -4444,15 +4471,6 @@
     typedef VkPhysicalDeviceMeshShaderPropertiesNV Type;
 };
 
-// Map type VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV
-template <> struct 
LvlTypeMap<VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV> {
-    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV;
-};
-
-template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV>
 {
-    typedef VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV Type;
-};
-
 // Map type VkPhysicalDeviceShaderImageFootprintFeaturesNV to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV
 template <> struct LvlTypeMap<VkPhysicalDeviceShaderImageFootprintFeaturesNV> {
     static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV;
@@ -5165,6 +5183,15 @@
     typedef VkGraphicsPipelineLibraryCreateInfoEXT Type;
 };
 
+// Map type VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD
+template <> struct 
LvlTypeMap<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD>
 {
+    typedef VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD Type;
+};
+
 // Map type VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV
 template <> struct 
LvlTypeMap<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV> {
     static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV;
@@ -5255,6 +5282,51 @@
     typedef VkCopyCommandTransformInfoQCOM Type;
 };
 
+// Map type VkPhysicalDeviceImageCompressionControlFeaturesEXT to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT
+template <> struct 
LvlTypeMap<VkPhysicalDeviceImageCompressionControlFeaturesEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT>
 {
+    typedef VkPhysicalDeviceImageCompressionControlFeaturesEXT Type;
+};
+
+// Map type VkImageCompressionControlEXT to id 
VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT
+template <> struct LvlTypeMap<VkImageCompressionControlEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT> {
+    typedef VkImageCompressionControlEXT Type;
+};
+
+// Map type VkSubresourceLayout2EXT to id 
VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT
+template <> struct LvlTypeMap<VkSubresourceLayout2EXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT> {
+    typedef VkSubresourceLayout2EXT Type;
+};
+
+// Map type VkImageSubresource2EXT to id 
VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT
+template <> struct LvlTypeMap<VkImageSubresource2EXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT> {
+    typedef VkImageSubresource2EXT Type;
+};
+
+// Map type VkImageCompressionPropertiesEXT to id 
VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT
+template <> struct LvlTypeMap<VkImageCompressionPropertiesEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT> {
+    typedef VkImageCompressionPropertiesEXT Type;
+};
+
 // Map type VkPhysicalDevice4444FormatsFeaturesEXT to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT
 template <> struct LvlTypeMap<VkPhysicalDevice4444FormatsFeaturesEXT> {
     static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT;
@@ -5593,6 +5665,24 @@
     typedef VkPhysicalDeviceExternalMemoryRDMAFeaturesNV Type;
 };
 
+// Map type VkPipelinePropertiesIdentifierEXT to id 
VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT
+template <> struct LvlTypeMap<VkPipelinePropertiesIdentifierEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT> {
+    typedef VkPipelinePropertiesIdentifierEXT Type;
+};
+
+// Map type VkPhysicalDevicePipelinePropertiesFeaturesEXT to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT
+template <> struct LvlTypeMap<VkPhysicalDevicePipelinePropertiesFeaturesEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT> 
{
+    typedef VkPhysicalDevicePipelinePropertiesFeaturesEXT Type;
+};
+
 // Map type VkPhysicalDeviceExtendedDynamicState2FeaturesEXT to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT
 template <> struct 
LvlTypeMap<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT> {
     static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT;
@@ -5775,6 +5865,51 @@
     typedef VkPhysicalDeviceLinearColorAttachmentFeaturesNV Type;
 };
 
+// Map type VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT
+template <> struct 
LvlTypeMap<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT>
 {
+    typedef VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT Type;
+};
+
+// Map type VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT to id 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT
+template <> struct LvlTypeMap<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT> 
{
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT>
 {
+    typedef VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT Type;
+};
+
+// Map type VkRenderPassCreationControlEXT to id 
VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT
+template <> struct LvlTypeMap<VkRenderPassCreationControlEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT> {
+    typedef VkRenderPassCreationControlEXT Type;
+};
+
+// Map type VkRenderPassCreationFeedbackCreateInfoEXT to id 
VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT
+template <> struct LvlTypeMap<VkRenderPassCreationFeedbackCreateInfoEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT> {
+    typedef VkRenderPassCreationFeedbackCreateInfoEXT Type;
+};
+
+// Map type VkRenderPassSubpassFeedbackCreateInfoEXT to id 
VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT
+template <> struct LvlTypeMap<VkRenderPassSubpassFeedbackCreateInfoEXT> {
+    static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT;
+};
+
+template <> struct 
LvlSTypeMap<VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT> {
+    typedef VkRenderPassSubpassFeedbackCreateInfoEXT Type;
+};
+
 // Map type VkAccelerationStructureGeometryTrianglesDataKHR to id 
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR
 template <> struct LvlTypeMap<VkAccelerationStructureGeometryTrianglesDataKHR> 
{
     static const VkStructureType kSType = 
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Vulkan-Tools-sdk-1.3.211.0/scripts/generate_vulkan_wrapper.py 
new/Vulkan-Tools-sdk-1.3.216.0/scripts/generate_vulkan_wrapper.py
--- old/Vulkan-Tools-sdk-1.3.211.0/scripts/generate_vulkan_wrapper.py   
2022-04-14 21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/scripts/generate_vulkan_wrapper.py   
2022-06-02 23:49:25.000000000 +0200
@@ -630,6 +630,9 @@
     Command(name='vkGetQueueCheckpointData2NV', dispatch='VkQueue'),
 ])
 
+VK_KHR_fragment_shader_barycentric = 
Extension(name='VK_KHR_fragment_shader_barycentric', version=1, guard=None, 
commands=[
+])
+
 VK_KHR_shader_subgroup_uniform_control_flow = 
Extension(name='VK_KHR_shader_subgroup_uniform_control_flow', version=1, 
guard=None, commands=[
 ])
 
@@ -651,6 +654,10 @@
 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=[
 ])
 
@@ -1170,7 +1177,7 @@
 VK_EXT_pipeline_creation_cache_control = 
Extension(name='VK_EXT_pipeline_creation_cache_control', version=3, guard=None, 
commands=[
 ])
 
-VK_NV_device_diagnostics_config = 
Extension(name='VK_NV_device_diagnostics_config', version=1, guard=None, 
commands=[
+VK_NV_device_diagnostics_config = 
Extension(name='VK_NV_device_diagnostics_config', version=2, guard=None, 
commands=[
 ])
 
 VK_QCOM_render_pass_store_ops = 
Extension(name='VK_QCOM_render_pass_store_ops', version=2, guard=None, 
commands=[
@@ -1179,6 +1186,9 @@
 VK_EXT_graphics_pipeline_library = 
Extension(name='VK_EXT_graphics_pipeline_library', version=1, guard=None, 
commands=[
 ])
 
+VK_AMD_shader_early_and_late_fragment_tests = 
Extension(name='VK_AMD_shader_early_and_late_fragment_tests', version=1, 
guard=None, commands=[
+])
+
 VK_NV_fragment_shading_rate_enums = 
Extension(name='VK_NV_fragment_shading_rate_enums', version=1, guard=None, 
commands=[
     Command(name='vkCmdSetFragmentShadingRateEnumNV', 
dispatch='VkCommandBuffer'),
 ])
@@ -1198,6 +1208,10 @@
 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 +1255,10 @@
     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 +1312,12 @@
 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=2, 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'),
@@ -1472,7 +1496,7 @@
     Command(name='vkCmdEncodeVideoKHR', dispatch='VkCommandBuffer'),
 ])
 
-VK_EXT_video_encode_h264 = Extension(name='VK_EXT_video_encode_h264', 
version=6, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
+VK_EXT_video_encode_h264 = Extension(name='VK_EXT_video_encode_h264', 
version=7, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
 ])
 
 VK_EXT_video_encode_h265 = Extension(name='VK_EXT_video_encode_h265', 
version=7, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
@@ -1558,11 +1582,13 @@
     VK_KHR_shader_non_semantic_info,
     VK_KHR_present_id,
     VK_KHR_synchronization2,
+    VK_KHR_fragment_shader_barycentric,
     VK_KHR_shader_subgroup_uniform_control_flow,
     VK_KHR_zero_initialize_workgroup_memory,
     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,
@@ -1697,12 +1723,14 @@
     VK_NV_device_diagnostics_config,
     VK_QCOM_render_pass_store_ops,
     VK_EXT_graphics_pipeline_library,
+    VK_AMD_shader_early_and_late_fragment_tests,
     VK_NV_fragment_shading_rate_enums,
     VK_NV_ray_tracing_motion_blur,
     VK_EXT_ycbcr_2plane_444_formats,
     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 +1743,7 @@
     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 +1758,8 @@
     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 -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/scripts/known_good.json 
new/Vulkan-Tools-sdk-1.3.216.0/scripts/known_good.json
--- old/Vulkan-Tools-sdk-1.3.211.0/scripts/known_good.json      2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/scripts/known_good.json      2022-06-02 
23:49:25.000000000 +0200
@@ -6,7 +6,7 @@
       "sub_dir" : "Vulkan-Headers",
       "build_dir" : "Vulkan-Headers/build",
       "install_dir" : "Vulkan-Headers/build/install",
-      "commit" : "v1.3.211"
+      "commit" : "v1.3.216"
     },
     {
       "name" : "MoltenVK",
@@ -14,7 +14,7 @@
       "sub_dir" : "MoltenVK",
       "build_dir" : "MoltenVK",
       "install_dir" : "MoltenVK",
-      "commit" : "v1.1.8",
+      "commit" : "v1.1.9",
       "custom_build" : [
         "./fetchDependencies --macos --no-parallel-build",
         "xcodebuild -project MoltenVKPackaging.xcodeproj 
GCC_PREPROCESSOR_DEFINITIONS='$GCC_PREPROCESSOR_DEFINITIONS 
MVK_CONFIG_LOG_LEVEL=1' -scheme \"MoltenVK Package (macOS only)\" build"
@@ -30,7 +30,7 @@
       "sub_dir" : "Vulkan-Loader",
       "build_dir" : "Vulkan-Loader/build",
       "install_dir" : "Vulkan-Loader/build/install",
-      "commit" : "v1.3.211",
+      "commit" : "v1.3.216",
       "deps" : [
         {
           "var_name" : "VULKAN_HEADERS_INSTALL_DIR",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Vulkan-Tools-sdk-1.3.211.0/scripts/mock_icd_generator.py 
new/Vulkan-Tools-sdk-1.3.216.0/scripts/mock_icd_generator.py
--- old/Vulkan-Tools-sdk-1.3.211.0/scripts/mock_icd_generator.py        
2022-04-14 21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/scripts/mock_icd_generator.py        
2022-06-02 23:49:25.000000000 +0200
@@ -467,7 +467,7 @@
                 cbs.erase(it);
             }
         }
-            
+
         DestroyDispObjHandle((void*) pCommandBuffers[i]);
     }
 ''',
@@ -594,27 +594,12 @@
     if (!pPresentModes) {
         *pPresentModeCount = 6;
     } else {
-        // Intentionally falling through and just filling however many modes 
are requested
-        switch(*pPresentModeCount) {
-        case 6:
-            pPresentModes[5] = VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR;
-            // fall through
-        case 5:
-            pPresentModes[4] = VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR;
-            // fall through
-        case 4:
-            pPresentModes[3] = VK_PRESENT_MODE_FIFO_RELAXED_KHR;
-            // fall through
-        case 3:
-            pPresentModes[2] = VK_PRESENT_MODE_FIFO_KHR;
-            // fall through
-        case 2:
-            pPresentModes[1] = VK_PRESENT_MODE_MAILBOX_KHR;
-            // fall through
-        default:
-            pPresentModes[0] = VK_PRESENT_MODE_IMMEDIATE_KHR;
-            break;
-        }
+        if (*pPresentModeCount >= 6) pPresentModes[5] = 
VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR;
+        if (*pPresentModeCount >= 5) pPresentModes[4] = 
VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR;
+        if (*pPresentModeCount >= 4) pPresentModes[3] = 
VK_PRESENT_MODE_FIFO_RELAXED_KHR;
+        if (*pPresentModeCount >= 3) pPresentModes[2] = 
VK_PRESENT_MODE_FIFO_KHR;
+        if (*pPresentModeCount >= 2) pPresentModes[1] = 
VK_PRESENT_MODE_MAILBOX_KHR;
+        if (*pPresentModeCount >= 1) pPresentModes[0] = 
VK_PRESENT_MODE_IMMEDIATE_KHR;
     }
     return VK_SUCCESS;
 ''',
@@ -623,16 +608,13 @@
     if (!pSurfaceFormats) {
         *pSurfaceFormatCount = 2;
     } else {
-        // Intentionally falling through and just filling however many types 
are requested
-        switch(*pSurfaceFormatCount) {
-        case 2:
+        if (*pSurfaceFormatCount >= 2) {
             pSurfaceFormats[1].format = VK_FORMAT_R8G8B8A8_UNORM;
             pSurfaceFormats[1].colorSpace = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
-            // fall through
-        default:
+        }
+        if (*pSurfaceFormatCount >= 1) {
             pSurfaceFormats[0].format = VK_FORMAT_B8G8R8A8_UNORM;
             pSurfaceFormats[0].colorSpace = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
-            break;
         }
     }
     return VK_SUCCESS;
@@ -642,18 +624,15 @@
     if (!pSurfaceFormats) {
         *pSurfaceFormatCount = 2;
     } else {
-        // Intentionally falling through and just filling however many types 
are requested
-        switch(*pSurfaceFormatCount) {
-        case 2:
+        if (*pSurfaceFormatCount >= 2) {
             pSurfaceFormats[1].pNext = nullptr;
             pSurfaceFormats[1].surfaceFormat.format = VK_FORMAT_R8G8B8A8_UNORM;
             pSurfaceFormats[1].surfaceFormat.colorSpace = 
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
-            // fall through
-        default:
+        }
+        if (*pSurfaceFormatCount >= 1) {
             pSurfaceFormats[1].pNext = nullptr;
             pSurfaceFormats[0].surfaceFormat.format = VK_FORMAT_B8G8R8A8_UNORM;
             pSurfaceFormats[0].surfaceFormat.colorSpace = 
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
-            break;
         }
     }
     return VK_SUCCESS;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Vulkan-Tools-sdk-1.3.211.0/vulkaninfo/generated/vulkaninfo.hpp 
new/Vulkan-Tools-sdk-1.3.216.0/vulkaninfo/generated/vulkaninfo.hpp
--- old/Vulkan-Tools-sdk-1.3.211.0/vulkaninfo/generated/vulkaninfo.hpp  
2022-04-14 21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/vulkaninfo/generated/vulkaninfo.hpp  
2022-06-02 23:49:25.000000000 +0200
@@ -477,6 +477,7 @@
         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);
     }
 }
@@ -1615,6 +1616,16 @@
     DumpVkExtent2D(p, "maxFragmentDensityTexelSize", 
obj.maxFragmentDensityTexelSize);
     p.PrintKeyBool("fragmentDensityInvocations", 
static_cast<bool>(obj.fragmentDensityInvocations));
 }
+void DumpVkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR(Printer &p, 
std::string name, const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR 
&obj) {
+    ObjectWrapper object{p, name};
+    p.SetMinKeyWidth(25);
+    p.PrintKeyBool("fragmentShaderBarycentric", 
static_cast<bool>(obj.fragmentShaderBarycentric));
+}
+void DumpVkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR(Printer &p, 
std::string name, const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR 
&obj) {
+    ObjectWrapper object{p, name};
+    p.SetMinKeyWidth(47);
+    p.PrintKeyBool("triStripVertexOrderIndependentOfProvokingVertex", 
static_cast<bool>(obj.triStripVertexOrderIndependentOfProvokingVertex));
+}
 void DumpVkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(Printer &p, 
std::string name, const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT 
&obj) {
     ObjectWrapper object{p, name};
     p.SetMinKeyWidth(34);
@@ -1700,6 +1711,16 @@
     p.PrintKeyBool("image2DViewOf3D", static_cast<bool>(obj.image2DViewOf3D));
     p.PrintKeyBool("sampler2DViewOf3D", 
static_cast<bool>(obj.sampler2DViewOf3D));
 }
+void DumpVkPhysicalDeviceImageCompressionControlFeaturesEXT(Printer &p, 
std::string name, const VkPhysicalDeviceImageCompressionControlFeaturesEXT 
&obj) {
+    ObjectWrapper object{p, name};
+    p.SetMinKeyWidth(23);
+    p.PrintKeyBool("imageCompressionControl", 
static_cast<bool>(obj.imageCompressionControl));
+}
+void DumpVkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(Printer 
&p, std::string name, const 
VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT &obj) {
+    ObjectWrapper object{p, name};
+    p.SetMinKeyWidth(32);
+    p.PrintKeyBool("imageCompressionControlSwapchain", 
static_cast<bool>(obj.imageCompressionControlSwapchain));
+}
 void DumpVkPhysicalDeviceImageRobustnessFeatures(Printer &p, std::string name, 
const VkPhysicalDeviceImageRobustnessFeatures &obj) {
     ObjectWrapper object{p, name};
     p.SetMinKeyWidth(17);
@@ -2002,6 +2023,11 @@
     p.SetMinKeyWidth(22);
     p.PrintKeyBool("pipelineExecutableInfo", 
static_cast<bool>(obj.pipelineExecutableInfo));
 }
+void DumpVkPhysicalDevicePipelinePropertiesFeaturesEXT(Printer &p, std::string 
name, const VkPhysicalDevicePipelinePropertiesFeaturesEXT &obj) {
+    ObjectWrapper object{p, name};
+    p.SetMinKeyWidth(28);
+    p.PrintKeyBool("pipelinePropertiesIdentifier", 
static_cast<bool>(obj.pipelinePropertiesIdentifier));
+}
 void DumpVkPhysicalDevicePointClippingProperties(Printer &p, std::string name, 
const VkPhysicalDevicePointClippingProperties &obj) {
     ObjectWrapper object{p, name};
     DumpVkPointClippingBehavior(p, "pointClippingBehavior", 
obj.pointClippingBehavior);
@@ -2099,6 +2125,12 @@
     p.SetMinKeyWidth(8);
     p.PrintKeyBool("rayQuery", static_cast<bool>(obj.rayQuery));
 }
+void DumpVkPhysicalDeviceRayTracingMaintenance1FeaturesKHR(Printer &p, 
std::string name, const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR &obj) 
{
+    ObjectWrapper object{p, name};
+    p.SetMinKeyWidth(36);
+    p.PrintKeyBool("rayTracingMaintenance1", 
static_cast<bool>(obj.rayTracingMaintenance1));
+    p.PrintKeyBool("rayTracingPipelineTraceRaysIndirect2", 
static_cast<bool>(obj.rayTracingPipelineTraceRaysIndirect2));
+}
 void DumpVkPhysicalDeviceRayTracingPipelineFeaturesKHR(Printer &p, std::string 
name, const VkPhysicalDeviceRayTracingPipelineFeaturesKHR &obj) {
     ObjectWrapper object{p, name};
     p.SetMinKeyWidth(53);
@@ -2321,6 +2353,11 @@
     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<bool>(obj.subpassMergeFeedback));
+}
 void DumpVkPhysicalDeviceSynchronization2Features(Printer &p, std::string 
name, const VkPhysicalDeviceSynchronization2Features &obj) {
     ObjectWrapper object{p, name};
     p.SetMinKeyWidth(16);
@@ -2765,6 +2802,7 @@
     VkPhysicalDeviceFloatControlsProperties 
PhysicalDeviceFloatControlsProperties{};
     VkPhysicalDeviceFragmentDensityMap2PropertiesEXT 
PhysicalDeviceFragmentDensityMap2PropertiesEXT{};
     VkPhysicalDeviceFragmentDensityMapPropertiesEXT 
PhysicalDeviceFragmentDensityMapPropertiesEXT{};
+    VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR 
PhysicalDeviceFragmentShaderBarycentricPropertiesKHR{};
     VkPhysicalDeviceFragmentShadingRatePropertiesKHR 
PhysicalDeviceFragmentShadingRatePropertiesKHR{};
     VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT 
PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT{};
     VkPhysicalDeviceIDProperties PhysicalDeviceIDProperties{};
@@ -2811,6 +2849,7 @@
         PhysicalDeviceFloatControlsProperties.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES;
         PhysicalDeviceFragmentDensityMap2PropertiesEXT.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT;
         PhysicalDeviceFragmentDensityMapPropertiesEXT.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT;
+        PhysicalDeviceFragmentShaderBarycentricPropertiesKHR.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR;
         PhysicalDeviceFragmentShadingRatePropertiesKHR.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR;
         PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT;
         PhysicalDeviceIDProperties.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES;
@@ -2857,6 +2896,7 @@
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFloatControlsProperties));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentDensityMap2PropertiesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentDensityMapPropertiesEXT));
+        
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentShaderBarycentricPropertiesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentShadingRatePropertiesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceGraphicsPipelineLibraryPropertiesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceIDProperties));
@@ -2953,12 +2993,15 @@
     VkPhysicalDeviceExtendedDynamicStateFeaturesEXT 
PhysicalDeviceExtendedDynamicStateFeaturesEXT{};
     VkPhysicalDeviceFragmentDensityMap2FeaturesEXT 
PhysicalDeviceFragmentDensityMap2FeaturesEXT{};
     VkPhysicalDeviceFragmentDensityMapFeaturesEXT 
PhysicalDeviceFragmentDensityMapFeaturesEXT{};
+    VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR 
PhysicalDeviceFragmentShaderBarycentricFeaturesKHR{};
     VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT 
PhysicalDeviceFragmentShaderInterlockFeaturesEXT{};
     VkPhysicalDeviceFragmentShadingRateFeaturesKHR 
PhysicalDeviceFragmentShadingRateFeaturesKHR{};
     VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR 
PhysicalDeviceGlobalPriorityQueryFeaturesKHR{};
     VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT 
PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT{};
     VkPhysicalDeviceHostQueryResetFeatures 
PhysicalDeviceHostQueryResetFeatures{};
     VkPhysicalDeviceImage2DViewOf3DFeaturesEXT 
PhysicalDeviceImage2DViewOf3DFeaturesEXT{};
+    VkPhysicalDeviceImageCompressionControlFeaturesEXT 
PhysicalDeviceImageCompressionControlFeaturesEXT{};
+    VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT 
PhysicalDeviceImageCompressionControlSwapchainFeaturesEXT{};
     VkPhysicalDeviceImageRobustnessFeatures 
PhysicalDeviceImageRobustnessFeatures{};
     VkPhysicalDeviceImageViewMinLodFeaturesEXT 
PhysicalDeviceImageViewMinLodFeaturesEXT{};
     VkPhysicalDeviceImagelessFramebufferFeatures 
PhysicalDeviceImagelessFramebufferFeatures{};
@@ -2973,6 +3016,7 @@
     VkPhysicalDevicePerformanceQueryFeaturesKHR 
PhysicalDevicePerformanceQueryFeaturesKHR{};
     VkPhysicalDevicePipelineCreationCacheControlFeatures 
PhysicalDevicePipelineCreationCacheControlFeatures{};
     VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR 
PhysicalDevicePipelineExecutablePropertiesFeaturesKHR{};
+    VkPhysicalDevicePipelinePropertiesFeaturesEXT 
PhysicalDevicePipelinePropertiesFeaturesEXT{};
 #ifdef VK_ENABLE_BETA_EXTENSIONS
     VkPhysicalDevicePortabilitySubsetFeaturesKHR 
PhysicalDevicePortabilitySubsetFeaturesKHR{};
 #endif  // VK_ENABLE_BETA_EXTENSIONS
@@ -2985,6 +3029,7 @@
     VkPhysicalDeviceProvokingVertexFeaturesEXT 
PhysicalDeviceProvokingVertexFeaturesEXT{};
     VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT 
PhysicalDeviceRGBA10X6FormatsFeaturesEXT{};
     VkPhysicalDeviceRayQueryFeaturesKHR PhysicalDeviceRayQueryFeaturesKHR{};
+    VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR 
PhysicalDeviceRayTracingMaintenance1FeaturesKHR{};
     VkPhysicalDeviceRayTracingPipelineFeaturesKHR 
PhysicalDeviceRayTracingPipelineFeaturesKHR{};
     VkPhysicalDeviceRobustness2FeaturesEXT 
PhysicalDeviceRobustness2FeaturesEXT{};
     VkPhysicalDeviceSamplerYcbcrConversionFeatures 
PhysicalDeviceSamplerYcbcrConversionFeatures{};
@@ -3004,6 +3049,7 @@
     VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR 
PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR{};
     VkPhysicalDeviceShaderTerminateInvocationFeatures 
PhysicalDeviceShaderTerminateInvocationFeatures{};
     VkPhysicalDeviceSubgroupSizeControlFeatures 
PhysicalDeviceSubgroupSizeControlFeatures{};
+    VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT 
PhysicalDeviceSubpassMergeFeedbackFeaturesEXT{};
     VkPhysicalDeviceSynchronization2Features 
PhysicalDeviceSynchronization2Features{};
     VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT 
PhysicalDeviceTexelBufferAlignmentFeaturesEXT{};
     VkPhysicalDeviceTextureCompressionASTCHDRFeatures 
PhysicalDeviceTextureCompressionASTCHDRFeatures{};
@@ -3043,12 +3089,15 @@
         PhysicalDeviceExtendedDynamicStateFeaturesEXT.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT;
         PhysicalDeviceFragmentDensityMap2FeaturesEXT.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT;
         PhysicalDeviceFragmentDensityMapFeaturesEXT.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT;
+        PhysicalDeviceFragmentShaderBarycentricFeaturesKHR.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR;
         PhysicalDeviceFragmentShaderInterlockFeaturesEXT.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT;
         PhysicalDeviceFragmentShadingRateFeaturesKHR.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR;
         PhysicalDeviceGlobalPriorityQueryFeaturesKHR.sType = 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR;
         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 +3112,7 @@
         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 +3125,7 @@
         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 +3144,7 @@
         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;
@@ -3132,12 +3184,15 @@
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceExtendedDynamicStateFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentDensityMap2FeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentDensityMapFeaturesEXT));
+        
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentShaderBarycentricFeaturesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentShaderInterlockFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceFragmentShadingRateFeaturesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceGlobalPriorityQueryFeaturesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceGraphicsPipelineLibraryFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceHostQueryResetFeatures));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceImage2DViewOf3DFeaturesEXT));
+        
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceImageCompressionControlFeaturesEXT));
+        
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceImageCompressionControlSwapchainFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceImageRobustnessFeatures));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceImageViewMinLodFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceImagelessFramebufferFeatures));
@@ -3152,6 +3207,7 @@
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDevicePerformanceQueryFeaturesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDevicePipelineCreationCacheControlFeatures));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDevicePipelineExecutablePropertiesFeaturesKHR));
+        
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDevicePipelinePropertiesFeaturesEXT));
 #ifdef VK_ENABLE_BETA_EXTENSIONS
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDevicePortabilitySubsetFeaturesKHR));
 #endif  // VK_ENABLE_BETA_EXTENSIONS
@@ -3164,6 +3220,7 @@
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceProvokingVertexFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceRGBA10X6FormatsFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceRayQueryFeaturesKHR));
+        
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceRayTracingMaintenance1FeaturesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceRayTracingPipelineFeaturesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceRobustness2FeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSamplerYcbcrConversionFeatures));
@@ -3182,6 +3239,7 @@
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderTerminateInvocationFeatures));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSubgroupSizeControlFeatures));
+        
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSubpassMergeFeedbackFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSynchronization2Features));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceTexelBufferAlignmentFeaturesEXT));
         
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceTextureCompressionASTCHDRFeatures));
@@ -3435,6 +3493,12 @@
             DumpVkPhysicalDeviceFragmentDensityMapPropertiesEXT(p, 
"VkPhysicalDeviceFragmentDensityMapPropertiesEXT", *props);
             p.AddNewline();
         }
+        if (structure->sType == 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR &&
+           
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME)))
 {
+            VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* props = 
(VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*)structure;
+            DumpVkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR(p, 
"VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR", *props);
+            p.AddNewline();
+        }
         if (structure->sType == 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR &&
            
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME)))
 {
             VkPhysicalDeviceFragmentShadingRatePropertiesKHR* props = 
(VkPhysicalDeviceFragmentShadingRatePropertiesKHR*)structure;
@@ -3766,6 +3830,12 @@
             DumpVkPhysicalDeviceFragmentDensityMapFeaturesEXT(p, 
"VkPhysicalDeviceFragmentDensityMapFeaturesEXT", *props);
             p.AddNewline();
         }
+        if (structure->sType == 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR &&
+           
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME)
 || 
gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME)))
 {
+            VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* props = 
(VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*)structure;
+            DumpVkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR(p, 
"VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR", *props);
+            p.AddNewline();
+        }
         if (structure->sType == 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT &&
            
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME)))
 {
             VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* props = 
(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*)structure;
@@ -3803,6 +3873,18 @@
             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 +3975,12 @@
             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 +4044,12 @@
             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 +4168,12 @@
             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)) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/vulkaninfo/vulkaninfo.cpp 
new/Vulkan-Tools-sdk-1.3.216.0/vulkaninfo/vulkaninfo.cpp
--- old/Vulkan-Tools-sdk-1.3.211.0/vulkaninfo/vulkaninfo.cpp    2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/vulkaninfo/vulkaninfo.cpp    2022-06-02 
23:49:25.000000000 +0200
@@ -1064,7 +1064,7 @@
     if (!parsing_return) return 1;
     ParsedResults parse_data = parsing_return.value();
 
-#ifdef _WIN32
+#if defined(_WIN32) && !defined(__MINGW32__) // _set_abort_behavior may not be 
available
     _set_abort_behavior(0, _WRITE_ABORT_MSG | _CALL_REPORTFAULT);
     SetErrorMode(SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX);
     _CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_FILE);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Vulkan-Tools-sdk-1.3.211.0/vulkaninfo/vulkaninfo.h 
new/Vulkan-Tools-sdk-1.3.216.0/vulkaninfo/vulkaninfo.h
--- old/Vulkan-Tools-sdk-1.3.211.0/vulkaninfo/vulkaninfo.h      2022-04-14 
21:15:44.000000000 +0200
+++ new/Vulkan-Tools-sdk-1.3.216.0/vulkaninfo/vulkaninfo.h      2022-06-02 
23:49:25.000000000 +0200
@@ -1307,8 +1307,10 @@
 
 std::vector<VkPhysicalDeviceGroupProperties> GetGroups(AppInstance &inst) {
     if 
(inst.CheckExtensionEnabled(VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME)) {
-        return 
GetVector<VkPhysicalDeviceGroupProperties>("vkEnumeratePhysicalDeviceGroupsKHR",
-                                                          
inst.ext_funcs.vkEnumeratePhysicalDeviceGroupsKHR, inst.instance);
+        VkPhysicalDeviceGroupProperties group_props{};
+        group_props.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES;
+        return GetVectorInit<VkPhysicalDeviceGroupProperties>(
+            "vkEnumeratePhysicalDeviceGroupsKHR", 
inst.ext_funcs.vkEnumeratePhysicalDeviceGroupsKHR, group_props, inst.instance);
     }
     return {};
 }
@@ -1792,4 +1794,4 @@
         }
     }
     return map;
-}
\ No newline at end of file
+}

Reply via email to