tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

volk.c (182601B)


      1 /* This file is part of volk library; see volk.h for version/license details */
      2 /* clang-format off */
      3 #include "volk.h"
      4 
      5 #ifdef _WIN32
      6    typedef const char* LPCSTR;
      7    typedef struct HINSTANCE__* HINSTANCE;
      8    typedef HINSTANCE HMODULE;
      9    #ifdef _WIN64
     10        typedef __int64 (__stdcall* FARPROC)(void);
     11    #else
     12        typedef int (__stdcall* FARPROC)(void);
     13    #endif
     14 #else
     15 #   include <dlfcn.h>
     16 #endif
     17 
     18 #ifdef __cplusplus
     19 extern "C" {
     20 #endif
     21 
     22 #ifdef _WIN32
     23 __declspec(dllimport) HMODULE __stdcall LoadLibraryA(LPCSTR);
     24 __declspec(dllimport) FARPROC __stdcall GetProcAddress(HMODULE, LPCSTR);
     25 #endif
     26 
     27 static VkInstance loadedInstance = VK_NULL_HANDLE;
     28 static VkDevice loadedDevice = VK_NULL_HANDLE;
     29 
     30 static void volkGenLoadLoader(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
     31 static void volkGenLoadInstance(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
     32 static void volkGenLoadDevice(void* context, PFN_vkVoidFunction (*load)(void*, const char*));
     33 static void volkGenLoadDeviceTable(struct VolkDeviceTable* table, void* context, PFN_vkVoidFunction (*load)(void*, const char*));
     34 
     35 static PFN_vkVoidFunction vkGetInstanceProcAddrStub(void* context, const char* name)
     36 {
     37    return vkGetInstanceProcAddr((VkInstance)context, name);
     38 }
     39 
     40 static PFN_vkVoidFunction vkGetDeviceProcAddrStub(void* context, const char* name)
     41 {
     42    return vkGetDeviceProcAddr((VkDevice)context, name);
     43 }
     44 
     45 VkResult volkInitialize(void)
     46 {
     47 #if defined(_WIN32)
     48    HMODULE module = LoadLibraryA("vulkan-1.dll");
     49    if (!module)
     50        return VK_ERROR_INITIALIZATION_FAILED;
     51 
     52    // note: function pointer is cast through void function pointer to silence cast-function-type warning on gcc8
     53    vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)(void(*)(void))GetProcAddress(module, "vkGetInstanceProcAddr");
     54 #elif defined(__APPLE__)
     55    void* module = dlopen("libvulkan.dylib", RTLD_NOW | RTLD_LOCAL);
     56    if (!module)
     57        module = dlopen("libvulkan.1.dylib", RTLD_NOW | RTLD_LOCAL);
     58    if (!module)
     59        module = dlopen("libMoltenVK.dylib", RTLD_NOW | RTLD_LOCAL);
     60    if (!module)
     61        return VK_ERROR_INITIALIZATION_FAILED;
     62 
     63    vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlsym(module, "vkGetInstanceProcAddr");
     64 #else
     65    void* module = dlopen("libvulkan.so.1", RTLD_NOW | RTLD_LOCAL);
     66    if (!module)
     67        module = dlopen("libvulkan.so", RTLD_NOW | RTLD_LOCAL);
     68    if (!module)
     69        return VK_ERROR_INITIALIZATION_FAILED;
     70 
     71    vkGetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)dlsym(module, "vkGetInstanceProcAddr");
     72 #endif
     73 
     74    volkGenLoadLoader(NULL, vkGetInstanceProcAddrStub);
     75 
     76    return VK_SUCCESS;
     77 }
     78 
     79 void volkInitializeCustom(PFN_vkGetInstanceProcAddr handler)
     80 {
     81    vkGetInstanceProcAddr = handler;
     82 
     83    volkGenLoadLoader(NULL, vkGetInstanceProcAddrStub);
     84 }
     85 
     86 uint32_t volkGetInstanceVersion(void)
     87 {
     88 #if defined(VK_VERSION_1_1)
     89    uint32_t apiVersion = 0;
     90    if (vkEnumerateInstanceVersion && vkEnumerateInstanceVersion(&apiVersion) == VK_SUCCESS)
     91        return apiVersion;
     92 #endif
     93 
     94    if (vkCreateInstance)
     95        return VK_API_VERSION_1_0;
     96 
     97    return 0;
     98 }
     99 
    100 void volkLoadInstance(VkInstance instance)
    101 {
    102    loadedInstance = instance;
    103    volkGenLoadInstance(instance, vkGetInstanceProcAddrStub);
    104    volkGenLoadDevice(instance, vkGetInstanceProcAddrStub);
    105 }
    106 
    107 void volkLoadInstanceOnly(VkInstance instance)
    108 {
    109    loadedInstance = instance;
    110    volkGenLoadInstance(instance, vkGetInstanceProcAddrStub);
    111 }
    112 
    113 VkInstance volkGetLoadedInstance()
    114 {
    115    return loadedInstance;
    116 }
    117 
    118 void volkLoadDevice(VkDevice device)
    119 {
    120    loadedDevice = device;
    121    volkGenLoadDevice(device, vkGetDeviceProcAddrStub);
    122 }
    123 
    124 VkDevice volkGetLoadedDevice()
    125 {
    126    return loadedDevice;
    127 }
    128 
    129 void volkLoadDeviceTable(struct VolkDeviceTable* table, VkDevice device)
    130 {
    131    volkGenLoadDeviceTable(table, device, vkGetDeviceProcAddrStub);
    132 }
    133 
    134 static void volkGenLoadLoader(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
    135 {
    136    /* VOLK_GENERATE_LOAD_LOADER */
    137 #if defined(VK_VERSION_1_0)
    138    vkCreateInstance = (PFN_vkCreateInstance)load(context, "vkCreateInstance");
    139    vkEnumerateInstanceExtensionProperties = (PFN_vkEnumerateInstanceExtensionProperties)load(context, "vkEnumerateInstanceExtensionProperties");
    140    vkEnumerateInstanceLayerProperties = (PFN_vkEnumerateInstanceLayerProperties)load(context, "vkEnumerateInstanceLayerProperties");
    141 #endif /* defined(VK_VERSION_1_0) */
    142 #if defined(VK_VERSION_1_1)
    143    vkEnumerateInstanceVersion = (PFN_vkEnumerateInstanceVersion)load(context, "vkEnumerateInstanceVersion");
    144 #endif /* defined(VK_VERSION_1_1) */
    145    /* VOLK_GENERATE_LOAD_LOADER */
    146 }
    147 
    148 static void volkGenLoadInstance(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
    149 {
    150    /* VOLK_GENERATE_LOAD_INSTANCE */
    151 #if defined(VK_VERSION_1_0)
    152    vkCreateDevice = (PFN_vkCreateDevice)load(context, "vkCreateDevice");
    153    vkDestroyInstance = (PFN_vkDestroyInstance)load(context, "vkDestroyInstance");
    154    vkEnumerateDeviceExtensionProperties = (PFN_vkEnumerateDeviceExtensionProperties)load(context, "vkEnumerateDeviceExtensionProperties");
    155    vkEnumerateDeviceLayerProperties = (PFN_vkEnumerateDeviceLayerProperties)load(context, "vkEnumerateDeviceLayerProperties");
    156    vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)load(context, "vkEnumeratePhysicalDevices");
    157    vkGetDeviceProcAddr = (PFN_vkGetDeviceProcAddr)load(context, "vkGetDeviceProcAddr");
    158    vkGetPhysicalDeviceFeatures = (PFN_vkGetPhysicalDeviceFeatures)load(context, "vkGetPhysicalDeviceFeatures");
    159    vkGetPhysicalDeviceFormatProperties = (PFN_vkGetPhysicalDeviceFormatProperties)load(context, "vkGetPhysicalDeviceFormatProperties");
    160    vkGetPhysicalDeviceImageFormatProperties = (PFN_vkGetPhysicalDeviceImageFormatProperties)load(context, "vkGetPhysicalDeviceImageFormatProperties");
    161    vkGetPhysicalDeviceMemoryProperties = (PFN_vkGetPhysicalDeviceMemoryProperties)load(context, "vkGetPhysicalDeviceMemoryProperties");
    162    vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)load(context, "vkGetPhysicalDeviceProperties");
    163    vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties)load(context, "vkGetPhysicalDeviceQueueFamilyProperties");
    164    vkGetPhysicalDeviceSparseImageFormatProperties = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties");
    165 #endif /* defined(VK_VERSION_1_0) */
    166 #if defined(VK_VERSION_1_1)
    167    vkEnumeratePhysicalDeviceGroups = (PFN_vkEnumeratePhysicalDeviceGroups)load(context, "vkEnumeratePhysicalDeviceGroups");
    168    vkGetPhysicalDeviceExternalBufferProperties = (PFN_vkGetPhysicalDeviceExternalBufferProperties)load(context, "vkGetPhysicalDeviceExternalBufferProperties");
    169    vkGetPhysicalDeviceExternalFenceProperties = (PFN_vkGetPhysicalDeviceExternalFenceProperties)load(context, "vkGetPhysicalDeviceExternalFenceProperties");
    170    vkGetPhysicalDeviceExternalSemaphoreProperties = (PFN_vkGetPhysicalDeviceExternalSemaphoreProperties)load(context, "vkGetPhysicalDeviceExternalSemaphoreProperties");
    171    vkGetPhysicalDeviceFeatures2 = (PFN_vkGetPhysicalDeviceFeatures2)load(context, "vkGetPhysicalDeviceFeatures2");
    172    vkGetPhysicalDeviceFormatProperties2 = (PFN_vkGetPhysicalDeviceFormatProperties2)load(context, "vkGetPhysicalDeviceFormatProperties2");
    173    vkGetPhysicalDeviceImageFormatProperties2 = (PFN_vkGetPhysicalDeviceImageFormatProperties2)load(context, "vkGetPhysicalDeviceImageFormatProperties2");
    174    vkGetPhysicalDeviceMemoryProperties2 = (PFN_vkGetPhysicalDeviceMemoryProperties2)load(context, "vkGetPhysicalDeviceMemoryProperties2");
    175    vkGetPhysicalDeviceProperties2 = (PFN_vkGetPhysicalDeviceProperties2)load(context, "vkGetPhysicalDeviceProperties2");
    176    vkGetPhysicalDeviceQueueFamilyProperties2 = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2)load(context, "vkGetPhysicalDeviceQueueFamilyProperties2");
    177    vkGetPhysicalDeviceSparseImageFormatProperties2 = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties2");
    178 #endif /* defined(VK_VERSION_1_1) */
    179 #if defined(VK_VERSION_1_3)
    180    vkGetPhysicalDeviceToolProperties = (PFN_vkGetPhysicalDeviceToolProperties)load(context, "vkGetPhysicalDeviceToolProperties");
    181 #endif /* defined(VK_VERSION_1_3) */
    182 #if defined(VK_EXT_acquire_drm_display)
    183    vkAcquireDrmDisplayEXT = (PFN_vkAcquireDrmDisplayEXT)load(context, "vkAcquireDrmDisplayEXT");
    184    vkGetDrmDisplayEXT = (PFN_vkGetDrmDisplayEXT)load(context, "vkGetDrmDisplayEXT");
    185 #endif /* defined(VK_EXT_acquire_drm_display) */
    186 #if defined(VK_EXT_acquire_xlib_display)
    187    vkAcquireXlibDisplayEXT = (PFN_vkAcquireXlibDisplayEXT)load(context, "vkAcquireXlibDisplayEXT");
    188    vkGetRandROutputDisplayEXT = (PFN_vkGetRandROutputDisplayEXT)load(context, "vkGetRandROutputDisplayEXT");
    189 #endif /* defined(VK_EXT_acquire_xlib_display) */
    190 #if defined(VK_EXT_calibrated_timestamps)
    191    vkGetPhysicalDeviceCalibrateableTimeDomainsEXT = (PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)load(context, "vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
    192 #endif /* defined(VK_EXT_calibrated_timestamps) */
    193 #if defined(VK_EXT_debug_report)
    194    vkCreateDebugReportCallbackEXT = (PFN_vkCreateDebugReportCallbackEXT)load(context, "vkCreateDebugReportCallbackEXT");
    195    vkDebugReportMessageEXT = (PFN_vkDebugReportMessageEXT)load(context, "vkDebugReportMessageEXT");
    196    vkDestroyDebugReportCallbackEXT = (PFN_vkDestroyDebugReportCallbackEXT)load(context, "vkDestroyDebugReportCallbackEXT");
    197 #endif /* defined(VK_EXT_debug_report) */
    198 #if defined(VK_EXT_debug_utils)
    199    vkCmdBeginDebugUtilsLabelEXT = (PFN_vkCmdBeginDebugUtilsLabelEXT)load(context, "vkCmdBeginDebugUtilsLabelEXT");
    200    vkCmdEndDebugUtilsLabelEXT = (PFN_vkCmdEndDebugUtilsLabelEXT)load(context, "vkCmdEndDebugUtilsLabelEXT");
    201    vkCmdInsertDebugUtilsLabelEXT = (PFN_vkCmdInsertDebugUtilsLabelEXT)load(context, "vkCmdInsertDebugUtilsLabelEXT");
    202    vkCreateDebugUtilsMessengerEXT = (PFN_vkCreateDebugUtilsMessengerEXT)load(context, "vkCreateDebugUtilsMessengerEXT");
    203    vkDestroyDebugUtilsMessengerEXT = (PFN_vkDestroyDebugUtilsMessengerEXT)load(context, "vkDestroyDebugUtilsMessengerEXT");
    204    vkQueueBeginDebugUtilsLabelEXT = (PFN_vkQueueBeginDebugUtilsLabelEXT)load(context, "vkQueueBeginDebugUtilsLabelEXT");
    205    vkQueueEndDebugUtilsLabelEXT = (PFN_vkQueueEndDebugUtilsLabelEXT)load(context, "vkQueueEndDebugUtilsLabelEXT");
    206    vkQueueInsertDebugUtilsLabelEXT = (PFN_vkQueueInsertDebugUtilsLabelEXT)load(context, "vkQueueInsertDebugUtilsLabelEXT");
    207    vkSetDebugUtilsObjectNameEXT = (PFN_vkSetDebugUtilsObjectNameEXT)load(context, "vkSetDebugUtilsObjectNameEXT");
    208    vkSetDebugUtilsObjectTagEXT = (PFN_vkSetDebugUtilsObjectTagEXT)load(context, "vkSetDebugUtilsObjectTagEXT");
    209    vkSubmitDebugUtilsMessageEXT = (PFN_vkSubmitDebugUtilsMessageEXT)load(context, "vkSubmitDebugUtilsMessageEXT");
    210 #endif /* defined(VK_EXT_debug_utils) */
    211 #if defined(VK_EXT_direct_mode_display)
    212    vkReleaseDisplayEXT = (PFN_vkReleaseDisplayEXT)load(context, "vkReleaseDisplayEXT");
    213 #endif /* defined(VK_EXT_direct_mode_display) */
    214 #if defined(VK_EXT_directfb_surface)
    215    vkCreateDirectFBSurfaceEXT = (PFN_vkCreateDirectFBSurfaceEXT)load(context, "vkCreateDirectFBSurfaceEXT");
    216    vkGetPhysicalDeviceDirectFBPresentationSupportEXT = (PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT)load(context, "vkGetPhysicalDeviceDirectFBPresentationSupportEXT");
    217 #endif /* defined(VK_EXT_directfb_surface) */
    218 #if defined(VK_EXT_display_surface_counter)
    219    vkGetPhysicalDeviceSurfaceCapabilities2EXT = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT)load(context, "vkGetPhysicalDeviceSurfaceCapabilities2EXT");
    220 #endif /* defined(VK_EXT_display_surface_counter) */
    221 #if defined(VK_EXT_full_screen_exclusive)
    222    vkGetPhysicalDeviceSurfacePresentModes2EXT = (PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT)load(context, "vkGetPhysicalDeviceSurfacePresentModes2EXT");
    223 #endif /* defined(VK_EXT_full_screen_exclusive) */
    224 #if defined(VK_EXT_headless_surface)
    225    vkCreateHeadlessSurfaceEXT = (PFN_vkCreateHeadlessSurfaceEXT)load(context, "vkCreateHeadlessSurfaceEXT");
    226 #endif /* defined(VK_EXT_headless_surface) */
    227 #if defined(VK_EXT_metal_surface)
    228    vkCreateMetalSurfaceEXT = (PFN_vkCreateMetalSurfaceEXT)load(context, "vkCreateMetalSurfaceEXT");
    229 #endif /* defined(VK_EXT_metal_surface) */
    230 #if defined(VK_EXT_sample_locations)
    231    vkGetPhysicalDeviceMultisamplePropertiesEXT = (PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT)load(context, "vkGetPhysicalDeviceMultisamplePropertiesEXT");
    232 #endif /* defined(VK_EXT_sample_locations) */
    233 #if defined(VK_EXT_tooling_info)
    234    vkGetPhysicalDeviceToolPropertiesEXT = (PFN_vkGetPhysicalDeviceToolPropertiesEXT)load(context, "vkGetPhysicalDeviceToolPropertiesEXT");
    235 #endif /* defined(VK_EXT_tooling_info) */
    236 #if defined(VK_FUCHSIA_imagepipe_surface)
    237    vkCreateImagePipeSurfaceFUCHSIA = (PFN_vkCreateImagePipeSurfaceFUCHSIA)load(context, "vkCreateImagePipeSurfaceFUCHSIA");
    238 #endif /* defined(VK_FUCHSIA_imagepipe_surface) */
    239 #if defined(VK_GGP_stream_descriptor_surface)
    240    vkCreateStreamDescriptorSurfaceGGP = (PFN_vkCreateStreamDescriptorSurfaceGGP)load(context, "vkCreateStreamDescriptorSurfaceGGP");
    241 #endif /* defined(VK_GGP_stream_descriptor_surface) */
    242 #if defined(VK_KHR_android_surface)
    243    vkCreateAndroidSurfaceKHR = (PFN_vkCreateAndroidSurfaceKHR)load(context, "vkCreateAndroidSurfaceKHR");
    244 #endif /* defined(VK_KHR_android_surface) */
    245 #if defined(VK_KHR_device_group_creation)
    246    vkEnumeratePhysicalDeviceGroupsKHR = (PFN_vkEnumeratePhysicalDeviceGroupsKHR)load(context, "vkEnumeratePhysicalDeviceGroupsKHR");
    247 #endif /* defined(VK_KHR_device_group_creation) */
    248 #if defined(VK_KHR_display)
    249    vkCreateDisplayModeKHR = (PFN_vkCreateDisplayModeKHR)load(context, "vkCreateDisplayModeKHR");
    250    vkCreateDisplayPlaneSurfaceKHR = (PFN_vkCreateDisplayPlaneSurfaceKHR)load(context, "vkCreateDisplayPlaneSurfaceKHR");
    251    vkGetDisplayModePropertiesKHR = (PFN_vkGetDisplayModePropertiesKHR)load(context, "vkGetDisplayModePropertiesKHR");
    252    vkGetDisplayPlaneCapabilitiesKHR = (PFN_vkGetDisplayPlaneCapabilitiesKHR)load(context, "vkGetDisplayPlaneCapabilitiesKHR");
    253    vkGetDisplayPlaneSupportedDisplaysKHR = (PFN_vkGetDisplayPlaneSupportedDisplaysKHR)load(context, "vkGetDisplayPlaneSupportedDisplaysKHR");
    254    vkGetPhysicalDeviceDisplayPlanePropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)load(context, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
    255    vkGetPhysicalDeviceDisplayPropertiesKHR = (PFN_vkGetPhysicalDeviceDisplayPropertiesKHR)load(context, "vkGetPhysicalDeviceDisplayPropertiesKHR");
    256 #endif /* defined(VK_KHR_display) */
    257 #if defined(VK_KHR_external_fence_capabilities)
    258    vkGetPhysicalDeviceExternalFencePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)load(context, "vkGetPhysicalDeviceExternalFencePropertiesKHR");
    259 #endif /* defined(VK_KHR_external_fence_capabilities) */
    260 #if defined(VK_KHR_external_memory_capabilities)
    261    vkGetPhysicalDeviceExternalBufferPropertiesKHR = (PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR)load(context, "vkGetPhysicalDeviceExternalBufferPropertiesKHR");
    262 #endif /* defined(VK_KHR_external_memory_capabilities) */
    263 #if defined(VK_KHR_external_semaphore_capabilities)
    264    vkGetPhysicalDeviceExternalSemaphorePropertiesKHR = (PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR)load(context, "vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
    265 #endif /* defined(VK_KHR_external_semaphore_capabilities) */
    266 #if defined(VK_KHR_fragment_shading_rate)
    267    vkGetPhysicalDeviceFragmentShadingRatesKHR = (PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR)load(context, "vkGetPhysicalDeviceFragmentShadingRatesKHR");
    268 #endif /* defined(VK_KHR_fragment_shading_rate) */
    269 #if defined(VK_KHR_get_display_properties2)
    270    vkGetDisplayModeProperties2KHR = (PFN_vkGetDisplayModeProperties2KHR)load(context, "vkGetDisplayModeProperties2KHR");
    271    vkGetDisplayPlaneCapabilities2KHR = (PFN_vkGetDisplayPlaneCapabilities2KHR)load(context, "vkGetDisplayPlaneCapabilities2KHR");
    272    vkGetPhysicalDeviceDisplayPlaneProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR)load(context, "vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
    273    vkGetPhysicalDeviceDisplayProperties2KHR = (PFN_vkGetPhysicalDeviceDisplayProperties2KHR)load(context, "vkGetPhysicalDeviceDisplayProperties2KHR");
    274 #endif /* defined(VK_KHR_get_display_properties2) */
    275 #if defined(VK_KHR_get_physical_device_properties2)
    276    vkGetPhysicalDeviceFeatures2KHR = (PFN_vkGetPhysicalDeviceFeatures2KHR)load(context, "vkGetPhysicalDeviceFeatures2KHR");
    277    vkGetPhysicalDeviceFormatProperties2KHR = (PFN_vkGetPhysicalDeviceFormatProperties2KHR)load(context, "vkGetPhysicalDeviceFormatProperties2KHR");
    278    vkGetPhysicalDeviceImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceImageFormatProperties2KHR)load(context, "vkGetPhysicalDeviceImageFormatProperties2KHR");
    279    vkGetPhysicalDeviceMemoryProperties2KHR = (PFN_vkGetPhysicalDeviceMemoryProperties2KHR)load(context, "vkGetPhysicalDeviceMemoryProperties2KHR");
    280    vkGetPhysicalDeviceProperties2KHR = (PFN_vkGetPhysicalDeviceProperties2KHR)load(context, "vkGetPhysicalDeviceProperties2KHR");
    281    vkGetPhysicalDeviceQueueFamilyProperties2KHR = (PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR)load(context, "vkGetPhysicalDeviceQueueFamilyProperties2KHR");
    282    vkGetPhysicalDeviceSparseImageFormatProperties2KHR = (PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)load(context, "vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
    283 #endif /* defined(VK_KHR_get_physical_device_properties2) */
    284 #if defined(VK_KHR_get_surface_capabilities2)
    285    vkGetPhysicalDeviceSurfaceCapabilities2KHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)load(context, "vkGetPhysicalDeviceSurfaceCapabilities2KHR");
    286    vkGetPhysicalDeviceSurfaceFormats2KHR = (PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)load(context, "vkGetPhysicalDeviceSurfaceFormats2KHR");
    287 #endif /* defined(VK_KHR_get_surface_capabilities2) */
    288 #if defined(VK_KHR_performance_query)
    289    vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR = (PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR)load(context, "vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
    290    vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR = (PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR)load(context, "vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
    291 #endif /* defined(VK_KHR_performance_query) */
    292 #if defined(VK_KHR_surface)
    293    vkDestroySurfaceKHR = (PFN_vkDestroySurfaceKHR)load(context, "vkDestroySurfaceKHR");
    294    vkGetPhysicalDeviceSurfaceCapabilitiesKHR = (PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)load(context, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
    295    vkGetPhysicalDeviceSurfaceFormatsKHR = (PFN_vkGetPhysicalDeviceSurfaceFormatsKHR)load(context, "vkGetPhysicalDeviceSurfaceFormatsKHR");
    296    vkGetPhysicalDeviceSurfacePresentModesKHR = (PFN_vkGetPhysicalDeviceSurfacePresentModesKHR)load(context, "vkGetPhysicalDeviceSurfacePresentModesKHR");
    297    vkGetPhysicalDeviceSurfaceSupportKHR = (PFN_vkGetPhysicalDeviceSurfaceSupportKHR)load(context, "vkGetPhysicalDeviceSurfaceSupportKHR");
    298 #endif /* defined(VK_KHR_surface) */
    299 #if defined(VK_KHR_video_queue)
    300    vkGetPhysicalDeviceVideoCapabilitiesKHR = (PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR)load(context, "vkGetPhysicalDeviceVideoCapabilitiesKHR");
    301    vkGetPhysicalDeviceVideoFormatPropertiesKHR = (PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR)load(context, "vkGetPhysicalDeviceVideoFormatPropertiesKHR");
    302 #endif /* defined(VK_KHR_video_queue) */
    303 #if defined(VK_KHR_wayland_surface)
    304    vkCreateWaylandSurfaceKHR = (PFN_vkCreateWaylandSurfaceKHR)load(context, "vkCreateWaylandSurfaceKHR");
    305    vkGetPhysicalDeviceWaylandPresentationSupportKHR = (PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)load(context, "vkGetPhysicalDeviceWaylandPresentationSupportKHR");
    306 #endif /* defined(VK_KHR_wayland_surface) */
    307 #if defined(VK_KHR_win32_surface)
    308    vkCreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR)load(context, "vkCreateWin32SurfaceKHR");
    309    vkGetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)load(context, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
    310 #endif /* defined(VK_KHR_win32_surface) */
    311 #if defined(VK_KHR_xcb_surface)
    312    vkCreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR)load(context, "vkCreateXcbSurfaceKHR");
    313    vkGetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)load(context, "vkGetPhysicalDeviceXcbPresentationSupportKHR");
    314 #endif /* defined(VK_KHR_xcb_surface) */
    315 #if defined(VK_KHR_xlib_surface)
    316    vkCreateXlibSurfaceKHR = (PFN_vkCreateXlibSurfaceKHR)load(context, "vkCreateXlibSurfaceKHR");
    317    vkGetPhysicalDeviceXlibPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)load(context, "vkGetPhysicalDeviceXlibPresentationSupportKHR");
    318 #endif /* defined(VK_KHR_xlib_surface) */
    319 #if defined(VK_MVK_ios_surface)
    320    vkCreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK)load(context, "vkCreateIOSSurfaceMVK");
    321 #endif /* defined(VK_MVK_ios_surface) */
    322 #if defined(VK_MVK_macos_surface)
    323    vkCreateMacOSSurfaceMVK = (PFN_vkCreateMacOSSurfaceMVK)load(context, "vkCreateMacOSSurfaceMVK");
    324 #endif /* defined(VK_MVK_macos_surface) */
    325 #if defined(VK_NN_vi_surface)
    326    vkCreateViSurfaceNN = (PFN_vkCreateViSurfaceNN)load(context, "vkCreateViSurfaceNN");
    327 #endif /* defined(VK_NN_vi_surface) */
    328 #if defined(VK_NV_acquire_winrt_display)
    329    vkAcquireWinrtDisplayNV = (PFN_vkAcquireWinrtDisplayNV)load(context, "vkAcquireWinrtDisplayNV");
    330    vkGetWinrtDisplayNV = (PFN_vkGetWinrtDisplayNV)load(context, "vkGetWinrtDisplayNV");
    331 #endif /* defined(VK_NV_acquire_winrt_display) */
    332 #if defined(VK_NV_cooperative_matrix)
    333    vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = (PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)load(context, "vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
    334 #endif /* defined(VK_NV_cooperative_matrix) */
    335 #if defined(VK_NV_coverage_reduction_mode)
    336    vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV = (PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV)load(context, "vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
    337 #endif /* defined(VK_NV_coverage_reduction_mode) */
    338 #if defined(VK_NV_external_memory_capabilities)
    339    vkGetPhysicalDeviceExternalImageFormatPropertiesNV = (PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV)load(context, "vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
    340 #endif /* defined(VK_NV_external_memory_capabilities) */
    341 #if defined(VK_QNX_screen_surface)
    342    vkCreateScreenSurfaceQNX = (PFN_vkCreateScreenSurfaceQNX)load(context, "vkCreateScreenSurfaceQNX");
    343    vkGetPhysicalDeviceScreenPresentationSupportQNX = (PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX)load(context, "vkGetPhysicalDeviceScreenPresentationSupportQNX");
    344 #endif /* defined(VK_QNX_screen_surface) */
    345 #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
    346    vkGetPhysicalDevicePresentRectanglesKHR = (PFN_vkGetPhysicalDevicePresentRectanglesKHR)load(context, "vkGetPhysicalDevicePresentRectanglesKHR");
    347 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
    348    /* VOLK_GENERATE_LOAD_INSTANCE */
    349 }
    350 
    351 static void volkGenLoadDevice(void* context, PFN_vkVoidFunction (*load)(void*, const char*))
    352 {
    353    /* VOLK_GENERATE_LOAD_DEVICE */
    354 #if defined(VK_VERSION_1_0)
    355    vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)load(context, "vkAllocateCommandBuffers");
    356    vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)load(context, "vkAllocateDescriptorSets");
    357    vkAllocateMemory = (PFN_vkAllocateMemory)load(context, "vkAllocateMemory");
    358    vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)load(context, "vkBeginCommandBuffer");
    359    vkBindBufferMemory = (PFN_vkBindBufferMemory)load(context, "vkBindBufferMemory");
    360    vkBindImageMemory = (PFN_vkBindImageMemory)load(context, "vkBindImageMemory");
    361    vkCmdBeginQuery = (PFN_vkCmdBeginQuery)load(context, "vkCmdBeginQuery");
    362    vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)load(context, "vkCmdBeginRenderPass");
    363    vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)load(context, "vkCmdBindDescriptorSets");
    364    vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)load(context, "vkCmdBindIndexBuffer");
    365    vkCmdBindPipeline = (PFN_vkCmdBindPipeline)load(context, "vkCmdBindPipeline");
    366    vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)load(context, "vkCmdBindVertexBuffers");
    367    vkCmdBlitImage = (PFN_vkCmdBlitImage)load(context, "vkCmdBlitImage");
    368    vkCmdClearAttachments = (PFN_vkCmdClearAttachments)load(context, "vkCmdClearAttachments");
    369    vkCmdClearColorImage = (PFN_vkCmdClearColorImage)load(context, "vkCmdClearColorImage");
    370    vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)load(context, "vkCmdClearDepthStencilImage");
    371    vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)load(context, "vkCmdCopyBuffer");
    372    vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)load(context, "vkCmdCopyBufferToImage");
    373    vkCmdCopyImage = (PFN_vkCmdCopyImage)load(context, "vkCmdCopyImage");
    374    vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)load(context, "vkCmdCopyImageToBuffer");
    375    vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)load(context, "vkCmdCopyQueryPoolResults");
    376    vkCmdDispatch = (PFN_vkCmdDispatch)load(context, "vkCmdDispatch");
    377    vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)load(context, "vkCmdDispatchIndirect");
    378    vkCmdDraw = (PFN_vkCmdDraw)load(context, "vkCmdDraw");
    379    vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)load(context, "vkCmdDrawIndexed");
    380    vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)load(context, "vkCmdDrawIndexedIndirect");
    381    vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)load(context, "vkCmdDrawIndirect");
    382    vkCmdEndQuery = (PFN_vkCmdEndQuery)load(context, "vkCmdEndQuery");
    383    vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)load(context, "vkCmdEndRenderPass");
    384    vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)load(context, "vkCmdExecuteCommands");
    385    vkCmdFillBuffer = (PFN_vkCmdFillBuffer)load(context, "vkCmdFillBuffer");
    386    vkCmdNextSubpass = (PFN_vkCmdNextSubpass)load(context, "vkCmdNextSubpass");
    387    vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)load(context, "vkCmdPipelineBarrier");
    388    vkCmdPushConstants = (PFN_vkCmdPushConstants)load(context, "vkCmdPushConstants");
    389    vkCmdResetEvent = (PFN_vkCmdResetEvent)load(context, "vkCmdResetEvent");
    390    vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)load(context, "vkCmdResetQueryPool");
    391    vkCmdResolveImage = (PFN_vkCmdResolveImage)load(context, "vkCmdResolveImage");
    392    vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)load(context, "vkCmdSetBlendConstants");
    393    vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)load(context, "vkCmdSetDepthBias");
    394    vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)load(context, "vkCmdSetDepthBounds");
    395    vkCmdSetEvent = (PFN_vkCmdSetEvent)load(context, "vkCmdSetEvent");
    396    vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)load(context, "vkCmdSetLineWidth");
    397    vkCmdSetScissor = (PFN_vkCmdSetScissor)load(context, "vkCmdSetScissor");
    398    vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)load(context, "vkCmdSetStencilCompareMask");
    399    vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)load(context, "vkCmdSetStencilReference");
    400    vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)load(context, "vkCmdSetStencilWriteMask");
    401    vkCmdSetViewport = (PFN_vkCmdSetViewport)load(context, "vkCmdSetViewport");
    402    vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)load(context, "vkCmdUpdateBuffer");
    403    vkCmdWaitEvents = (PFN_vkCmdWaitEvents)load(context, "vkCmdWaitEvents");
    404    vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)load(context, "vkCmdWriteTimestamp");
    405    vkCreateBuffer = (PFN_vkCreateBuffer)load(context, "vkCreateBuffer");
    406    vkCreateBufferView = (PFN_vkCreateBufferView)load(context, "vkCreateBufferView");
    407    vkCreateCommandPool = (PFN_vkCreateCommandPool)load(context, "vkCreateCommandPool");
    408    vkCreateComputePipelines = (PFN_vkCreateComputePipelines)load(context, "vkCreateComputePipelines");
    409    vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)load(context, "vkCreateDescriptorPool");
    410    vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)load(context, "vkCreateDescriptorSetLayout");
    411    vkCreateEvent = (PFN_vkCreateEvent)load(context, "vkCreateEvent");
    412    vkCreateFence = (PFN_vkCreateFence)load(context, "vkCreateFence");
    413    vkCreateFramebuffer = (PFN_vkCreateFramebuffer)load(context, "vkCreateFramebuffer");
    414    vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)load(context, "vkCreateGraphicsPipelines");
    415    vkCreateImage = (PFN_vkCreateImage)load(context, "vkCreateImage");
    416    vkCreateImageView = (PFN_vkCreateImageView)load(context, "vkCreateImageView");
    417    vkCreatePipelineCache = (PFN_vkCreatePipelineCache)load(context, "vkCreatePipelineCache");
    418    vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)load(context, "vkCreatePipelineLayout");
    419    vkCreateQueryPool = (PFN_vkCreateQueryPool)load(context, "vkCreateQueryPool");
    420    vkCreateRenderPass = (PFN_vkCreateRenderPass)load(context, "vkCreateRenderPass");
    421    vkCreateSampler = (PFN_vkCreateSampler)load(context, "vkCreateSampler");
    422    vkCreateSemaphore = (PFN_vkCreateSemaphore)load(context, "vkCreateSemaphore");
    423    vkCreateShaderModule = (PFN_vkCreateShaderModule)load(context, "vkCreateShaderModule");
    424    vkDestroyBuffer = (PFN_vkDestroyBuffer)load(context, "vkDestroyBuffer");
    425    vkDestroyBufferView = (PFN_vkDestroyBufferView)load(context, "vkDestroyBufferView");
    426    vkDestroyCommandPool = (PFN_vkDestroyCommandPool)load(context, "vkDestroyCommandPool");
    427    vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)load(context, "vkDestroyDescriptorPool");
    428    vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)load(context, "vkDestroyDescriptorSetLayout");
    429    vkDestroyDevice = (PFN_vkDestroyDevice)load(context, "vkDestroyDevice");
    430    vkDestroyEvent = (PFN_vkDestroyEvent)load(context, "vkDestroyEvent");
    431    vkDestroyFence = (PFN_vkDestroyFence)load(context, "vkDestroyFence");
    432    vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)load(context, "vkDestroyFramebuffer");
    433    vkDestroyImage = (PFN_vkDestroyImage)load(context, "vkDestroyImage");
    434    vkDestroyImageView = (PFN_vkDestroyImageView)load(context, "vkDestroyImageView");
    435    vkDestroyPipeline = (PFN_vkDestroyPipeline)load(context, "vkDestroyPipeline");
    436    vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)load(context, "vkDestroyPipelineCache");
    437    vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)load(context, "vkDestroyPipelineLayout");
    438    vkDestroyQueryPool = (PFN_vkDestroyQueryPool)load(context, "vkDestroyQueryPool");
    439    vkDestroyRenderPass = (PFN_vkDestroyRenderPass)load(context, "vkDestroyRenderPass");
    440    vkDestroySampler = (PFN_vkDestroySampler)load(context, "vkDestroySampler");
    441    vkDestroySemaphore = (PFN_vkDestroySemaphore)load(context, "vkDestroySemaphore");
    442    vkDestroyShaderModule = (PFN_vkDestroyShaderModule)load(context, "vkDestroyShaderModule");
    443    vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)load(context, "vkDeviceWaitIdle");
    444    vkEndCommandBuffer = (PFN_vkEndCommandBuffer)load(context, "vkEndCommandBuffer");
    445    vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)load(context, "vkFlushMappedMemoryRanges");
    446    vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)load(context, "vkFreeCommandBuffers");
    447    vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)load(context, "vkFreeDescriptorSets");
    448    vkFreeMemory = (PFN_vkFreeMemory)load(context, "vkFreeMemory");
    449    vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)load(context, "vkGetBufferMemoryRequirements");
    450    vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)load(context, "vkGetDeviceMemoryCommitment");
    451    vkGetDeviceQueue = (PFN_vkGetDeviceQueue)load(context, "vkGetDeviceQueue");
    452    vkGetEventStatus = (PFN_vkGetEventStatus)load(context, "vkGetEventStatus");
    453    vkGetFenceStatus = (PFN_vkGetFenceStatus)load(context, "vkGetFenceStatus");
    454    vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)load(context, "vkGetImageMemoryRequirements");
    455    vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)load(context, "vkGetImageSparseMemoryRequirements");
    456    vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)load(context, "vkGetImageSubresourceLayout");
    457    vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)load(context, "vkGetPipelineCacheData");
    458    vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)load(context, "vkGetQueryPoolResults");
    459    vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)load(context, "vkGetRenderAreaGranularity");
    460    vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)load(context, "vkInvalidateMappedMemoryRanges");
    461    vkMapMemory = (PFN_vkMapMemory)load(context, "vkMapMemory");
    462    vkMergePipelineCaches = (PFN_vkMergePipelineCaches)load(context, "vkMergePipelineCaches");
    463    vkQueueBindSparse = (PFN_vkQueueBindSparse)load(context, "vkQueueBindSparse");
    464    vkQueueSubmit = (PFN_vkQueueSubmit)load(context, "vkQueueSubmit");
    465    vkQueueWaitIdle = (PFN_vkQueueWaitIdle)load(context, "vkQueueWaitIdle");
    466    vkResetCommandBuffer = (PFN_vkResetCommandBuffer)load(context, "vkResetCommandBuffer");
    467    vkResetCommandPool = (PFN_vkResetCommandPool)load(context, "vkResetCommandPool");
    468    vkResetDescriptorPool = (PFN_vkResetDescriptorPool)load(context, "vkResetDescriptorPool");
    469    vkResetEvent = (PFN_vkResetEvent)load(context, "vkResetEvent");
    470    vkResetFences = (PFN_vkResetFences)load(context, "vkResetFences");
    471    vkSetEvent = (PFN_vkSetEvent)load(context, "vkSetEvent");
    472    vkUnmapMemory = (PFN_vkUnmapMemory)load(context, "vkUnmapMemory");
    473    vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)load(context, "vkUpdateDescriptorSets");
    474    vkWaitForFences = (PFN_vkWaitForFences)load(context, "vkWaitForFences");
    475 #endif /* defined(VK_VERSION_1_0) */
    476 #if defined(VK_VERSION_1_1)
    477    vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)load(context, "vkBindBufferMemory2");
    478    vkBindImageMemory2 = (PFN_vkBindImageMemory2)load(context, "vkBindImageMemory2");
    479    vkCmdDispatchBase = (PFN_vkCmdDispatchBase)load(context, "vkCmdDispatchBase");
    480    vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)load(context, "vkCmdSetDeviceMask");
    481    vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)load(context, "vkCreateDescriptorUpdateTemplate");
    482    vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)load(context, "vkCreateSamplerYcbcrConversion");
    483    vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)load(context, "vkDestroyDescriptorUpdateTemplate");
    484    vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)load(context, "vkDestroySamplerYcbcrConversion");
    485    vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)load(context, "vkGetBufferMemoryRequirements2");
    486    vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)load(context, "vkGetDescriptorSetLayoutSupport");
    487    vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)load(context, "vkGetDeviceGroupPeerMemoryFeatures");
    488    vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)load(context, "vkGetDeviceQueue2");
    489    vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)load(context, "vkGetImageMemoryRequirements2");
    490    vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)load(context, "vkGetImageSparseMemoryRequirements2");
    491    vkTrimCommandPool = (PFN_vkTrimCommandPool)load(context, "vkTrimCommandPool");
    492    vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)load(context, "vkUpdateDescriptorSetWithTemplate");
    493 #endif /* defined(VK_VERSION_1_1) */
    494 #if defined(VK_VERSION_1_2)
    495    vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)load(context, "vkCmdBeginRenderPass2");
    496    vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)load(context, "vkCmdDrawIndexedIndirectCount");
    497    vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)load(context, "vkCmdDrawIndirectCount");
    498    vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)load(context, "vkCmdEndRenderPass2");
    499    vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)load(context, "vkCmdNextSubpass2");
    500    vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)load(context, "vkCreateRenderPass2");
    501    vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)load(context, "vkGetBufferDeviceAddress");
    502    vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)load(context, "vkGetBufferOpaqueCaptureAddress");
    503    vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)load(context, "vkGetDeviceMemoryOpaqueCaptureAddress");
    504    vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)load(context, "vkGetSemaphoreCounterValue");
    505    vkResetQueryPool = (PFN_vkResetQueryPool)load(context, "vkResetQueryPool");
    506    vkSignalSemaphore = (PFN_vkSignalSemaphore)load(context, "vkSignalSemaphore");
    507    vkWaitSemaphores = (PFN_vkWaitSemaphores)load(context, "vkWaitSemaphores");
    508 #endif /* defined(VK_VERSION_1_2) */
    509 #if defined(VK_VERSION_1_3)
    510    vkCmdBeginRendering = (PFN_vkCmdBeginRendering)load(context, "vkCmdBeginRendering");
    511    vkCmdBindVertexBuffers2 = (PFN_vkCmdBindVertexBuffers2)load(context, "vkCmdBindVertexBuffers2");
    512    vkCmdBlitImage2 = (PFN_vkCmdBlitImage2)load(context, "vkCmdBlitImage2");
    513    vkCmdCopyBuffer2 = (PFN_vkCmdCopyBuffer2)load(context, "vkCmdCopyBuffer2");
    514    vkCmdCopyBufferToImage2 = (PFN_vkCmdCopyBufferToImage2)load(context, "vkCmdCopyBufferToImage2");
    515    vkCmdCopyImage2 = (PFN_vkCmdCopyImage2)load(context, "vkCmdCopyImage2");
    516    vkCmdCopyImageToBuffer2 = (PFN_vkCmdCopyImageToBuffer2)load(context, "vkCmdCopyImageToBuffer2");
    517    vkCmdEndRendering = (PFN_vkCmdEndRendering)load(context, "vkCmdEndRendering");
    518    vkCmdPipelineBarrier2 = (PFN_vkCmdPipelineBarrier2)load(context, "vkCmdPipelineBarrier2");
    519    vkCmdResetEvent2 = (PFN_vkCmdResetEvent2)load(context, "vkCmdResetEvent2");
    520    vkCmdResolveImage2 = (PFN_vkCmdResolveImage2)load(context, "vkCmdResolveImage2");
    521    vkCmdSetCullMode = (PFN_vkCmdSetCullMode)load(context, "vkCmdSetCullMode");
    522    vkCmdSetDepthBiasEnable = (PFN_vkCmdSetDepthBiasEnable)load(context, "vkCmdSetDepthBiasEnable");
    523    vkCmdSetDepthBoundsTestEnable = (PFN_vkCmdSetDepthBoundsTestEnable)load(context, "vkCmdSetDepthBoundsTestEnable");
    524    vkCmdSetDepthCompareOp = (PFN_vkCmdSetDepthCompareOp)load(context, "vkCmdSetDepthCompareOp");
    525    vkCmdSetDepthTestEnable = (PFN_vkCmdSetDepthTestEnable)load(context, "vkCmdSetDepthTestEnable");
    526    vkCmdSetDepthWriteEnable = (PFN_vkCmdSetDepthWriteEnable)load(context, "vkCmdSetDepthWriteEnable");
    527    vkCmdSetEvent2 = (PFN_vkCmdSetEvent2)load(context, "vkCmdSetEvent2");
    528    vkCmdSetFrontFace = (PFN_vkCmdSetFrontFace)load(context, "vkCmdSetFrontFace");
    529    vkCmdSetPrimitiveRestartEnable = (PFN_vkCmdSetPrimitiveRestartEnable)load(context, "vkCmdSetPrimitiveRestartEnable");
    530    vkCmdSetPrimitiveTopology = (PFN_vkCmdSetPrimitiveTopology)load(context, "vkCmdSetPrimitiveTopology");
    531    vkCmdSetRasterizerDiscardEnable = (PFN_vkCmdSetRasterizerDiscardEnable)load(context, "vkCmdSetRasterizerDiscardEnable");
    532    vkCmdSetScissorWithCount = (PFN_vkCmdSetScissorWithCount)load(context, "vkCmdSetScissorWithCount");
    533    vkCmdSetStencilOp = (PFN_vkCmdSetStencilOp)load(context, "vkCmdSetStencilOp");
    534    vkCmdSetStencilTestEnable = (PFN_vkCmdSetStencilTestEnable)load(context, "vkCmdSetStencilTestEnable");
    535    vkCmdSetViewportWithCount = (PFN_vkCmdSetViewportWithCount)load(context, "vkCmdSetViewportWithCount");
    536    vkCmdWaitEvents2 = (PFN_vkCmdWaitEvents2)load(context, "vkCmdWaitEvents2");
    537    vkCmdWriteTimestamp2 = (PFN_vkCmdWriteTimestamp2)load(context, "vkCmdWriteTimestamp2");
    538    vkCreatePrivateDataSlot = (PFN_vkCreatePrivateDataSlot)load(context, "vkCreatePrivateDataSlot");
    539    vkDestroyPrivateDataSlot = (PFN_vkDestroyPrivateDataSlot)load(context, "vkDestroyPrivateDataSlot");
    540    vkGetDeviceBufferMemoryRequirements = (PFN_vkGetDeviceBufferMemoryRequirements)load(context, "vkGetDeviceBufferMemoryRequirements");
    541    vkGetDeviceImageMemoryRequirements = (PFN_vkGetDeviceImageMemoryRequirements)load(context, "vkGetDeviceImageMemoryRequirements");
    542    vkGetDeviceImageSparseMemoryRequirements = (PFN_vkGetDeviceImageSparseMemoryRequirements)load(context, "vkGetDeviceImageSparseMemoryRequirements");
    543    vkGetPrivateData = (PFN_vkGetPrivateData)load(context, "vkGetPrivateData");
    544    vkQueueSubmit2 = (PFN_vkQueueSubmit2)load(context, "vkQueueSubmit2");
    545    vkSetPrivateData = (PFN_vkSetPrivateData)load(context, "vkSetPrivateData");
    546 #endif /* defined(VK_VERSION_1_3) */
    547 #if defined(VK_AMD_buffer_marker)
    548    vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)load(context, "vkCmdWriteBufferMarkerAMD");
    549 #endif /* defined(VK_AMD_buffer_marker) */
    550 #if defined(VK_AMD_display_native_hdr)
    551    vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)load(context, "vkSetLocalDimmingAMD");
    552 #endif /* defined(VK_AMD_display_native_hdr) */
    553 #if defined(VK_AMD_draw_indirect_count)
    554    vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)load(context, "vkCmdDrawIndexedIndirectCountAMD");
    555    vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)load(context, "vkCmdDrawIndirectCountAMD");
    556 #endif /* defined(VK_AMD_draw_indirect_count) */
    557 #if defined(VK_AMD_shader_info)
    558    vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)load(context, "vkGetShaderInfoAMD");
    559 #endif /* defined(VK_AMD_shader_info) */
    560 #if defined(VK_ANDROID_external_memory_android_hardware_buffer)
    561    vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)load(context, "vkGetAndroidHardwareBufferPropertiesANDROID");
    562    vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)load(context, "vkGetMemoryAndroidHardwareBufferANDROID");
    563 #endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
    564 #if defined(VK_EXT_buffer_device_address)
    565    vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)load(context, "vkGetBufferDeviceAddressEXT");
    566 #endif /* defined(VK_EXT_buffer_device_address) */
    567 #if defined(VK_EXT_calibrated_timestamps)
    568    vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)load(context, "vkGetCalibratedTimestampsEXT");
    569 #endif /* defined(VK_EXT_calibrated_timestamps) */
    570 #if defined(VK_EXT_color_write_enable)
    571    vkCmdSetColorWriteEnableEXT = (PFN_vkCmdSetColorWriteEnableEXT)load(context, "vkCmdSetColorWriteEnableEXT");
    572 #endif /* defined(VK_EXT_color_write_enable) */
    573 #if defined(VK_EXT_conditional_rendering)
    574    vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)load(context, "vkCmdBeginConditionalRenderingEXT");
    575    vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)load(context, "vkCmdEndConditionalRenderingEXT");
    576 #endif /* defined(VK_EXT_conditional_rendering) */
    577 #if defined(VK_EXT_debug_marker)
    578    vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)load(context, "vkCmdDebugMarkerBeginEXT");
    579    vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)load(context, "vkCmdDebugMarkerEndEXT");
    580    vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)load(context, "vkCmdDebugMarkerInsertEXT");
    581    vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)load(context, "vkDebugMarkerSetObjectNameEXT");
    582    vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)load(context, "vkDebugMarkerSetObjectTagEXT");
    583 #endif /* defined(VK_EXT_debug_marker) */
    584 #if defined(VK_EXT_discard_rectangles)
    585    vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)load(context, "vkCmdSetDiscardRectangleEXT");
    586 #endif /* defined(VK_EXT_discard_rectangles) */
    587 #if defined(VK_EXT_display_control)
    588    vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)load(context, "vkDisplayPowerControlEXT");
    589    vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)load(context, "vkGetSwapchainCounterEXT");
    590    vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)load(context, "vkRegisterDeviceEventEXT");
    591    vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)load(context, "vkRegisterDisplayEventEXT");
    592 #endif /* defined(VK_EXT_display_control) */
    593 #if defined(VK_EXT_extended_dynamic_state)
    594    vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)load(context, "vkCmdBindVertexBuffers2EXT");
    595    vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)load(context, "vkCmdSetCullModeEXT");
    596    vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)load(context, "vkCmdSetDepthBoundsTestEnableEXT");
    597    vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)load(context, "vkCmdSetDepthCompareOpEXT");
    598    vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)load(context, "vkCmdSetDepthTestEnableEXT");
    599    vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)load(context, "vkCmdSetDepthWriteEnableEXT");
    600    vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)load(context, "vkCmdSetFrontFaceEXT");
    601    vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)load(context, "vkCmdSetPrimitiveTopologyEXT");
    602    vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)load(context, "vkCmdSetScissorWithCountEXT");
    603    vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)load(context, "vkCmdSetStencilOpEXT");
    604    vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)load(context, "vkCmdSetStencilTestEnableEXT");
    605    vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)load(context, "vkCmdSetViewportWithCountEXT");
    606 #endif /* defined(VK_EXT_extended_dynamic_state) */
    607 #if defined(VK_EXT_extended_dynamic_state2)
    608    vkCmdSetDepthBiasEnableEXT = (PFN_vkCmdSetDepthBiasEnableEXT)load(context, "vkCmdSetDepthBiasEnableEXT");
    609    vkCmdSetLogicOpEXT = (PFN_vkCmdSetLogicOpEXT)load(context, "vkCmdSetLogicOpEXT");
    610    vkCmdSetPatchControlPointsEXT = (PFN_vkCmdSetPatchControlPointsEXT)load(context, "vkCmdSetPatchControlPointsEXT");
    611    vkCmdSetPrimitiveRestartEnableEXT = (PFN_vkCmdSetPrimitiveRestartEnableEXT)load(context, "vkCmdSetPrimitiveRestartEnableEXT");
    612    vkCmdSetRasterizerDiscardEnableEXT = (PFN_vkCmdSetRasterizerDiscardEnableEXT)load(context, "vkCmdSetRasterizerDiscardEnableEXT");
    613 #endif /* defined(VK_EXT_extended_dynamic_state2) */
    614 #if defined(VK_EXT_external_memory_host)
    615    vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)load(context, "vkGetMemoryHostPointerPropertiesEXT");
    616 #endif /* defined(VK_EXT_external_memory_host) */
    617 #if defined(VK_EXT_full_screen_exclusive)
    618    vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)load(context, "vkAcquireFullScreenExclusiveModeEXT");
    619    vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)load(context, "vkReleaseFullScreenExclusiveModeEXT");
    620 #endif /* defined(VK_EXT_full_screen_exclusive) */
    621 #if defined(VK_EXT_hdr_metadata)
    622    vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)load(context, "vkSetHdrMetadataEXT");
    623 #endif /* defined(VK_EXT_hdr_metadata) */
    624 #if defined(VK_EXT_host_query_reset)
    625    vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)load(context, "vkResetQueryPoolEXT");
    626 #endif /* defined(VK_EXT_host_query_reset) */
    627 #if defined(VK_EXT_image_drm_format_modifier)
    628    vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)load(context, "vkGetImageDrmFormatModifierPropertiesEXT");
    629 #endif /* defined(VK_EXT_image_drm_format_modifier) */
    630 #if defined(VK_EXT_line_rasterization)
    631    vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)load(context, "vkCmdSetLineStippleEXT");
    632 #endif /* defined(VK_EXT_line_rasterization) */
    633 #if defined(VK_EXT_multi_draw)
    634    vkCmdDrawMultiEXT = (PFN_vkCmdDrawMultiEXT)load(context, "vkCmdDrawMultiEXT");
    635    vkCmdDrawMultiIndexedEXT = (PFN_vkCmdDrawMultiIndexedEXT)load(context, "vkCmdDrawMultiIndexedEXT");
    636 #endif /* defined(VK_EXT_multi_draw) */
    637 #if defined(VK_EXT_pageable_device_local_memory)
    638    vkSetDeviceMemoryPriorityEXT = (PFN_vkSetDeviceMemoryPriorityEXT)load(context, "vkSetDeviceMemoryPriorityEXT");
    639 #endif /* defined(VK_EXT_pageable_device_local_memory) */
    640 #if defined(VK_EXT_private_data)
    641    vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)load(context, "vkCreatePrivateDataSlotEXT");
    642    vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)load(context, "vkDestroyPrivateDataSlotEXT");
    643    vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)load(context, "vkGetPrivateDataEXT");
    644    vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)load(context, "vkSetPrivateDataEXT");
    645 #endif /* defined(VK_EXT_private_data) */
    646 #if defined(VK_EXT_sample_locations)
    647    vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)load(context, "vkCmdSetSampleLocationsEXT");
    648 #endif /* defined(VK_EXT_sample_locations) */
    649 #if defined(VK_EXT_transform_feedback)
    650    vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)load(context, "vkCmdBeginQueryIndexedEXT");
    651    vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)load(context, "vkCmdBeginTransformFeedbackEXT");
    652    vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)load(context, "vkCmdBindTransformFeedbackBuffersEXT");
    653    vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)load(context, "vkCmdDrawIndirectByteCountEXT");
    654    vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)load(context, "vkCmdEndQueryIndexedEXT");
    655    vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)load(context, "vkCmdEndTransformFeedbackEXT");
    656 #endif /* defined(VK_EXT_transform_feedback) */
    657 #if defined(VK_EXT_validation_cache)
    658    vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)load(context, "vkCreateValidationCacheEXT");
    659    vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)load(context, "vkDestroyValidationCacheEXT");
    660    vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)load(context, "vkGetValidationCacheDataEXT");
    661    vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)load(context, "vkMergeValidationCachesEXT");
    662 #endif /* defined(VK_EXT_validation_cache) */
    663 #if defined(VK_EXT_vertex_input_dynamic_state)
    664    vkCmdSetVertexInputEXT = (PFN_vkCmdSetVertexInputEXT)load(context, "vkCmdSetVertexInputEXT");
    665 #endif /* defined(VK_EXT_vertex_input_dynamic_state) */
    666 #if defined(VK_FUCHSIA_buffer_collection)
    667    vkCreateBufferCollectionFUCHSIA = (PFN_vkCreateBufferCollectionFUCHSIA)load(context, "vkCreateBufferCollectionFUCHSIA");
    668    vkDestroyBufferCollectionFUCHSIA = (PFN_vkDestroyBufferCollectionFUCHSIA)load(context, "vkDestroyBufferCollectionFUCHSIA");
    669    vkGetBufferCollectionPropertiesFUCHSIA = (PFN_vkGetBufferCollectionPropertiesFUCHSIA)load(context, "vkGetBufferCollectionPropertiesFUCHSIA");
    670    vkSetBufferCollectionBufferConstraintsFUCHSIA = (PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA)load(context, "vkSetBufferCollectionBufferConstraintsFUCHSIA");
    671    vkSetBufferCollectionImageConstraintsFUCHSIA = (PFN_vkSetBufferCollectionImageConstraintsFUCHSIA)load(context, "vkSetBufferCollectionImageConstraintsFUCHSIA");
    672 #endif /* defined(VK_FUCHSIA_buffer_collection) */
    673 #if defined(VK_FUCHSIA_external_memory)
    674    vkGetMemoryZirconHandleFUCHSIA = (PFN_vkGetMemoryZirconHandleFUCHSIA)load(context, "vkGetMemoryZirconHandleFUCHSIA");
    675    vkGetMemoryZirconHandlePropertiesFUCHSIA = (PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA)load(context, "vkGetMemoryZirconHandlePropertiesFUCHSIA");
    676 #endif /* defined(VK_FUCHSIA_external_memory) */
    677 #if defined(VK_FUCHSIA_external_semaphore)
    678    vkGetSemaphoreZirconHandleFUCHSIA = (PFN_vkGetSemaphoreZirconHandleFUCHSIA)load(context, "vkGetSemaphoreZirconHandleFUCHSIA");
    679    vkImportSemaphoreZirconHandleFUCHSIA = (PFN_vkImportSemaphoreZirconHandleFUCHSIA)load(context, "vkImportSemaphoreZirconHandleFUCHSIA");
    680 #endif /* defined(VK_FUCHSIA_external_semaphore) */
    681 #if defined(VK_GOOGLE_display_timing)
    682    vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)load(context, "vkGetPastPresentationTimingGOOGLE");
    683    vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)load(context, "vkGetRefreshCycleDurationGOOGLE");
    684 #endif /* defined(VK_GOOGLE_display_timing) */
    685 #if defined(VK_HUAWEI_invocation_mask)
    686    vkCmdBindInvocationMaskHUAWEI = (PFN_vkCmdBindInvocationMaskHUAWEI)load(context, "vkCmdBindInvocationMaskHUAWEI");
    687 #endif /* defined(VK_HUAWEI_invocation_mask) */
    688 #if defined(VK_HUAWEI_subpass_shading)
    689    vkCmdSubpassShadingHUAWEI = (PFN_vkCmdSubpassShadingHUAWEI)load(context, "vkCmdSubpassShadingHUAWEI");
    690    vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = (PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI)load(context, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI");
    691 #endif /* defined(VK_HUAWEI_subpass_shading) */
    692 #if defined(VK_INTEL_performance_query)
    693    vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)load(context, "vkAcquirePerformanceConfigurationINTEL");
    694    vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)load(context, "vkCmdSetPerformanceMarkerINTEL");
    695    vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)load(context, "vkCmdSetPerformanceOverrideINTEL");
    696    vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)load(context, "vkCmdSetPerformanceStreamMarkerINTEL");
    697    vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)load(context, "vkGetPerformanceParameterINTEL");
    698    vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)load(context, "vkInitializePerformanceApiINTEL");
    699    vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)load(context, "vkQueueSetPerformanceConfigurationINTEL");
    700    vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)load(context, "vkReleasePerformanceConfigurationINTEL");
    701    vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)load(context, "vkUninitializePerformanceApiINTEL");
    702 #endif /* defined(VK_INTEL_performance_query) */
    703 #if defined(VK_KHR_acceleration_structure)
    704    vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)load(context, "vkBuildAccelerationStructuresKHR");
    705    vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)load(context, "vkCmdBuildAccelerationStructuresIndirectKHR");
    706    vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)load(context, "vkCmdBuildAccelerationStructuresKHR");
    707    vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)load(context, "vkCmdCopyAccelerationStructureKHR");
    708    vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)load(context, "vkCmdCopyAccelerationStructureToMemoryKHR");
    709    vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)load(context, "vkCmdCopyMemoryToAccelerationStructureKHR");
    710    vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)load(context, "vkCmdWriteAccelerationStructuresPropertiesKHR");
    711    vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)load(context, "vkCopyAccelerationStructureKHR");
    712    vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)load(context, "vkCopyAccelerationStructureToMemoryKHR");
    713    vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)load(context, "vkCopyMemoryToAccelerationStructureKHR");
    714    vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)load(context, "vkCreateAccelerationStructureKHR");
    715    vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)load(context, "vkDestroyAccelerationStructureKHR");
    716    vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)load(context, "vkGetAccelerationStructureBuildSizesKHR");
    717    vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)load(context, "vkGetAccelerationStructureDeviceAddressKHR");
    718    vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)load(context, "vkGetDeviceAccelerationStructureCompatibilityKHR");
    719    vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)load(context, "vkWriteAccelerationStructuresPropertiesKHR");
    720 #endif /* defined(VK_KHR_acceleration_structure) */
    721 #if defined(VK_KHR_bind_memory2)
    722    vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)load(context, "vkBindBufferMemory2KHR");
    723    vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)load(context, "vkBindImageMemory2KHR");
    724 #endif /* defined(VK_KHR_bind_memory2) */
    725 #if defined(VK_KHR_buffer_device_address)
    726    vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)load(context, "vkGetBufferDeviceAddressKHR");
    727    vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)load(context, "vkGetBufferOpaqueCaptureAddressKHR");
    728    vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)load(context, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
    729 #endif /* defined(VK_KHR_buffer_device_address) */
    730 #if defined(VK_KHR_copy_commands2)
    731    vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)load(context, "vkCmdBlitImage2KHR");
    732    vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)load(context, "vkCmdCopyBuffer2KHR");
    733    vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)load(context, "vkCmdCopyBufferToImage2KHR");
    734    vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)load(context, "vkCmdCopyImage2KHR");
    735    vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)load(context, "vkCmdCopyImageToBuffer2KHR");
    736    vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)load(context, "vkCmdResolveImage2KHR");
    737 #endif /* defined(VK_KHR_copy_commands2) */
    738 #if defined(VK_KHR_create_renderpass2)
    739    vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)load(context, "vkCmdBeginRenderPass2KHR");
    740    vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)load(context, "vkCmdEndRenderPass2KHR");
    741    vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)load(context, "vkCmdNextSubpass2KHR");
    742    vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)load(context, "vkCreateRenderPass2KHR");
    743 #endif /* defined(VK_KHR_create_renderpass2) */
    744 #if defined(VK_KHR_deferred_host_operations)
    745    vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)load(context, "vkCreateDeferredOperationKHR");
    746    vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)load(context, "vkDeferredOperationJoinKHR");
    747    vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)load(context, "vkDestroyDeferredOperationKHR");
    748    vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)load(context, "vkGetDeferredOperationMaxConcurrencyKHR");
    749    vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)load(context, "vkGetDeferredOperationResultKHR");
    750 #endif /* defined(VK_KHR_deferred_host_operations) */
    751 #if defined(VK_KHR_descriptor_update_template)
    752    vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)load(context, "vkCreateDescriptorUpdateTemplateKHR");
    753    vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)load(context, "vkDestroyDescriptorUpdateTemplateKHR");
    754    vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)load(context, "vkUpdateDescriptorSetWithTemplateKHR");
    755 #endif /* defined(VK_KHR_descriptor_update_template) */
    756 #if defined(VK_KHR_device_group)
    757    vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)load(context, "vkCmdDispatchBaseKHR");
    758    vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)load(context, "vkCmdSetDeviceMaskKHR");
    759    vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)load(context, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
    760 #endif /* defined(VK_KHR_device_group) */
    761 #if defined(VK_KHR_display_swapchain)
    762    vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)load(context, "vkCreateSharedSwapchainsKHR");
    763 #endif /* defined(VK_KHR_display_swapchain) */
    764 #if defined(VK_KHR_draw_indirect_count)
    765    vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)load(context, "vkCmdDrawIndexedIndirectCountKHR");
    766    vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)load(context, "vkCmdDrawIndirectCountKHR");
    767 #endif /* defined(VK_KHR_draw_indirect_count) */
    768 #if defined(VK_KHR_dynamic_rendering)
    769    vkCmdBeginRenderingKHR = (PFN_vkCmdBeginRenderingKHR)load(context, "vkCmdBeginRenderingKHR");
    770    vkCmdEndRenderingKHR = (PFN_vkCmdEndRenderingKHR)load(context, "vkCmdEndRenderingKHR");
    771 #endif /* defined(VK_KHR_dynamic_rendering) */
    772 #if defined(VK_KHR_external_fence_fd)
    773    vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)load(context, "vkGetFenceFdKHR");
    774    vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)load(context, "vkImportFenceFdKHR");
    775 #endif /* defined(VK_KHR_external_fence_fd) */
    776 #if defined(VK_KHR_external_fence_win32)
    777    vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)load(context, "vkGetFenceWin32HandleKHR");
    778    vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)load(context, "vkImportFenceWin32HandleKHR");
    779 #endif /* defined(VK_KHR_external_fence_win32) */
    780 #if defined(VK_KHR_external_memory_fd)
    781    vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)load(context, "vkGetMemoryFdKHR");
    782    vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)load(context, "vkGetMemoryFdPropertiesKHR");
    783 #endif /* defined(VK_KHR_external_memory_fd) */
    784 #if defined(VK_KHR_external_memory_win32)
    785    vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)load(context, "vkGetMemoryWin32HandleKHR");
    786    vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)load(context, "vkGetMemoryWin32HandlePropertiesKHR");
    787 #endif /* defined(VK_KHR_external_memory_win32) */
    788 #if defined(VK_KHR_external_semaphore_fd)
    789    vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)load(context, "vkGetSemaphoreFdKHR");
    790    vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)load(context, "vkImportSemaphoreFdKHR");
    791 #endif /* defined(VK_KHR_external_semaphore_fd) */
    792 #if defined(VK_KHR_external_semaphore_win32)
    793    vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)load(context, "vkGetSemaphoreWin32HandleKHR");
    794    vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)load(context, "vkImportSemaphoreWin32HandleKHR");
    795 #endif /* defined(VK_KHR_external_semaphore_win32) */
    796 #if defined(VK_KHR_fragment_shading_rate)
    797    vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)load(context, "vkCmdSetFragmentShadingRateKHR");
    798 #endif /* defined(VK_KHR_fragment_shading_rate) */
    799 #if defined(VK_KHR_get_memory_requirements2)
    800    vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)load(context, "vkGetBufferMemoryRequirements2KHR");
    801    vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)load(context, "vkGetImageMemoryRequirements2KHR");
    802    vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)load(context, "vkGetImageSparseMemoryRequirements2KHR");
    803 #endif /* defined(VK_KHR_get_memory_requirements2) */
    804 #if defined(VK_KHR_maintenance1)
    805    vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)load(context, "vkTrimCommandPoolKHR");
    806 #endif /* defined(VK_KHR_maintenance1) */
    807 #if defined(VK_KHR_maintenance3)
    808    vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)load(context, "vkGetDescriptorSetLayoutSupportKHR");
    809 #endif /* defined(VK_KHR_maintenance3) */
    810 #if defined(VK_KHR_maintenance4)
    811    vkGetDeviceBufferMemoryRequirementsKHR = (PFN_vkGetDeviceBufferMemoryRequirementsKHR)load(context, "vkGetDeviceBufferMemoryRequirementsKHR");
    812    vkGetDeviceImageMemoryRequirementsKHR = (PFN_vkGetDeviceImageMemoryRequirementsKHR)load(context, "vkGetDeviceImageMemoryRequirementsKHR");
    813    vkGetDeviceImageSparseMemoryRequirementsKHR = (PFN_vkGetDeviceImageSparseMemoryRequirementsKHR)load(context, "vkGetDeviceImageSparseMemoryRequirementsKHR");
    814 #endif /* defined(VK_KHR_maintenance4) */
    815 #if defined(VK_KHR_performance_query)
    816    vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)load(context, "vkAcquireProfilingLockKHR");
    817    vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)load(context, "vkReleaseProfilingLockKHR");
    818 #endif /* defined(VK_KHR_performance_query) */
    819 #if defined(VK_KHR_pipeline_executable_properties)
    820    vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)load(context, "vkGetPipelineExecutableInternalRepresentationsKHR");
    821    vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)load(context, "vkGetPipelineExecutablePropertiesKHR");
    822    vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)load(context, "vkGetPipelineExecutableStatisticsKHR");
    823 #endif /* defined(VK_KHR_pipeline_executable_properties) */
    824 #if defined(VK_KHR_present_wait)
    825    vkWaitForPresentKHR = (PFN_vkWaitForPresentKHR)load(context, "vkWaitForPresentKHR");
    826 #endif /* defined(VK_KHR_present_wait) */
    827 #if defined(VK_KHR_push_descriptor)
    828    vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)load(context, "vkCmdPushDescriptorSetKHR");
    829 #endif /* defined(VK_KHR_push_descriptor) */
    830 #if defined(VK_KHR_ray_tracing_pipeline)
    831    vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)load(context, "vkCmdSetRayTracingPipelineStackSizeKHR");
    832    vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)load(context, "vkCmdTraceRaysIndirectKHR");
    833    vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)load(context, "vkCmdTraceRaysKHR");
    834    vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)load(context, "vkCreateRayTracingPipelinesKHR");
    835    vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)load(context, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
    836    vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)load(context, "vkGetRayTracingShaderGroupHandlesKHR");
    837    vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)load(context, "vkGetRayTracingShaderGroupStackSizeKHR");
    838 #endif /* defined(VK_KHR_ray_tracing_pipeline) */
    839 #if defined(VK_KHR_sampler_ycbcr_conversion)
    840    vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)load(context, "vkCreateSamplerYcbcrConversionKHR");
    841    vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)load(context, "vkDestroySamplerYcbcrConversionKHR");
    842 #endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
    843 #if defined(VK_KHR_shared_presentable_image)
    844    vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)load(context, "vkGetSwapchainStatusKHR");
    845 #endif /* defined(VK_KHR_shared_presentable_image) */
    846 #if defined(VK_KHR_swapchain)
    847    vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)load(context, "vkAcquireNextImageKHR");
    848    vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)load(context, "vkCreateSwapchainKHR");
    849    vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)load(context, "vkDestroySwapchainKHR");
    850    vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)load(context, "vkGetSwapchainImagesKHR");
    851    vkQueuePresentKHR = (PFN_vkQueuePresentKHR)load(context, "vkQueuePresentKHR");
    852 #endif /* defined(VK_KHR_swapchain) */
    853 #if defined(VK_KHR_synchronization2)
    854    vkCmdPipelineBarrier2KHR = (PFN_vkCmdPipelineBarrier2KHR)load(context, "vkCmdPipelineBarrier2KHR");
    855    vkCmdResetEvent2KHR = (PFN_vkCmdResetEvent2KHR)load(context, "vkCmdResetEvent2KHR");
    856    vkCmdSetEvent2KHR = (PFN_vkCmdSetEvent2KHR)load(context, "vkCmdSetEvent2KHR");
    857    vkCmdWaitEvents2KHR = (PFN_vkCmdWaitEvents2KHR)load(context, "vkCmdWaitEvents2KHR");
    858    vkCmdWriteTimestamp2KHR = (PFN_vkCmdWriteTimestamp2KHR)load(context, "vkCmdWriteTimestamp2KHR");
    859    vkQueueSubmit2KHR = (PFN_vkQueueSubmit2KHR)load(context, "vkQueueSubmit2KHR");
    860 #endif /* defined(VK_KHR_synchronization2) */
    861 #if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
    862    vkCmdWriteBufferMarker2AMD = (PFN_vkCmdWriteBufferMarker2AMD)load(context, "vkCmdWriteBufferMarker2AMD");
    863 #endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
    864 #if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
    865    vkGetQueueCheckpointData2NV = (PFN_vkGetQueueCheckpointData2NV)load(context, "vkGetQueueCheckpointData2NV");
    866 #endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
    867 #if defined(VK_KHR_timeline_semaphore)
    868    vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)load(context, "vkGetSemaphoreCounterValueKHR");
    869    vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)load(context, "vkSignalSemaphoreKHR");
    870    vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)load(context, "vkWaitSemaphoresKHR");
    871 #endif /* defined(VK_KHR_timeline_semaphore) */
    872 #if defined(VK_KHR_video_decode_queue)
    873    vkCmdDecodeVideoKHR = (PFN_vkCmdDecodeVideoKHR)load(context, "vkCmdDecodeVideoKHR");
    874 #endif /* defined(VK_KHR_video_decode_queue) */
    875 #if defined(VK_KHR_video_encode_queue)
    876    vkCmdEncodeVideoKHR = (PFN_vkCmdEncodeVideoKHR)load(context, "vkCmdEncodeVideoKHR");
    877 #endif /* defined(VK_KHR_video_encode_queue) */
    878 #if defined(VK_KHR_video_queue)
    879    vkBindVideoSessionMemoryKHR = (PFN_vkBindVideoSessionMemoryKHR)load(context, "vkBindVideoSessionMemoryKHR");
    880    vkCmdBeginVideoCodingKHR = (PFN_vkCmdBeginVideoCodingKHR)load(context, "vkCmdBeginVideoCodingKHR");
    881    vkCmdControlVideoCodingKHR = (PFN_vkCmdControlVideoCodingKHR)load(context, "vkCmdControlVideoCodingKHR");
    882    vkCmdEndVideoCodingKHR = (PFN_vkCmdEndVideoCodingKHR)load(context, "vkCmdEndVideoCodingKHR");
    883    vkCreateVideoSessionKHR = (PFN_vkCreateVideoSessionKHR)load(context, "vkCreateVideoSessionKHR");
    884    vkCreateVideoSessionParametersKHR = (PFN_vkCreateVideoSessionParametersKHR)load(context, "vkCreateVideoSessionParametersKHR");
    885    vkDestroyVideoSessionKHR = (PFN_vkDestroyVideoSessionKHR)load(context, "vkDestroyVideoSessionKHR");
    886    vkDestroyVideoSessionParametersKHR = (PFN_vkDestroyVideoSessionParametersKHR)load(context, "vkDestroyVideoSessionParametersKHR");
    887    vkGetVideoSessionMemoryRequirementsKHR = (PFN_vkGetVideoSessionMemoryRequirementsKHR)load(context, "vkGetVideoSessionMemoryRequirementsKHR");
    888    vkUpdateVideoSessionParametersKHR = (PFN_vkUpdateVideoSessionParametersKHR)load(context, "vkUpdateVideoSessionParametersKHR");
    889 #endif /* defined(VK_KHR_video_queue) */
    890 #if defined(VK_NVX_binary_import)
    891    vkCmdCuLaunchKernelNVX = (PFN_vkCmdCuLaunchKernelNVX)load(context, "vkCmdCuLaunchKernelNVX");
    892    vkCreateCuFunctionNVX = (PFN_vkCreateCuFunctionNVX)load(context, "vkCreateCuFunctionNVX");
    893    vkCreateCuModuleNVX = (PFN_vkCreateCuModuleNVX)load(context, "vkCreateCuModuleNVX");
    894    vkDestroyCuFunctionNVX = (PFN_vkDestroyCuFunctionNVX)load(context, "vkDestroyCuFunctionNVX");
    895    vkDestroyCuModuleNVX = (PFN_vkDestroyCuModuleNVX)load(context, "vkDestroyCuModuleNVX");
    896 #endif /* defined(VK_NVX_binary_import) */
    897 #if defined(VK_NVX_image_view_handle)
    898    vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)load(context, "vkGetImageViewAddressNVX");
    899    vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)load(context, "vkGetImageViewHandleNVX");
    900 #endif /* defined(VK_NVX_image_view_handle) */
    901 #if defined(VK_NV_clip_space_w_scaling)
    902    vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)load(context, "vkCmdSetViewportWScalingNV");
    903 #endif /* defined(VK_NV_clip_space_w_scaling) */
    904 #if defined(VK_NV_device_diagnostic_checkpoints)
    905    vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)load(context, "vkCmdSetCheckpointNV");
    906    vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)load(context, "vkGetQueueCheckpointDataNV");
    907 #endif /* defined(VK_NV_device_diagnostic_checkpoints) */
    908 #if defined(VK_NV_device_generated_commands)
    909    vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)load(context, "vkCmdBindPipelineShaderGroupNV");
    910    vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)load(context, "vkCmdExecuteGeneratedCommandsNV");
    911    vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)load(context, "vkCmdPreprocessGeneratedCommandsNV");
    912    vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)load(context, "vkCreateIndirectCommandsLayoutNV");
    913    vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)load(context, "vkDestroyIndirectCommandsLayoutNV");
    914    vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)load(context, "vkGetGeneratedCommandsMemoryRequirementsNV");
    915 #endif /* defined(VK_NV_device_generated_commands) */
    916 #if defined(VK_NV_external_memory_rdma)
    917    vkGetMemoryRemoteAddressNV = (PFN_vkGetMemoryRemoteAddressNV)load(context, "vkGetMemoryRemoteAddressNV");
    918 #endif /* defined(VK_NV_external_memory_rdma) */
    919 #if defined(VK_NV_external_memory_win32)
    920    vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)load(context, "vkGetMemoryWin32HandleNV");
    921 #endif /* defined(VK_NV_external_memory_win32) */
    922 #if defined(VK_NV_fragment_shading_rate_enums)
    923    vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)load(context, "vkCmdSetFragmentShadingRateEnumNV");
    924 #endif /* defined(VK_NV_fragment_shading_rate_enums) */
    925 #if defined(VK_NV_mesh_shader)
    926    vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)load(context, "vkCmdDrawMeshTasksIndirectCountNV");
    927    vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)load(context, "vkCmdDrawMeshTasksIndirectNV");
    928    vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)load(context, "vkCmdDrawMeshTasksNV");
    929 #endif /* defined(VK_NV_mesh_shader) */
    930 #if defined(VK_NV_ray_tracing)
    931    vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)load(context, "vkBindAccelerationStructureMemoryNV");
    932    vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)load(context, "vkCmdBuildAccelerationStructureNV");
    933    vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)load(context, "vkCmdCopyAccelerationStructureNV");
    934    vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)load(context, "vkCmdTraceRaysNV");
    935    vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)load(context, "vkCmdWriteAccelerationStructuresPropertiesNV");
    936    vkCompileDeferredNV = (PFN_vkCompileDeferredNV)load(context, "vkCompileDeferredNV");
    937    vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)load(context, "vkCreateAccelerationStructureNV");
    938    vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)load(context, "vkCreateRayTracingPipelinesNV");
    939    vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)load(context, "vkDestroyAccelerationStructureNV");
    940    vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)load(context, "vkGetAccelerationStructureHandleNV");
    941    vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)load(context, "vkGetAccelerationStructureMemoryRequirementsNV");
    942    vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)load(context, "vkGetRayTracingShaderGroupHandlesNV");
    943 #endif /* defined(VK_NV_ray_tracing) */
    944 #if defined(VK_NV_scissor_exclusive)
    945    vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)load(context, "vkCmdSetExclusiveScissorNV");
    946 #endif /* defined(VK_NV_scissor_exclusive) */
    947 #if defined(VK_NV_shading_rate_image)
    948    vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)load(context, "vkCmdBindShadingRateImageNV");
    949    vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)load(context, "vkCmdSetCoarseSampleOrderNV");
    950    vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)load(context, "vkCmdSetViewportShadingRatePaletteNV");
    951 #endif /* defined(VK_NV_shading_rate_image) */
    952 #if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
    953    vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)load(context, "vkGetDeviceGroupSurfacePresentModes2EXT");
    954 #endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
    955 #if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
    956    vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)load(context, "vkCmdPushDescriptorSetWithTemplateKHR");
    957 #endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
    958 #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
    959    vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)load(context, "vkGetDeviceGroupPresentCapabilitiesKHR");
    960    vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)load(context, "vkGetDeviceGroupSurfacePresentModesKHR");
    961 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
    962 #if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
    963    vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)load(context, "vkAcquireNextImage2KHR");
    964 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
    965    /* VOLK_GENERATE_LOAD_DEVICE */
    966 }
    967 
    968 static void volkGenLoadDeviceTable(struct VolkDeviceTable* table, void* context, PFN_vkVoidFunction (*load)(void*, const char*))
    969 {
    970    /* VOLK_GENERATE_LOAD_DEVICE_TABLE */
    971 #if defined(VK_VERSION_1_0)
    972    table->vkAllocateCommandBuffers = (PFN_vkAllocateCommandBuffers)load(context, "vkAllocateCommandBuffers");
    973    table->vkAllocateDescriptorSets = (PFN_vkAllocateDescriptorSets)load(context, "vkAllocateDescriptorSets");
    974    table->vkAllocateMemory = (PFN_vkAllocateMemory)load(context, "vkAllocateMemory");
    975    table->vkBeginCommandBuffer = (PFN_vkBeginCommandBuffer)load(context, "vkBeginCommandBuffer");
    976    table->vkBindBufferMemory = (PFN_vkBindBufferMemory)load(context, "vkBindBufferMemory");
    977    table->vkBindImageMemory = (PFN_vkBindImageMemory)load(context, "vkBindImageMemory");
    978    table->vkCmdBeginQuery = (PFN_vkCmdBeginQuery)load(context, "vkCmdBeginQuery");
    979    table->vkCmdBeginRenderPass = (PFN_vkCmdBeginRenderPass)load(context, "vkCmdBeginRenderPass");
    980    table->vkCmdBindDescriptorSets = (PFN_vkCmdBindDescriptorSets)load(context, "vkCmdBindDescriptorSets");
    981    table->vkCmdBindIndexBuffer = (PFN_vkCmdBindIndexBuffer)load(context, "vkCmdBindIndexBuffer");
    982    table->vkCmdBindPipeline = (PFN_vkCmdBindPipeline)load(context, "vkCmdBindPipeline");
    983    table->vkCmdBindVertexBuffers = (PFN_vkCmdBindVertexBuffers)load(context, "vkCmdBindVertexBuffers");
    984    table->vkCmdBlitImage = (PFN_vkCmdBlitImage)load(context, "vkCmdBlitImage");
    985    table->vkCmdClearAttachments = (PFN_vkCmdClearAttachments)load(context, "vkCmdClearAttachments");
    986    table->vkCmdClearColorImage = (PFN_vkCmdClearColorImage)load(context, "vkCmdClearColorImage");
    987    table->vkCmdClearDepthStencilImage = (PFN_vkCmdClearDepthStencilImage)load(context, "vkCmdClearDepthStencilImage");
    988    table->vkCmdCopyBuffer = (PFN_vkCmdCopyBuffer)load(context, "vkCmdCopyBuffer");
    989    table->vkCmdCopyBufferToImage = (PFN_vkCmdCopyBufferToImage)load(context, "vkCmdCopyBufferToImage");
    990    table->vkCmdCopyImage = (PFN_vkCmdCopyImage)load(context, "vkCmdCopyImage");
    991    table->vkCmdCopyImageToBuffer = (PFN_vkCmdCopyImageToBuffer)load(context, "vkCmdCopyImageToBuffer");
    992    table->vkCmdCopyQueryPoolResults = (PFN_vkCmdCopyQueryPoolResults)load(context, "vkCmdCopyQueryPoolResults");
    993    table->vkCmdDispatch = (PFN_vkCmdDispatch)load(context, "vkCmdDispatch");
    994    table->vkCmdDispatchIndirect = (PFN_vkCmdDispatchIndirect)load(context, "vkCmdDispatchIndirect");
    995    table->vkCmdDraw = (PFN_vkCmdDraw)load(context, "vkCmdDraw");
    996    table->vkCmdDrawIndexed = (PFN_vkCmdDrawIndexed)load(context, "vkCmdDrawIndexed");
    997    table->vkCmdDrawIndexedIndirect = (PFN_vkCmdDrawIndexedIndirect)load(context, "vkCmdDrawIndexedIndirect");
    998    table->vkCmdDrawIndirect = (PFN_vkCmdDrawIndirect)load(context, "vkCmdDrawIndirect");
    999    table->vkCmdEndQuery = (PFN_vkCmdEndQuery)load(context, "vkCmdEndQuery");
   1000    table->vkCmdEndRenderPass = (PFN_vkCmdEndRenderPass)load(context, "vkCmdEndRenderPass");
   1001    table->vkCmdExecuteCommands = (PFN_vkCmdExecuteCommands)load(context, "vkCmdExecuteCommands");
   1002    table->vkCmdFillBuffer = (PFN_vkCmdFillBuffer)load(context, "vkCmdFillBuffer");
   1003    table->vkCmdNextSubpass = (PFN_vkCmdNextSubpass)load(context, "vkCmdNextSubpass");
   1004    table->vkCmdPipelineBarrier = (PFN_vkCmdPipelineBarrier)load(context, "vkCmdPipelineBarrier");
   1005    table->vkCmdPushConstants = (PFN_vkCmdPushConstants)load(context, "vkCmdPushConstants");
   1006    table->vkCmdResetEvent = (PFN_vkCmdResetEvent)load(context, "vkCmdResetEvent");
   1007    table->vkCmdResetQueryPool = (PFN_vkCmdResetQueryPool)load(context, "vkCmdResetQueryPool");
   1008    table->vkCmdResolveImage = (PFN_vkCmdResolveImage)load(context, "vkCmdResolveImage");
   1009    table->vkCmdSetBlendConstants = (PFN_vkCmdSetBlendConstants)load(context, "vkCmdSetBlendConstants");
   1010    table->vkCmdSetDepthBias = (PFN_vkCmdSetDepthBias)load(context, "vkCmdSetDepthBias");
   1011    table->vkCmdSetDepthBounds = (PFN_vkCmdSetDepthBounds)load(context, "vkCmdSetDepthBounds");
   1012    table->vkCmdSetEvent = (PFN_vkCmdSetEvent)load(context, "vkCmdSetEvent");
   1013    table->vkCmdSetLineWidth = (PFN_vkCmdSetLineWidth)load(context, "vkCmdSetLineWidth");
   1014    table->vkCmdSetScissor = (PFN_vkCmdSetScissor)load(context, "vkCmdSetScissor");
   1015    table->vkCmdSetStencilCompareMask = (PFN_vkCmdSetStencilCompareMask)load(context, "vkCmdSetStencilCompareMask");
   1016    table->vkCmdSetStencilReference = (PFN_vkCmdSetStencilReference)load(context, "vkCmdSetStencilReference");
   1017    table->vkCmdSetStencilWriteMask = (PFN_vkCmdSetStencilWriteMask)load(context, "vkCmdSetStencilWriteMask");
   1018    table->vkCmdSetViewport = (PFN_vkCmdSetViewport)load(context, "vkCmdSetViewport");
   1019    table->vkCmdUpdateBuffer = (PFN_vkCmdUpdateBuffer)load(context, "vkCmdUpdateBuffer");
   1020    table->vkCmdWaitEvents = (PFN_vkCmdWaitEvents)load(context, "vkCmdWaitEvents");
   1021    table->vkCmdWriteTimestamp = (PFN_vkCmdWriteTimestamp)load(context, "vkCmdWriteTimestamp");
   1022    table->vkCreateBuffer = (PFN_vkCreateBuffer)load(context, "vkCreateBuffer");
   1023    table->vkCreateBufferView = (PFN_vkCreateBufferView)load(context, "vkCreateBufferView");
   1024    table->vkCreateCommandPool = (PFN_vkCreateCommandPool)load(context, "vkCreateCommandPool");
   1025    table->vkCreateComputePipelines = (PFN_vkCreateComputePipelines)load(context, "vkCreateComputePipelines");
   1026    table->vkCreateDescriptorPool = (PFN_vkCreateDescriptorPool)load(context, "vkCreateDescriptorPool");
   1027    table->vkCreateDescriptorSetLayout = (PFN_vkCreateDescriptorSetLayout)load(context, "vkCreateDescriptorSetLayout");
   1028    table->vkCreateEvent = (PFN_vkCreateEvent)load(context, "vkCreateEvent");
   1029    table->vkCreateFence = (PFN_vkCreateFence)load(context, "vkCreateFence");
   1030    table->vkCreateFramebuffer = (PFN_vkCreateFramebuffer)load(context, "vkCreateFramebuffer");
   1031    table->vkCreateGraphicsPipelines = (PFN_vkCreateGraphicsPipelines)load(context, "vkCreateGraphicsPipelines");
   1032    table->vkCreateImage = (PFN_vkCreateImage)load(context, "vkCreateImage");
   1033    table->vkCreateImageView = (PFN_vkCreateImageView)load(context, "vkCreateImageView");
   1034    table->vkCreatePipelineCache = (PFN_vkCreatePipelineCache)load(context, "vkCreatePipelineCache");
   1035    table->vkCreatePipelineLayout = (PFN_vkCreatePipelineLayout)load(context, "vkCreatePipelineLayout");
   1036    table->vkCreateQueryPool = (PFN_vkCreateQueryPool)load(context, "vkCreateQueryPool");
   1037    table->vkCreateRenderPass = (PFN_vkCreateRenderPass)load(context, "vkCreateRenderPass");
   1038    table->vkCreateSampler = (PFN_vkCreateSampler)load(context, "vkCreateSampler");
   1039    table->vkCreateSemaphore = (PFN_vkCreateSemaphore)load(context, "vkCreateSemaphore");
   1040    table->vkCreateShaderModule = (PFN_vkCreateShaderModule)load(context, "vkCreateShaderModule");
   1041    table->vkDestroyBuffer = (PFN_vkDestroyBuffer)load(context, "vkDestroyBuffer");
   1042    table->vkDestroyBufferView = (PFN_vkDestroyBufferView)load(context, "vkDestroyBufferView");
   1043    table->vkDestroyCommandPool = (PFN_vkDestroyCommandPool)load(context, "vkDestroyCommandPool");
   1044    table->vkDestroyDescriptorPool = (PFN_vkDestroyDescriptorPool)load(context, "vkDestroyDescriptorPool");
   1045    table->vkDestroyDescriptorSetLayout = (PFN_vkDestroyDescriptorSetLayout)load(context, "vkDestroyDescriptorSetLayout");
   1046    table->vkDestroyDevice = (PFN_vkDestroyDevice)load(context, "vkDestroyDevice");
   1047    table->vkDestroyEvent = (PFN_vkDestroyEvent)load(context, "vkDestroyEvent");
   1048    table->vkDestroyFence = (PFN_vkDestroyFence)load(context, "vkDestroyFence");
   1049    table->vkDestroyFramebuffer = (PFN_vkDestroyFramebuffer)load(context, "vkDestroyFramebuffer");
   1050    table->vkDestroyImage = (PFN_vkDestroyImage)load(context, "vkDestroyImage");
   1051    table->vkDestroyImageView = (PFN_vkDestroyImageView)load(context, "vkDestroyImageView");
   1052    table->vkDestroyPipeline = (PFN_vkDestroyPipeline)load(context, "vkDestroyPipeline");
   1053    table->vkDestroyPipelineCache = (PFN_vkDestroyPipelineCache)load(context, "vkDestroyPipelineCache");
   1054    table->vkDestroyPipelineLayout = (PFN_vkDestroyPipelineLayout)load(context, "vkDestroyPipelineLayout");
   1055    table->vkDestroyQueryPool = (PFN_vkDestroyQueryPool)load(context, "vkDestroyQueryPool");
   1056    table->vkDestroyRenderPass = (PFN_vkDestroyRenderPass)load(context, "vkDestroyRenderPass");
   1057    table->vkDestroySampler = (PFN_vkDestroySampler)load(context, "vkDestroySampler");
   1058    table->vkDestroySemaphore = (PFN_vkDestroySemaphore)load(context, "vkDestroySemaphore");
   1059    table->vkDestroyShaderModule = (PFN_vkDestroyShaderModule)load(context, "vkDestroyShaderModule");
   1060    table->vkDeviceWaitIdle = (PFN_vkDeviceWaitIdle)load(context, "vkDeviceWaitIdle");
   1061    table->vkEndCommandBuffer = (PFN_vkEndCommandBuffer)load(context, "vkEndCommandBuffer");
   1062    table->vkFlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges)load(context, "vkFlushMappedMemoryRanges");
   1063    table->vkFreeCommandBuffers = (PFN_vkFreeCommandBuffers)load(context, "vkFreeCommandBuffers");
   1064    table->vkFreeDescriptorSets = (PFN_vkFreeDescriptorSets)load(context, "vkFreeDescriptorSets");
   1065    table->vkFreeMemory = (PFN_vkFreeMemory)load(context, "vkFreeMemory");
   1066    table->vkGetBufferMemoryRequirements = (PFN_vkGetBufferMemoryRequirements)load(context, "vkGetBufferMemoryRequirements");
   1067    table->vkGetDeviceMemoryCommitment = (PFN_vkGetDeviceMemoryCommitment)load(context, "vkGetDeviceMemoryCommitment");
   1068    table->vkGetDeviceQueue = (PFN_vkGetDeviceQueue)load(context, "vkGetDeviceQueue");
   1069    table->vkGetEventStatus = (PFN_vkGetEventStatus)load(context, "vkGetEventStatus");
   1070    table->vkGetFenceStatus = (PFN_vkGetFenceStatus)load(context, "vkGetFenceStatus");
   1071    table->vkGetImageMemoryRequirements = (PFN_vkGetImageMemoryRequirements)load(context, "vkGetImageMemoryRequirements");
   1072    table->vkGetImageSparseMemoryRequirements = (PFN_vkGetImageSparseMemoryRequirements)load(context, "vkGetImageSparseMemoryRequirements");
   1073    table->vkGetImageSubresourceLayout = (PFN_vkGetImageSubresourceLayout)load(context, "vkGetImageSubresourceLayout");
   1074    table->vkGetPipelineCacheData = (PFN_vkGetPipelineCacheData)load(context, "vkGetPipelineCacheData");
   1075    table->vkGetQueryPoolResults = (PFN_vkGetQueryPoolResults)load(context, "vkGetQueryPoolResults");
   1076    table->vkGetRenderAreaGranularity = (PFN_vkGetRenderAreaGranularity)load(context, "vkGetRenderAreaGranularity");
   1077    table->vkInvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges)load(context, "vkInvalidateMappedMemoryRanges");
   1078    table->vkMapMemory = (PFN_vkMapMemory)load(context, "vkMapMemory");
   1079    table->vkMergePipelineCaches = (PFN_vkMergePipelineCaches)load(context, "vkMergePipelineCaches");
   1080    table->vkQueueBindSparse = (PFN_vkQueueBindSparse)load(context, "vkQueueBindSparse");
   1081    table->vkQueueSubmit = (PFN_vkQueueSubmit)load(context, "vkQueueSubmit");
   1082    table->vkQueueWaitIdle = (PFN_vkQueueWaitIdle)load(context, "vkQueueWaitIdle");
   1083    table->vkResetCommandBuffer = (PFN_vkResetCommandBuffer)load(context, "vkResetCommandBuffer");
   1084    table->vkResetCommandPool = (PFN_vkResetCommandPool)load(context, "vkResetCommandPool");
   1085    table->vkResetDescriptorPool = (PFN_vkResetDescriptorPool)load(context, "vkResetDescriptorPool");
   1086    table->vkResetEvent = (PFN_vkResetEvent)load(context, "vkResetEvent");
   1087    table->vkResetFences = (PFN_vkResetFences)load(context, "vkResetFences");
   1088    table->vkSetEvent = (PFN_vkSetEvent)load(context, "vkSetEvent");
   1089    table->vkUnmapMemory = (PFN_vkUnmapMemory)load(context, "vkUnmapMemory");
   1090    table->vkUpdateDescriptorSets = (PFN_vkUpdateDescriptorSets)load(context, "vkUpdateDescriptorSets");
   1091    table->vkWaitForFences = (PFN_vkWaitForFences)load(context, "vkWaitForFences");
   1092 #endif /* defined(VK_VERSION_1_0) */
   1093 #if defined(VK_VERSION_1_1)
   1094    table->vkBindBufferMemory2 = (PFN_vkBindBufferMemory2)load(context, "vkBindBufferMemory2");
   1095    table->vkBindImageMemory2 = (PFN_vkBindImageMemory2)load(context, "vkBindImageMemory2");
   1096    table->vkCmdDispatchBase = (PFN_vkCmdDispatchBase)load(context, "vkCmdDispatchBase");
   1097    table->vkCmdSetDeviceMask = (PFN_vkCmdSetDeviceMask)load(context, "vkCmdSetDeviceMask");
   1098    table->vkCreateDescriptorUpdateTemplate = (PFN_vkCreateDescriptorUpdateTemplate)load(context, "vkCreateDescriptorUpdateTemplate");
   1099    table->vkCreateSamplerYcbcrConversion = (PFN_vkCreateSamplerYcbcrConversion)load(context, "vkCreateSamplerYcbcrConversion");
   1100    table->vkDestroyDescriptorUpdateTemplate = (PFN_vkDestroyDescriptorUpdateTemplate)load(context, "vkDestroyDescriptorUpdateTemplate");
   1101    table->vkDestroySamplerYcbcrConversion = (PFN_vkDestroySamplerYcbcrConversion)load(context, "vkDestroySamplerYcbcrConversion");
   1102    table->vkGetBufferMemoryRequirements2 = (PFN_vkGetBufferMemoryRequirements2)load(context, "vkGetBufferMemoryRequirements2");
   1103    table->vkGetDescriptorSetLayoutSupport = (PFN_vkGetDescriptorSetLayoutSupport)load(context, "vkGetDescriptorSetLayoutSupport");
   1104    table->vkGetDeviceGroupPeerMemoryFeatures = (PFN_vkGetDeviceGroupPeerMemoryFeatures)load(context, "vkGetDeviceGroupPeerMemoryFeatures");
   1105    table->vkGetDeviceQueue2 = (PFN_vkGetDeviceQueue2)load(context, "vkGetDeviceQueue2");
   1106    table->vkGetImageMemoryRequirements2 = (PFN_vkGetImageMemoryRequirements2)load(context, "vkGetImageMemoryRequirements2");
   1107    table->vkGetImageSparseMemoryRequirements2 = (PFN_vkGetImageSparseMemoryRequirements2)load(context, "vkGetImageSparseMemoryRequirements2");
   1108    table->vkTrimCommandPool = (PFN_vkTrimCommandPool)load(context, "vkTrimCommandPool");
   1109    table->vkUpdateDescriptorSetWithTemplate = (PFN_vkUpdateDescriptorSetWithTemplate)load(context, "vkUpdateDescriptorSetWithTemplate");
   1110 #endif /* defined(VK_VERSION_1_1) */
   1111 #if defined(VK_VERSION_1_2)
   1112    table->vkCmdBeginRenderPass2 = (PFN_vkCmdBeginRenderPass2)load(context, "vkCmdBeginRenderPass2");
   1113    table->vkCmdDrawIndexedIndirectCount = (PFN_vkCmdDrawIndexedIndirectCount)load(context, "vkCmdDrawIndexedIndirectCount");
   1114    table->vkCmdDrawIndirectCount = (PFN_vkCmdDrawIndirectCount)load(context, "vkCmdDrawIndirectCount");
   1115    table->vkCmdEndRenderPass2 = (PFN_vkCmdEndRenderPass2)load(context, "vkCmdEndRenderPass2");
   1116    table->vkCmdNextSubpass2 = (PFN_vkCmdNextSubpass2)load(context, "vkCmdNextSubpass2");
   1117    table->vkCreateRenderPass2 = (PFN_vkCreateRenderPass2)load(context, "vkCreateRenderPass2");
   1118    table->vkGetBufferDeviceAddress = (PFN_vkGetBufferDeviceAddress)load(context, "vkGetBufferDeviceAddress");
   1119    table->vkGetBufferOpaqueCaptureAddress = (PFN_vkGetBufferOpaqueCaptureAddress)load(context, "vkGetBufferOpaqueCaptureAddress");
   1120    table->vkGetDeviceMemoryOpaqueCaptureAddress = (PFN_vkGetDeviceMemoryOpaqueCaptureAddress)load(context, "vkGetDeviceMemoryOpaqueCaptureAddress");
   1121    table->vkGetSemaphoreCounterValue = (PFN_vkGetSemaphoreCounterValue)load(context, "vkGetSemaphoreCounterValue");
   1122    table->vkResetQueryPool = (PFN_vkResetQueryPool)load(context, "vkResetQueryPool");
   1123    table->vkSignalSemaphore = (PFN_vkSignalSemaphore)load(context, "vkSignalSemaphore");
   1124    table->vkWaitSemaphores = (PFN_vkWaitSemaphores)load(context, "vkWaitSemaphores");
   1125 #endif /* defined(VK_VERSION_1_2) */
   1126 #if defined(VK_VERSION_1_3)
   1127    table->vkCmdBeginRendering = (PFN_vkCmdBeginRendering)load(context, "vkCmdBeginRendering");
   1128    table->vkCmdBindVertexBuffers2 = (PFN_vkCmdBindVertexBuffers2)load(context, "vkCmdBindVertexBuffers2");
   1129    table->vkCmdBlitImage2 = (PFN_vkCmdBlitImage2)load(context, "vkCmdBlitImage2");
   1130    table->vkCmdCopyBuffer2 = (PFN_vkCmdCopyBuffer2)load(context, "vkCmdCopyBuffer2");
   1131    table->vkCmdCopyBufferToImage2 = (PFN_vkCmdCopyBufferToImage2)load(context, "vkCmdCopyBufferToImage2");
   1132    table->vkCmdCopyImage2 = (PFN_vkCmdCopyImage2)load(context, "vkCmdCopyImage2");
   1133    table->vkCmdCopyImageToBuffer2 = (PFN_vkCmdCopyImageToBuffer2)load(context, "vkCmdCopyImageToBuffer2");
   1134    table->vkCmdEndRendering = (PFN_vkCmdEndRendering)load(context, "vkCmdEndRendering");
   1135    table->vkCmdPipelineBarrier2 = (PFN_vkCmdPipelineBarrier2)load(context, "vkCmdPipelineBarrier2");
   1136    table->vkCmdResetEvent2 = (PFN_vkCmdResetEvent2)load(context, "vkCmdResetEvent2");
   1137    table->vkCmdResolveImage2 = (PFN_vkCmdResolveImage2)load(context, "vkCmdResolveImage2");
   1138    table->vkCmdSetCullMode = (PFN_vkCmdSetCullMode)load(context, "vkCmdSetCullMode");
   1139    table->vkCmdSetDepthBiasEnable = (PFN_vkCmdSetDepthBiasEnable)load(context, "vkCmdSetDepthBiasEnable");
   1140    table->vkCmdSetDepthBoundsTestEnable = (PFN_vkCmdSetDepthBoundsTestEnable)load(context, "vkCmdSetDepthBoundsTestEnable");
   1141    table->vkCmdSetDepthCompareOp = (PFN_vkCmdSetDepthCompareOp)load(context, "vkCmdSetDepthCompareOp");
   1142    table->vkCmdSetDepthTestEnable = (PFN_vkCmdSetDepthTestEnable)load(context, "vkCmdSetDepthTestEnable");
   1143    table->vkCmdSetDepthWriteEnable = (PFN_vkCmdSetDepthWriteEnable)load(context, "vkCmdSetDepthWriteEnable");
   1144    table->vkCmdSetEvent2 = (PFN_vkCmdSetEvent2)load(context, "vkCmdSetEvent2");
   1145    table->vkCmdSetFrontFace = (PFN_vkCmdSetFrontFace)load(context, "vkCmdSetFrontFace");
   1146    table->vkCmdSetPrimitiveRestartEnable = (PFN_vkCmdSetPrimitiveRestartEnable)load(context, "vkCmdSetPrimitiveRestartEnable");
   1147    table->vkCmdSetPrimitiveTopology = (PFN_vkCmdSetPrimitiveTopology)load(context, "vkCmdSetPrimitiveTopology");
   1148    table->vkCmdSetRasterizerDiscardEnable = (PFN_vkCmdSetRasterizerDiscardEnable)load(context, "vkCmdSetRasterizerDiscardEnable");
   1149    table->vkCmdSetScissorWithCount = (PFN_vkCmdSetScissorWithCount)load(context, "vkCmdSetScissorWithCount");
   1150    table->vkCmdSetStencilOp = (PFN_vkCmdSetStencilOp)load(context, "vkCmdSetStencilOp");
   1151    table->vkCmdSetStencilTestEnable = (PFN_vkCmdSetStencilTestEnable)load(context, "vkCmdSetStencilTestEnable");
   1152    table->vkCmdSetViewportWithCount = (PFN_vkCmdSetViewportWithCount)load(context, "vkCmdSetViewportWithCount");
   1153    table->vkCmdWaitEvents2 = (PFN_vkCmdWaitEvents2)load(context, "vkCmdWaitEvents2");
   1154    table->vkCmdWriteTimestamp2 = (PFN_vkCmdWriteTimestamp2)load(context, "vkCmdWriteTimestamp2");
   1155    table->vkCreatePrivateDataSlot = (PFN_vkCreatePrivateDataSlot)load(context, "vkCreatePrivateDataSlot");
   1156    table->vkDestroyPrivateDataSlot = (PFN_vkDestroyPrivateDataSlot)load(context, "vkDestroyPrivateDataSlot");
   1157    table->vkGetDeviceBufferMemoryRequirements = (PFN_vkGetDeviceBufferMemoryRequirements)load(context, "vkGetDeviceBufferMemoryRequirements");
   1158    table->vkGetDeviceImageMemoryRequirements = (PFN_vkGetDeviceImageMemoryRequirements)load(context, "vkGetDeviceImageMemoryRequirements");
   1159    table->vkGetDeviceImageSparseMemoryRequirements = (PFN_vkGetDeviceImageSparseMemoryRequirements)load(context, "vkGetDeviceImageSparseMemoryRequirements");
   1160    table->vkGetPrivateData = (PFN_vkGetPrivateData)load(context, "vkGetPrivateData");
   1161    table->vkQueueSubmit2 = (PFN_vkQueueSubmit2)load(context, "vkQueueSubmit2");
   1162    table->vkSetPrivateData = (PFN_vkSetPrivateData)load(context, "vkSetPrivateData");
   1163 #endif /* defined(VK_VERSION_1_3) */
   1164 #if defined(VK_AMD_buffer_marker)
   1165    table->vkCmdWriteBufferMarkerAMD = (PFN_vkCmdWriteBufferMarkerAMD)load(context, "vkCmdWriteBufferMarkerAMD");
   1166 #endif /* defined(VK_AMD_buffer_marker) */
   1167 #if defined(VK_AMD_display_native_hdr)
   1168    table->vkSetLocalDimmingAMD = (PFN_vkSetLocalDimmingAMD)load(context, "vkSetLocalDimmingAMD");
   1169 #endif /* defined(VK_AMD_display_native_hdr) */
   1170 #if defined(VK_AMD_draw_indirect_count)
   1171    table->vkCmdDrawIndexedIndirectCountAMD = (PFN_vkCmdDrawIndexedIndirectCountAMD)load(context, "vkCmdDrawIndexedIndirectCountAMD");
   1172    table->vkCmdDrawIndirectCountAMD = (PFN_vkCmdDrawIndirectCountAMD)load(context, "vkCmdDrawIndirectCountAMD");
   1173 #endif /* defined(VK_AMD_draw_indirect_count) */
   1174 #if defined(VK_AMD_shader_info)
   1175    table->vkGetShaderInfoAMD = (PFN_vkGetShaderInfoAMD)load(context, "vkGetShaderInfoAMD");
   1176 #endif /* defined(VK_AMD_shader_info) */
   1177 #if defined(VK_ANDROID_external_memory_android_hardware_buffer)
   1178    table->vkGetAndroidHardwareBufferPropertiesANDROID = (PFN_vkGetAndroidHardwareBufferPropertiesANDROID)load(context, "vkGetAndroidHardwareBufferPropertiesANDROID");
   1179    table->vkGetMemoryAndroidHardwareBufferANDROID = (PFN_vkGetMemoryAndroidHardwareBufferANDROID)load(context, "vkGetMemoryAndroidHardwareBufferANDROID");
   1180 #endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
   1181 #if defined(VK_EXT_buffer_device_address)
   1182    table->vkGetBufferDeviceAddressEXT = (PFN_vkGetBufferDeviceAddressEXT)load(context, "vkGetBufferDeviceAddressEXT");
   1183 #endif /* defined(VK_EXT_buffer_device_address) */
   1184 #if defined(VK_EXT_calibrated_timestamps)
   1185    table->vkGetCalibratedTimestampsEXT = (PFN_vkGetCalibratedTimestampsEXT)load(context, "vkGetCalibratedTimestampsEXT");
   1186 #endif /* defined(VK_EXT_calibrated_timestamps) */
   1187 #if defined(VK_EXT_color_write_enable)
   1188    table->vkCmdSetColorWriteEnableEXT = (PFN_vkCmdSetColorWriteEnableEXT)load(context, "vkCmdSetColorWriteEnableEXT");
   1189 #endif /* defined(VK_EXT_color_write_enable) */
   1190 #if defined(VK_EXT_conditional_rendering)
   1191    table->vkCmdBeginConditionalRenderingEXT = (PFN_vkCmdBeginConditionalRenderingEXT)load(context, "vkCmdBeginConditionalRenderingEXT");
   1192    table->vkCmdEndConditionalRenderingEXT = (PFN_vkCmdEndConditionalRenderingEXT)load(context, "vkCmdEndConditionalRenderingEXT");
   1193 #endif /* defined(VK_EXT_conditional_rendering) */
   1194 #if defined(VK_EXT_debug_marker)
   1195    table->vkCmdDebugMarkerBeginEXT = (PFN_vkCmdDebugMarkerBeginEXT)load(context, "vkCmdDebugMarkerBeginEXT");
   1196    table->vkCmdDebugMarkerEndEXT = (PFN_vkCmdDebugMarkerEndEXT)load(context, "vkCmdDebugMarkerEndEXT");
   1197    table->vkCmdDebugMarkerInsertEXT = (PFN_vkCmdDebugMarkerInsertEXT)load(context, "vkCmdDebugMarkerInsertEXT");
   1198    table->vkDebugMarkerSetObjectNameEXT = (PFN_vkDebugMarkerSetObjectNameEXT)load(context, "vkDebugMarkerSetObjectNameEXT");
   1199    table->vkDebugMarkerSetObjectTagEXT = (PFN_vkDebugMarkerSetObjectTagEXT)load(context, "vkDebugMarkerSetObjectTagEXT");
   1200 #endif /* defined(VK_EXT_debug_marker) */
   1201 #if defined(VK_EXT_discard_rectangles)
   1202    table->vkCmdSetDiscardRectangleEXT = (PFN_vkCmdSetDiscardRectangleEXT)load(context, "vkCmdSetDiscardRectangleEXT");
   1203 #endif /* defined(VK_EXT_discard_rectangles) */
   1204 #if defined(VK_EXT_display_control)
   1205    table->vkDisplayPowerControlEXT = (PFN_vkDisplayPowerControlEXT)load(context, "vkDisplayPowerControlEXT");
   1206    table->vkGetSwapchainCounterEXT = (PFN_vkGetSwapchainCounterEXT)load(context, "vkGetSwapchainCounterEXT");
   1207    table->vkRegisterDeviceEventEXT = (PFN_vkRegisterDeviceEventEXT)load(context, "vkRegisterDeviceEventEXT");
   1208    table->vkRegisterDisplayEventEXT = (PFN_vkRegisterDisplayEventEXT)load(context, "vkRegisterDisplayEventEXT");
   1209 #endif /* defined(VK_EXT_display_control) */
   1210 #if defined(VK_EXT_extended_dynamic_state)
   1211    table->vkCmdBindVertexBuffers2EXT = (PFN_vkCmdBindVertexBuffers2EXT)load(context, "vkCmdBindVertexBuffers2EXT");
   1212    table->vkCmdSetCullModeEXT = (PFN_vkCmdSetCullModeEXT)load(context, "vkCmdSetCullModeEXT");
   1213    table->vkCmdSetDepthBoundsTestEnableEXT = (PFN_vkCmdSetDepthBoundsTestEnableEXT)load(context, "vkCmdSetDepthBoundsTestEnableEXT");
   1214    table->vkCmdSetDepthCompareOpEXT = (PFN_vkCmdSetDepthCompareOpEXT)load(context, "vkCmdSetDepthCompareOpEXT");
   1215    table->vkCmdSetDepthTestEnableEXT = (PFN_vkCmdSetDepthTestEnableEXT)load(context, "vkCmdSetDepthTestEnableEXT");
   1216    table->vkCmdSetDepthWriteEnableEXT = (PFN_vkCmdSetDepthWriteEnableEXT)load(context, "vkCmdSetDepthWriteEnableEXT");
   1217    table->vkCmdSetFrontFaceEXT = (PFN_vkCmdSetFrontFaceEXT)load(context, "vkCmdSetFrontFaceEXT");
   1218    table->vkCmdSetPrimitiveTopologyEXT = (PFN_vkCmdSetPrimitiveTopologyEXT)load(context, "vkCmdSetPrimitiveTopologyEXT");
   1219    table->vkCmdSetScissorWithCountEXT = (PFN_vkCmdSetScissorWithCountEXT)load(context, "vkCmdSetScissorWithCountEXT");
   1220    table->vkCmdSetStencilOpEXT = (PFN_vkCmdSetStencilOpEXT)load(context, "vkCmdSetStencilOpEXT");
   1221    table->vkCmdSetStencilTestEnableEXT = (PFN_vkCmdSetStencilTestEnableEXT)load(context, "vkCmdSetStencilTestEnableEXT");
   1222    table->vkCmdSetViewportWithCountEXT = (PFN_vkCmdSetViewportWithCountEXT)load(context, "vkCmdSetViewportWithCountEXT");
   1223 #endif /* defined(VK_EXT_extended_dynamic_state) */
   1224 #if defined(VK_EXT_extended_dynamic_state2)
   1225    table->vkCmdSetDepthBiasEnableEXT = (PFN_vkCmdSetDepthBiasEnableEXT)load(context, "vkCmdSetDepthBiasEnableEXT");
   1226    table->vkCmdSetLogicOpEXT = (PFN_vkCmdSetLogicOpEXT)load(context, "vkCmdSetLogicOpEXT");
   1227    table->vkCmdSetPatchControlPointsEXT = (PFN_vkCmdSetPatchControlPointsEXT)load(context, "vkCmdSetPatchControlPointsEXT");
   1228    table->vkCmdSetPrimitiveRestartEnableEXT = (PFN_vkCmdSetPrimitiveRestartEnableEXT)load(context, "vkCmdSetPrimitiveRestartEnableEXT");
   1229    table->vkCmdSetRasterizerDiscardEnableEXT = (PFN_vkCmdSetRasterizerDiscardEnableEXT)load(context, "vkCmdSetRasterizerDiscardEnableEXT");
   1230 #endif /* defined(VK_EXT_extended_dynamic_state2) */
   1231 #if defined(VK_EXT_external_memory_host)
   1232    table->vkGetMemoryHostPointerPropertiesEXT = (PFN_vkGetMemoryHostPointerPropertiesEXT)load(context, "vkGetMemoryHostPointerPropertiesEXT");
   1233 #endif /* defined(VK_EXT_external_memory_host) */
   1234 #if defined(VK_EXT_full_screen_exclusive)
   1235    table->vkAcquireFullScreenExclusiveModeEXT = (PFN_vkAcquireFullScreenExclusiveModeEXT)load(context, "vkAcquireFullScreenExclusiveModeEXT");
   1236    table->vkReleaseFullScreenExclusiveModeEXT = (PFN_vkReleaseFullScreenExclusiveModeEXT)load(context, "vkReleaseFullScreenExclusiveModeEXT");
   1237 #endif /* defined(VK_EXT_full_screen_exclusive) */
   1238 #if defined(VK_EXT_hdr_metadata)
   1239    table->vkSetHdrMetadataEXT = (PFN_vkSetHdrMetadataEXT)load(context, "vkSetHdrMetadataEXT");
   1240 #endif /* defined(VK_EXT_hdr_metadata) */
   1241 #if defined(VK_EXT_host_query_reset)
   1242    table->vkResetQueryPoolEXT = (PFN_vkResetQueryPoolEXT)load(context, "vkResetQueryPoolEXT");
   1243 #endif /* defined(VK_EXT_host_query_reset) */
   1244 #if defined(VK_EXT_image_drm_format_modifier)
   1245    table->vkGetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)load(context, "vkGetImageDrmFormatModifierPropertiesEXT");
   1246 #endif /* defined(VK_EXT_image_drm_format_modifier) */
   1247 #if defined(VK_EXT_line_rasterization)
   1248    table->vkCmdSetLineStippleEXT = (PFN_vkCmdSetLineStippleEXT)load(context, "vkCmdSetLineStippleEXT");
   1249 #endif /* defined(VK_EXT_line_rasterization) */
   1250 #if defined(VK_EXT_multi_draw)
   1251    table->vkCmdDrawMultiEXT = (PFN_vkCmdDrawMultiEXT)load(context, "vkCmdDrawMultiEXT");
   1252    table->vkCmdDrawMultiIndexedEXT = (PFN_vkCmdDrawMultiIndexedEXT)load(context, "vkCmdDrawMultiIndexedEXT");
   1253 #endif /* defined(VK_EXT_multi_draw) */
   1254 #if defined(VK_EXT_pageable_device_local_memory)
   1255    table->vkSetDeviceMemoryPriorityEXT = (PFN_vkSetDeviceMemoryPriorityEXT)load(context, "vkSetDeviceMemoryPriorityEXT");
   1256 #endif /* defined(VK_EXT_pageable_device_local_memory) */
   1257 #if defined(VK_EXT_private_data)
   1258    table->vkCreatePrivateDataSlotEXT = (PFN_vkCreatePrivateDataSlotEXT)load(context, "vkCreatePrivateDataSlotEXT");
   1259    table->vkDestroyPrivateDataSlotEXT = (PFN_vkDestroyPrivateDataSlotEXT)load(context, "vkDestroyPrivateDataSlotEXT");
   1260    table->vkGetPrivateDataEXT = (PFN_vkGetPrivateDataEXT)load(context, "vkGetPrivateDataEXT");
   1261    table->vkSetPrivateDataEXT = (PFN_vkSetPrivateDataEXT)load(context, "vkSetPrivateDataEXT");
   1262 #endif /* defined(VK_EXT_private_data) */
   1263 #if defined(VK_EXT_sample_locations)
   1264    table->vkCmdSetSampleLocationsEXT = (PFN_vkCmdSetSampleLocationsEXT)load(context, "vkCmdSetSampleLocationsEXT");
   1265 #endif /* defined(VK_EXT_sample_locations) */
   1266 #if defined(VK_EXT_transform_feedback)
   1267    table->vkCmdBeginQueryIndexedEXT = (PFN_vkCmdBeginQueryIndexedEXT)load(context, "vkCmdBeginQueryIndexedEXT");
   1268    table->vkCmdBeginTransformFeedbackEXT = (PFN_vkCmdBeginTransformFeedbackEXT)load(context, "vkCmdBeginTransformFeedbackEXT");
   1269    table->vkCmdBindTransformFeedbackBuffersEXT = (PFN_vkCmdBindTransformFeedbackBuffersEXT)load(context, "vkCmdBindTransformFeedbackBuffersEXT");
   1270    table->vkCmdDrawIndirectByteCountEXT = (PFN_vkCmdDrawIndirectByteCountEXT)load(context, "vkCmdDrawIndirectByteCountEXT");
   1271    table->vkCmdEndQueryIndexedEXT = (PFN_vkCmdEndQueryIndexedEXT)load(context, "vkCmdEndQueryIndexedEXT");
   1272    table->vkCmdEndTransformFeedbackEXT = (PFN_vkCmdEndTransformFeedbackEXT)load(context, "vkCmdEndTransformFeedbackEXT");
   1273 #endif /* defined(VK_EXT_transform_feedback) */
   1274 #if defined(VK_EXT_validation_cache)
   1275    table->vkCreateValidationCacheEXT = (PFN_vkCreateValidationCacheEXT)load(context, "vkCreateValidationCacheEXT");
   1276    table->vkDestroyValidationCacheEXT = (PFN_vkDestroyValidationCacheEXT)load(context, "vkDestroyValidationCacheEXT");
   1277    table->vkGetValidationCacheDataEXT = (PFN_vkGetValidationCacheDataEXT)load(context, "vkGetValidationCacheDataEXT");
   1278    table->vkMergeValidationCachesEXT = (PFN_vkMergeValidationCachesEXT)load(context, "vkMergeValidationCachesEXT");
   1279 #endif /* defined(VK_EXT_validation_cache) */
   1280 #if defined(VK_EXT_vertex_input_dynamic_state)
   1281    table->vkCmdSetVertexInputEXT = (PFN_vkCmdSetVertexInputEXT)load(context, "vkCmdSetVertexInputEXT");
   1282 #endif /* defined(VK_EXT_vertex_input_dynamic_state) */
   1283 #if defined(VK_FUCHSIA_buffer_collection)
   1284    table->vkCreateBufferCollectionFUCHSIA = (PFN_vkCreateBufferCollectionFUCHSIA)load(context, "vkCreateBufferCollectionFUCHSIA");
   1285    table->vkDestroyBufferCollectionFUCHSIA = (PFN_vkDestroyBufferCollectionFUCHSIA)load(context, "vkDestroyBufferCollectionFUCHSIA");
   1286    table->vkGetBufferCollectionPropertiesFUCHSIA = (PFN_vkGetBufferCollectionPropertiesFUCHSIA)load(context, "vkGetBufferCollectionPropertiesFUCHSIA");
   1287    table->vkSetBufferCollectionBufferConstraintsFUCHSIA = (PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA)load(context, "vkSetBufferCollectionBufferConstraintsFUCHSIA");
   1288    table->vkSetBufferCollectionImageConstraintsFUCHSIA = (PFN_vkSetBufferCollectionImageConstraintsFUCHSIA)load(context, "vkSetBufferCollectionImageConstraintsFUCHSIA");
   1289 #endif /* defined(VK_FUCHSIA_buffer_collection) */
   1290 #if defined(VK_FUCHSIA_external_memory)
   1291    table->vkGetMemoryZirconHandleFUCHSIA = (PFN_vkGetMemoryZirconHandleFUCHSIA)load(context, "vkGetMemoryZirconHandleFUCHSIA");
   1292    table->vkGetMemoryZirconHandlePropertiesFUCHSIA = (PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA)load(context, "vkGetMemoryZirconHandlePropertiesFUCHSIA");
   1293 #endif /* defined(VK_FUCHSIA_external_memory) */
   1294 #if defined(VK_FUCHSIA_external_semaphore)
   1295    table->vkGetSemaphoreZirconHandleFUCHSIA = (PFN_vkGetSemaphoreZirconHandleFUCHSIA)load(context, "vkGetSemaphoreZirconHandleFUCHSIA");
   1296    table->vkImportSemaphoreZirconHandleFUCHSIA = (PFN_vkImportSemaphoreZirconHandleFUCHSIA)load(context, "vkImportSemaphoreZirconHandleFUCHSIA");
   1297 #endif /* defined(VK_FUCHSIA_external_semaphore) */
   1298 #if defined(VK_GOOGLE_display_timing)
   1299    table->vkGetPastPresentationTimingGOOGLE = (PFN_vkGetPastPresentationTimingGOOGLE)load(context, "vkGetPastPresentationTimingGOOGLE");
   1300    table->vkGetRefreshCycleDurationGOOGLE = (PFN_vkGetRefreshCycleDurationGOOGLE)load(context, "vkGetRefreshCycleDurationGOOGLE");
   1301 #endif /* defined(VK_GOOGLE_display_timing) */
   1302 #if defined(VK_HUAWEI_invocation_mask)
   1303    table->vkCmdBindInvocationMaskHUAWEI = (PFN_vkCmdBindInvocationMaskHUAWEI)load(context, "vkCmdBindInvocationMaskHUAWEI");
   1304 #endif /* defined(VK_HUAWEI_invocation_mask) */
   1305 #if defined(VK_HUAWEI_subpass_shading)
   1306    table->vkCmdSubpassShadingHUAWEI = (PFN_vkCmdSubpassShadingHUAWEI)load(context, "vkCmdSubpassShadingHUAWEI");
   1307    table->vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = (PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI)load(context, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI");
   1308 #endif /* defined(VK_HUAWEI_subpass_shading) */
   1309 #if defined(VK_INTEL_performance_query)
   1310    table->vkAcquirePerformanceConfigurationINTEL = (PFN_vkAcquirePerformanceConfigurationINTEL)load(context, "vkAcquirePerformanceConfigurationINTEL");
   1311    table->vkCmdSetPerformanceMarkerINTEL = (PFN_vkCmdSetPerformanceMarkerINTEL)load(context, "vkCmdSetPerformanceMarkerINTEL");
   1312    table->vkCmdSetPerformanceOverrideINTEL = (PFN_vkCmdSetPerformanceOverrideINTEL)load(context, "vkCmdSetPerformanceOverrideINTEL");
   1313    table->vkCmdSetPerformanceStreamMarkerINTEL = (PFN_vkCmdSetPerformanceStreamMarkerINTEL)load(context, "vkCmdSetPerformanceStreamMarkerINTEL");
   1314    table->vkGetPerformanceParameterINTEL = (PFN_vkGetPerformanceParameterINTEL)load(context, "vkGetPerformanceParameterINTEL");
   1315    table->vkInitializePerformanceApiINTEL = (PFN_vkInitializePerformanceApiINTEL)load(context, "vkInitializePerformanceApiINTEL");
   1316    table->vkQueueSetPerformanceConfigurationINTEL = (PFN_vkQueueSetPerformanceConfigurationINTEL)load(context, "vkQueueSetPerformanceConfigurationINTEL");
   1317    table->vkReleasePerformanceConfigurationINTEL = (PFN_vkReleasePerformanceConfigurationINTEL)load(context, "vkReleasePerformanceConfigurationINTEL");
   1318    table->vkUninitializePerformanceApiINTEL = (PFN_vkUninitializePerformanceApiINTEL)load(context, "vkUninitializePerformanceApiINTEL");
   1319 #endif /* defined(VK_INTEL_performance_query) */
   1320 #if defined(VK_KHR_acceleration_structure)
   1321    table->vkBuildAccelerationStructuresKHR = (PFN_vkBuildAccelerationStructuresKHR)load(context, "vkBuildAccelerationStructuresKHR");
   1322    table->vkCmdBuildAccelerationStructuresIndirectKHR = (PFN_vkCmdBuildAccelerationStructuresIndirectKHR)load(context, "vkCmdBuildAccelerationStructuresIndirectKHR");
   1323    table->vkCmdBuildAccelerationStructuresKHR = (PFN_vkCmdBuildAccelerationStructuresKHR)load(context, "vkCmdBuildAccelerationStructuresKHR");
   1324    table->vkCmdCopyAccelerationStructureKHR = (PFN_vkCmdCopyAccelerationStructureKHR)load(context, "vkCmdCopyAccelerationStructureKHR");
   1325    table->vkCmdCopyAccelerationStructureToMemoryKHR = (PFN_vkCmdCopyAccelerationStructureToMemoryKHR)load(context, "vkCmdCopyAccelerationStructureToMemoryKHR");
   1326    table->vkCmdCopyMemoryToAccelerationStructureKHR = (PFN_vkCmdCopyMemoryToAccelerationStructureKHR)load(context, "vkCmdCopyMemoryToAccelerationStructureKHR");
   1327    table->vkCmdWriteAccelerationStructuresPropertiesKHR = (PFN_vkCmdWriteAccelerationStructuresPropertiesKHR)load(context, "vkCmdWriteAccelerationStructuresPropertiesKHR");
   1328    table->vkCopyAccelerationStructureKHR = (PFN_vkCopyAccelerationStructureKHR)load(context, "vkCopyAccelerationStructureKHR");
   1329    table->vkCopyAccelerationStructureToMemoryKHR = (PFN_vkCopyAccelerationStructureToMemoryKHR)load(context, "vkCopyAccelerationStructureToMemoryKHR");
   1330    table->vkCopyMemoryToAccelerationStructureKHR = (PFN_vkCopyMemoryToAccelerationStructureKHR)load(context, "vkCopyMemoryToAccelerationStructureKHR");
   1331    table->vkCreateAccelerationStructureKHR = (PFN_vkCreateAccelerationStructureKHR)load(context, "vkCreateAccelerationStructureKHR");
   1332    table->vkDestroyAccelerationStructureKHR = (PFN_vkDestroyAccelerationStructureKHR)load(context, "vkDestroyAccelerationStructureKHR");
   1333    table->vkGetAccelerationStructureBuildSizesKHR = (PFN_vkGetAccelerationStructureBuildSizesKHR)load(context, "vkGetAccelerationStructureBuildSizesKHR");
   1334    table->vkGetAccelerationStructureDeviceAddressKHR = (PFN_vkGetAccelerationStructureDeviceAddressKHR)load(context, "vkGetAccelerationStructureDeviceAddressKHR");
   1335    table->vkGetDeviceAccelerationStructureCompatibilityKHR = (PFN_vkGetDeviceAccelerationStructureCompatibilityKHR)load(context, "vkGetDeviceAccelerationStructureCompatibilityKHR");
   1336    table->vkWriteAccelerationStructuresPropertiesKHR = (PFN_vkWriteAccelerationStructuresPropertiesKHR)load(context, "vkWriteAccelerationStructuresPropertiesKHR");
   1337 #endif /* defined(VK_KHR_acceleration_structure) */
   1338 #if defined(VK_KHR_bind_memory2)
   1339    table->vkBindBufferMemory2KHR = (PFN_vkBindBufferMemory2KHR)load(context, "vkBindBufferMemory2KHR");
   1340    table->vkBindImageMemory2KHR = (PFN_vkBindImageMemory2KHR)load(context, "vkBindImageMemory2KHR");
   1341 #endif /* defined(VK_KHR_bind_memory2) */
   1342 #if defined(VK_KHR_buffer_device_address)
   1343    table->vkGetBufferDeviceAddressKHR = (PFN_vkGetBufferDeviceAddressKHR)load(context, "vkGetBufferDeviceAddressKHR");
   1344    table->vkGetBufferOpaqueCaptureAddressKHR = (PFN_vkGetBufferOpaqueCaptureAddressKHR)load(context, "vkGetBufferOpaqueCaptureAddressKHR");
   1345    table->vkGetDeviceMemoryOpaqueCaptureAddressKHR = (PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR)load(context, "vkGetDeviceMemoryOpaqueCaptureAddressKHR");
   1346 #endif /* defined(VK_KHR_buffer_device_address) */
   1347 #if defined(VK_KHR_copy_commands2)
   1348    table->vkCmdBlitImage2KHR = (PFN_vkCmdBlitImage2KHR)load(context, "vkCmdBlitImage2KHR");
   1349    table->vkCmdCopyBuffer2KHR = (PFN_vkCmdCopyBuffer2KHR)load(context, "vkCmdCopyBuffer2KHR");
   1350    table->vkCmdCopyBufferToImage2KHR = (PFN_vkCmdCopyBufferToImage2KHR)load(context, "vkCmdCopyBufferToImage2KHR");
   1351    table->vkCmdCopyImage2KHR = (PFN_vkCmdCopyImage2KHR)load(context, "vkCmdCopyImage2KHR");
   1352    table->vkCmdCopyImageToBuffer2KHR = (PFN_vkCmdCopyImageToBuffer2KHR)load(context, "vkCmdCopyImageToBuffer2KHR");
   1353    table->vkCmdResolveImage2KHR = (PFN_vkCmdResolveImage2KHR)load(context, "vkCmdResolveImage2KHR");
   1354 #endif /* defined(VK_KHR_copy_commands2) */
   1355 #if defined(VK_KHR_create_renderpass2)
   1356    table->vkCmdBeginRenderPass2KHR = (PFN_vkCmdBeginRenderPass2KHR)load(context, "vkCmdBeginRenderPass2KHR");
   1357    table->vkCmdEndRenderPass2KHR = (PFN_vkCmdEndRenderPass2KHR)load(context, "vkCmdEndRenderPass2KHR");
   1358    table->vkCmdNextSubpass2KHR = (PFN_vkCmdNextSubpass2KHR)load(context, "vkCmdNextSubpass2KHR");
   1359    table->vkCreateRenderPass2KHR = (PFN_vkCreateRenderPass2KHR)load(context, "vkCreateRenderPass2KHR");
   1360 #endif /* defined(VK_KHR_create_renderpass2) */
   1361 #if defined(VK_KHR_deferred_host_operations)
   1362    table->vkCreateDeferredOperationKHR = (PFN_vkCreateDeferredOperationKHR)load(context, "vkCreateDeferredOperationKHR");
   1363    table->vkDeferredOperationJoinKHR = (PFN_vkDeferredOperationJoinKHR)load(context, "vkDeferredOperationJoinKHR");
   1364    table->vkDestroyDeferredOperationKHR = (PFN_vkDestroyDeferredOperationKHR)load(context, "vkDestroyDeferredOperationKHR");
   1365    table->vkGetDeferredOperationMaxConcurrencyKHR = (PFN_vkGetDeferredOperationMaxConcurrencyKHR)load(context, "vkGetDeferredOperationMaxConcurrencyKHR");
   1366    table->vkGetDeferredOperationResultKHR = (PFN_vkGetDeferredOperationResultKHR)load(context, "vkGetDeferredOperationResultKHR");
   1367 #endif /* defined(VK_KHR_deferred_host_operations) */
   1368 #if defined(VK_KHR_descriptor_update_template)
   1369    table->vkCreateDescriptorUpdateTemplateKHR = (PFN_vkCreateDescriptorUpdateTemplateKHR)load(context, "vkCreateDescriptorUpdateTemplateKHR");
   1370    table->vkDestroyDescriptorUpdateTemplateKHR = (PFN_vkDestroyDescriptorUpdateTemplateKHR)load(context, "vkDestroyDescriptorUpdateTemplateKHR");
   1371    table->vkUpdateDescriptorSetWithTemplateKHR = (PFN_vkUpdateDescriptorSetWithTemplateKHR)load(context, "vkUpdateDescriptorSetWithTemplateKHR");
   1372 #endif /* defined(VK_KHR_descriptor_update_template) */
   1373 #if defined(VK_KHR_device_group)
   1374    table->vkCmdDispatchBaseKHR = (PFN_vkCmdDispatchBaseKHR)load(context, "vkCmdDispatchBaseKHR");
   1375    table->vkCmdSetDeviceMaskKHR = (PFN_vkCmdSetDeviceMaskKHR)load(context, "vkCmdSetDeviceMaskKHR");
   1376    table->vkGetDeviceGroupPeerMemoryFeaturesKHR = (PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR)load(context, "vkGetDeviceGroupPeerMemoryFeaturesKHR");
   1377 #endif /* defined(VK_KHR_device_group) */
   1378 #if defined(VK_KHR_display_swapchain)
   1379    table->vkCreateSharedSwapchainsKHR = (PFN_vkCreateSharedSwapchainsKHR)load(context, "vkCreateSharedSwapchainsKHR");
   1380 #endif /* defined(VK_KHR_display_swapchain) */
   1381 #if defined(VK_KHR_draw_indirect_count)
   1382    table->vkCmdDrawIndexedIndirectCountKHR = (PFN_vkCmdDrawIndexedIndirectCountKHR)load(context, "vkCmdDrawIndexedIndirectCountKHR");
   1383    table->vkCmdDrawIndirectCountKHR = (PFN_vkCmdDrawIndirectCountKHR)load(context, "vkCmdDrawIndirectCountKHR");
   1384 #endif /* defined(VK_KHR_draw_indirect_count) */
   1385 #if defined(VK_KHR_dynamic_rendering)
   1386    table->vkCmdBeginRenderingKHR = (PFN_vkCmdBeginRenderingKHR)load(context, "vkCmdBeginRenderingKHR");
   1387    table->vkCmdEndRenderingKHR = (PFN_vkCmdEndRenderingKHR)load(context, "vkCmdEndRenderingKHR");
   1388 #endif /* defined(VK_KHR_dynamic_rendering) */
   1389 #if defined(VK_KHR_external_fence_fd)
   1390    table->vkGetFenceFdKHR = (PFN_vkGetFenceFdKHR)load(context, "vkGetFenceFdKHR");
   1391    table->vkImportFenceFdKHR = (PFN_vkImportFenceFdKHR)load(context, "vkImportFenceFdKHR");
   1392 #endif /* defined(VK_KHR_external_fence_fd) */
   1393 #if defined(VK_KHR_external_fence_win32)
   1394    table->vkGetFenceWin32HandleKHR = (PFN_vkGetFenceWin32HandleKHR)load(context, "vkGetFenceWin32HandleKHR");
   1395    table->vkImportFenceWin32HandleKHR = (PFN_vkImportFenceWin32HandleKHR)load(context, "vkImportFenceWin32HandleKHR");
   1396 #endif /* defined(VK_KHR_external_fence_win32) */
   1397 #if defined(VK_KHR_external_memory_fd)
   1398    table->vkGetMemoryFdKHR = (PFN_vkGetMemoryFdKHR)load(context, "vkGetMemoryFdKHR");
   1399    table->vkGetMemoryFdPropertiesKHR = (PFN_vkGetMemoryFdPropertiesKHR)load(context, "vkGetMemoryFdPropertiesKHR");
   1400 #endif /* defined(VK_KHR_external_memory_fd) */
   1401 #if defined(VK_KHR_external_memory_win32)
   1402    table->vkGetMemoryWin32HandleKHR = (PFN_vkGetMemoryWin32HandleKHR)load(context, "vkGetMemoryWin32HandleKHR");
   1403    table->vkGetMemoryWin32HandlePropertiesKHR = (PFN_vkGetMemoryWin32HandlePropertiesKHR)load(context, "vkGetMemoryWin32HandlePropertiesKHR");
   1404 #endif /* defined(VK_KHR_external_memory_win32) */
   1405 #if defined(VK_KHR_external_semaphore_fd)
   1406    table->vkGetSemaphoreFdKHR = (PFN_vkGetSemaphoreFdKHR)load(context, "vkGetSemaphoreFdKHR");
   1407    table->vkImportSemaphoreFdKHR = (PFN_vkImportSemaphoreFdKHR)load(context, "vkImportSemaphoreFdKHR");
   1408 #endif /* defined(VK_KHR_external_semaphore_fd) */
   1409 #if defined(VK_KHR_external_semaphore_win32)
   1410    table->vkGetSemaphoreWin32HandleKHR = (PFN_vkGetSemaphoreWin32HandleKHR)load(context, "vkGetSemaphoreWin32HandleKHR");
   1411    table->vkImportSemaphoreWin32HandleKHR = (PFN_vkImportSemaphoreWin32HandleKHR)load(context, "vkImportSemaphoreWin32HandleKHR");
   1412 #endif /* defined(VK_KHR_external_semaphore_win32) */
   1413 #if defined(VK_KHR_fragment_shading_rate)
   1414    table->vkCmdSetFragmentShadingRateKHR = (PFN_vkCmdSetFragmentShadingRateKHR)load(context, "vkCmdSetFragmentShadingRateKHR");
   1415 #endif /* defined(VK_KHR_fragment_shading_rate) */
   1416 #if defined(VK_KHR_get_memory_requirements2)
   1417    table->vkGetBufferMemoryRequirements2KHR = (PFN_vkGetBufferMemoryRequirements2KHR)load(context, "vkGetBufferMemoryRequirements2KHR");
   1418    table->vkGetImageMemoryRequirements2KHR = (PFN_vkGetImageMemoryRequirements2KHR)load(context, "vkGetImageMemoryRequirements2KHR");
   1419    table->vkGetImageSparseMemoryRequirements2KHR = (PFN_vkGetImageSparseMemoryRequirements2KHR)load(context, "vkGetImageSparseMemoryRequirements2KHR");
   1420 #endif /* defined(VK_KHR_get_memory_requirements2) */
   1421 #if defined(VK_KHR_maintenance1)
   1422    table->vkTrimCommandPoolKHR = (PFN_vkTrimCommandPoolKHR)load(context, "vkTrimCommandPoolKHR");
   1423 #endif /* defined(VK_KHR_maintenance1) */
   1424 #if defined(VK_KHR_maintenance3)
   1425    table->vkGetDescriptorSetLayoutSupportKHR = (PFN_vkGetDescriptorSetLayoutSupportKHR)load(context, "vkGetDescriptorSetLayoutSupportKHR");
   1426 #endif /* defined(VK_KHR_maintenance3) */
   1427 #if defined(VK_KHR_maintenance4)
   1428    table->vkGetDeviceBufferMemoryRequirementsKHR = (PFN_vkGetDeviceBufferMemoryRequirementsKHR)load(context, "vkGetDeviceBufferMemoryRequirementsKHR");
   1429    table->vkGetDeviceImageMemoryRequirementsKHR = (PFN_vkGetDeviceImageMemoryRequirementsKHR)load(context, "vkGetDeviceImageMemoryRequirementsKHR");
   1430    table->vkGetDeviceImageSparseMemoryRequirementsKHR = (PFN_vkGetDeviceImageSparseMemoryRequirementsKHR)load(context, "vkGetDeviceImageSparseMemoryRequirementsKHR");
   1431 #endif /* defined(VK_KHR_maintenance4) */
   1432 #if defined(VK_KHR_performance_query)
   1433    table->vkAcquireProfilingLockKHR = (PFN_vkAcquireProfilingLockKHR)load(context, "vkAcquireProfilingLockKHR");
   1434    table->vkReleaseProfilingLockKHR = (PFN_vkReleaseProfilingLockKHR)load(context, "vkReleaseProfilingLockKHR");
   1435 #endif /* defined(VK_KHR_performance_query) */
   1436 #if defined(VK_KHR_pipeline_executable_properties)
   1437    table->vkGetPipelineExecutableInternalRepresentationsKHR = (PFN_vkGetPipelineExecutableInternalRepresentationsKHR)load(context, "vkGetPipelineExecutableInternalRepresentationsKHR");
   1438    table->vkGetPipelineExecutablePropertiesKHR = (PFN_vkGetPipelineExecutablePropertiesKHR)load(context, "vkGetPipelineExecutablePropertiesKHR");
   1439    table->vkGetPipelineExecutableStatisticsKHR = (PFN_vkGetPipelineExecutableStatisticsKHR)load(context, "vkGetPipelineExecutableStatisticsKHR");
   1440 #endif /* defined(VK_KHR_pipeline_executable_properties) */
   1441 #if defined(VK_KHR_present_wait)
   1442    table->vkWaitForPresentKHR = (PFN_vkWaitForPresentKHR)load(context, "vkWaitForPresentKHR");
   1443 #endif /* defined(VK_KHR_present_wait) */
   1444 #if defined(VK_KHR_push_descriptor)
   1445    table->vkCmdPushDescriptorSetKHR = (PFN_vkCmdPushDescriptorSetKHR)load(context, "vkCmdPushDescriptorSetKHR");
   1446 #endif /* defined(VK_KHR_push_descriptor) */
   1447 #if defined(VK_KHR_ray_tracing_pipeline)
   1448    table->vkCmdSetRayTracingPipelineStackSizeKHR = (PFN_vkCmdSetRayTracingPipelineStackSizeKHR)load(context, "vkCmdSetRayTracingPipelineStackSizeKHR");
   1449    table->vkCmdTraceRaysIndirectKHR = (PFN_vkCmdTraceRaysIndirectKHR)load(context, "vkCmdTraceRaysIndirectKHR");
   1450    table->vkCmdTraceRaysKHR = (PFN_vkCmdTraceRaysKHR)load(context, "vkCmdTraceRaysKHR");
   1451    table->vkCreateRayTracingPipelinesKHR = (PFN_vkCreateRayTracingPipelinesKHR)load(context, "vkCreateRayTracingPipelinesKHR");
   1452    table->vkGetRayTracingCaptureReplayShaderGroupHandlesKHR = (PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR)load(context, "vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
   1453    table->vkGetRayTracingShaderGroupHandlesKHR = (PFN_vkGetRayTracingShaderGroupHandlesKHR)load(context, "vkGetRayTracingShaderGroupHandlesKHR");
   1454    table->vkGetRayTracingShaderGroupStackSizeKHR = (PFN_vkGetRayTracingShaderGroupStackSizeKHR)load(context, "vkGetRayTracingShaderGroupStackSizeKHR");
   1455 #endif /* defined(VK_KHR_ray_tracing_pipeline) */
   1456 #if defined(VK_KHR_sampler_ycbcr_conversion)
   1457    table->vkCreateSamplerYcbcrConversionKHR = (PFN_vkCreateSamplerYcbcrConversionKHR)load(context, "vkCreateSamplerYcbcrConversionKHR");
   1458    table->vkDestroySamplerYcbcrConversionKHR = (PFN_vkDestroySamplerYcbcrConversionKHR)load(context, "vkDestroySamplerYcbcrConversionKHR");
   1459 #endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
   1460 #if defined(VK_KHR_shared_presentable_image)
   1461    table->vkGetSwapchainStatusKHR = (PFN_vkGetSwapchainStatusKHR)load(context, "vkGetSwapchainStatusKHR");
   1462 #endif /* defined(VK_KHR_shared_presentable_image) */
   1463 #if defined(VK_KHR_swapchain)
   1464    table->vkAcquireNextImageKHR = (PFN_vkAcquireNextImageKHR)load(context, "vkAcquireNextImageKHR");
   1465    table->vkCreateSwapchainKHR = (PFN_vkCreateSwapchainKHR)load(context, "vkCreateSwapchainKHR");
   1466    table->vkDestroySwapchainKHR = (PFN_vkDestroySwapchainKHR)load(context, "vkDestroySwapchainKHR");
   1467    table->vkGetSwapchainImagesKHR = (PFN_vkGetSwapchainImagesKHR)load(context, "vkGetSwapchainImagesKHR");
   1468    table->vkQueuePresentKHR = (PFN_vkQueuePresentKHR)load(context, "vkQueuePresentKHR");
   1469 #endif /* defined(VK_KHR_swapchain) */
   1470 #if defined(VK_KHR_synchronization2)
   1471    table->vkCmdPipelineBarrier2KHR = (PFN_vkCmdPipelineBarrier2KHR)load(context, "vkCmdPipelineBarrier2KHR");
   1472    table->vkCmdResetEvent2KHR = (PFN_vkCmdResetEvent2KHR)load(context, "vkCmdResetEvent2KHR");
   1473    table->vkCmdSetEvent2KHR = (PFN_vkCmdSetEvent2KHR)load(context, "vkCmdSetEvent2KHR");
   1474    table->vkCmdWaitEvents2KHR = (PFN_vkCmdWaitEvents2KHR)load(context, "vkCmdWaitEvents2KHR");
   1475    table->vkCmdWriteTimestamp2KHR = (PFN_vkCmdWriteTimestamp2KHR)load(context, "vkCmdWriteTimestamp2KHR");
   1476    table->vkQueueSubmit2KHR = (PFN_vkQueueSubmit2KHR)load(context, "vkQueueSubmit2KHR");
   1477 #endif /* defined(VK_KHR_synchronization2) */
   1478 #if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
   1479    table->vkCmdWriteBufferMarker2AMD = (PFN_vkCmdWriteBufferMarker2AMD)load(context, "vkCmdWriteBufferMarker2AMD");
   1480 #endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
   1481 #if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
   1482    table->vkGetQueueCheckpointData2NV = (PFN_vkGetQueueCheckpointData2NV)load(context, "vkGetQueueCheckpointData2NV");
   1483 #endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
   1484 #if defined(VK_KHR_timeline_semaphore)
   1485    table->vkGetSemaphoreCounterValueKHR = (PFN_vkGetSemaphoreCounterValueKHR)load(context, "vkGetSemaphoreCounterValueKHR");
   1486    table->vkSignalSemaphoreKHR = (PFN_vkSignalSemaphoreKHR)load(context, "vkSignalSemaphoreKHR");
   1487    table->vkWaitSemaphoresKHR = (PFN_vkWaitSemaphoresKHR)load(context, "vkWaitSemaphoresKHR");
   1488 #endif /* defined(VK_KHR_timeline_semaphore) */
   1489 #if defined(VK_KHR_video_decode_queue)
   1490    table->vkCmdDecodeVideoKHR = (PFN_vkCmdDecodeVideoKHR)load(context, "vkCmdDecodeVideoKHR");
   1491 #endif /* defined(VK_KHR_video_decode_queue) */
   1492 #if defined(VK_KHR_video_encode_queue)
   1493    table->vkCmdEncodeVideoKHR = (PFN_vkCmdEncodeVideoKHR)load(context, "vkCmdEncodeVideoKHR");
   1494 #endif /* defined(VK_KHR_video_encode_queue) */
   1495 #if defined(VK_KHR_video_queue)
   1496    table->vkBindVideoSessionMemoryKHR = (PFN_vkBindVideoSessionMemoryKHR)load(context, "vkBindVideoSessionMemoryKHR");
   1497    table->vkCmdBeginVideoCodingKHR = (PFN_vkCmdBeginVideoCodingKHR)load(context, "vkCmdBeginVideoCodingKHR");
   1498    table->vkCmdControlVideoCodingKHR = (PFN_vkCmdControlVideoCodingKHR)load(context, "vkCmdControlVideoCodingKHR");
   1499    table->vkCmdEndVideoCodingKHR = (PFN_vkCmdEndVideoCodingKHR)load(context, "vkCmdEndVideoCodingKHR");
   1500    table->vkCreateVideoSessionKHR = (PFN_vkCreateVideoSessionKHR)load(context, "vkCreateVideoSessionKHR");
   1501    table->vkCreateVideoSessionParametersKHR = (PFN_vkCreateVideoSessionParametersKHR)load(context, "vkCreateVideoSessionParametersKHR");
   1502    table->vkDestroyVideoSessionKHR = (PFN_vkDestroyVideoSessionKHR)load(context, "vkDestroyVideoSessionKHR");
   1503    table->vkDestroyVideoSessionParametersKHR = (PFN_vkDestroyVideoSessionParametersKHR)load(context, "vkDestroyVideoSessionParametersKHR");
   1504    table->vkGetVideoSessionMemoryRequirementsKHR = (PFN_vkGetVideoSessionMemoryRequirementsKHR)load(context, "vkGetVideoSessionMemoryRequirementsKHR");
   1505    table->vkUpdateVideoSessionParametersKHR = (PFN_vkUpdateVideoSessionParametersKHR)load(context, "vkUpdateVideoSessionParametersKHR");
   1506 #endif /* defined(VK_KHR_video_queue) */
   1507 #if defined(VK_NVX_binary_import)
   1508    table->vkCmdCuLaunchKernelNVX = (PFN_vkCmdCuLaunchKernelNVX)load(context, "vkCmdCuLaunchKernelNVX");
   1509    table->vkCreateCuFunctionNVX = (PFN_vkCreateCuFunctionNVX)load(context, "vkCreateCuFunctionNVX");
   1510    table->vkCreateCuModuleNVX = (PFN_vkCreateCuModuleNVX)load(context, "vkCreateCuModuleNVX");
   1511    table->vkDestroyCuFunctionNVX = (PFN_vkDestroyCuFunctionNVX)load(context, "vkDestroyCuFunctionNVX");
   1512    table->vkDestroyCuModuleNVX = (PFN_vkDestroyCuModuleNVX)load(context, "vkDestroyCuModuleNVX");
   1513 #endif /* defined(VK_NVX_binary_import) */
   1514 #if defined(VK_NVX_image_view_handle)
   1515    table->vkGetImageViewAddressNVX = (PFN_vkGetImageViewAddressNVX)load(context, "vkGetImageViewAddressNVX");
   1516    table->vkGetImageViewHandleNVX = (PFN_vkGetImageViewHandleNVX)load(context, "vkGetImageViewHandleNVX");
   1517 #endif /* defined(VK_NVX_image_view_handle) */
   1518 #if defined(VK_NV_clip_space_w_scaling)
   1519    table->vkCmdSetViewportWScalingNV = (PFN_vkCmdSetViewportWScalingNV)load(context, "vkCmdSetViewportWScalingNV");
   1520 #endif /* defined(VK_NV_clip_space_w_scaling) */
   1521 #if defined(VK_NV_device_diagnostic_checkpoints)
   1522    table->vkCmdSetCheckpointNV = (PFN_vkCmdSetCheckpointNV)load(context, "vkCmdSetCheckpointNV");
   1523    table->vkGetQueueCheckpointDataNV = (PFN_vkGetQueueCheckpointDataNV)load(context, "vkGetQueueCheckpointDataNV");
   1524 #endif /* defined(VK_NV_device_diagnostic_checkpoints) */
   1525 #if defined(VK_NV_device_generated_commands)
   1526    table->vkCmdBindPipelineShaderGroupNV = (PFN_vkCmdBindPipelineShaderGroupNV)load(context, "vkCmdBindPipelineShaderGroupNV");
   1527    table->vkCmdExecuteGeneratedCommandsNV = (PFN_vkCmdExecuteGeneratedCommandsNV)load(context, "vkCmdExecuteGeneratedCommandsNV");
   1528    table->vkCmdPreprocessGeneratedCommandsNV = (PFN_vkCmdPreprocessGeneratedCommandsNV)load(context, "vkCmdPreprocessGeneratedCommandsNV");
   1529    table->vkCreateIndirectCommandsLayoutNV = (PFN_vkCreateIndirectCommandsLayoutNV)load(context, "vkCreateIndirectCommandsLayoutNV");
   1530    table->vkDestroyIndirectCommandsLayoutNV = (PFN_vkDestroyIndirectCommandsLayoutNV)load(context, "vkDestroyIndirectCommandsLayoutNV");
   1531    table->vkGetGeneratedCommandsMemoryRequirementsNV = (PFN_vkGetGeneratedCommandsMemoryRequirementsNV)load(context, "vkGetGeneratedCommandsMemoryRequirementsNV");
   1532 #endif /* defined(VK_NV_device_generated_commands) */
   1533 #if defined(VK_NV_external_memory_rdma)
   1534    table->vkGetMemoryRemoteAddressNV = (PFN_vkGetMemoryRemoteAddressNV)load(context, "vkGetMemoryRemoteAddressNV");
   1535 #endif /* defined(VK_NV_external_memory_rdma) */
   1536 #if defined(VK_NV_external_memory_win32)
   1537    table->vkGetMemoryWin32HandleNV = (PFN_vkGetMemoryWin32HandleNV)load(context, "vkGetMemoryWin32HandleNV");
   1538 #endif /* defined(VK_NV_external_memory_win32) */
   1539 #if defined(VK_NV_fragment_shading_rate_enums)
   1540    table->vkCmdSetFragmentShadingRateEnumNV = (PFN_vkCmdSetFragmentShadingRateEnumNV)load(context, "vkCmdSetFragmentShadingRateEnumNV");
   1541 #endif /* defined(VK_NV_fragment_shading_rate_enums) */
   1542 #if defined(VK_NV_mesh_shader)
   1543    table->vkCmdDrawMeshTasksIndirectCountNV = (PFN_vkCmdDrawMeshTasksIndirectCountNV)load(context, "vkCmdDrawMeshTasksIndirectCountNV");
   1544    table->vkCmdDrawMeshTasksIndirectNV = (PFN_vkCmdDrawMeshTasksIndirectNV)load(context, "vkCmdDrawMeshTasksIndirectNV");
   1545    table->vkCmdDrawMeshTasksNV = (PFN_vkCmdDrawMeshTasksNV)load(context, "vkCmdDrawMeshTasksNV");
   1546 #endif /* defined(VK_NV_mesh_shader) */
   1547 #if defined(VK_NV_ray_tracing)
   1548    table->vkBindAccelerationStructureMemoryNV = (PFN_vkBindAccelerationStructureMemoryNV)load(context, "vkBindAccelerationStructureMemoryNV");
   1549    table->vkCmdBuildAccelerationStructureNV = (PFN_vkCmdBuildAccelerationStructureNV)load(context, "vkCmdBuildAccelerationStructureNV");
   1550    table->vkCmdCopyAccelerationStructureNV = (PFN_vkCmdCopyAccelerationStructureNV)load(context, "vkCmdCopyAccelerationStructureNV");
   1551    table->vkCmdTraceRaysNV = (PFN_vkCmdTraceRaysNV)load(context, "vkCmdTraceRaysNV");
   1552    table->vkCmdWriteAccelerationStructuresPropertiesNV = (PFN_vkCmdWriteAccelerationStructuresPropertiesNV)load(context, "vkCmdWriteAccelerationStructuresPropertiesNV");
   1553    table->vkCompileDeferredNV = (PFN_vkCompileDeferredNV)load(context, "vkCompileDeferredNV");
   1554    table->vkCreateAccelerationStructureNV = (PFN_vkCreateAccelerationStructureNV)load(context, "vkCreateAccelerationStructureNV");
   1555    table->vkCreateRayTracingPipelinesNV = (PFN_vkCreateRayTracingPipelinesNV)load(context, "vkCreateRayTracingPipelinesNV");
   1556    table->vkDestroyAccelerationStructureNV = (PFN_vkDestroyAccelerationStructureNV)load(context, "vkDestroyAccelerationStructureNV");
   1557    table->vkGetAccelerationStructureHandleNV = (PFN_vkGetAccelerationStructureHandleNV)load(context, "vkGetAccelerationStructureHandleNV");
   1558    table->vkGetAccelerationStructureMemoryRequirementsNV = (PFN_vkGetAccelerationStructureMemoryRequirementsNV)load(context, "vkGetAccelerationStructureMemoryRequirementsNV");
   1559    table->vkGetRayTracingShaderGroupHandlesNV = (PFN_vkGetRayTracingShaderGroupHandlesNV)load(context, "vkGetRayTracingShaderGroupHandlesNV");
   1560 #endif /* defined(VK_NV_ray_tracing) */
   1561 #if defined(VK_NV_scissor_exclusive)
   1562    table->vkCmdSetExclusiveScissorNV = (PFN_vkCmdSetExclusiveScissorNV)load(context, "vkCmdSetExclusiveScissorNV");
   1563 #endif /* defined(VK_NV_scissor_exclusive) */
   1564 #if defined(VK_NV_shading_rate_image)
   1565    table->vkCmdBindShadingRateImageNV = (PFN_vkCmdBindShadingRateImageNV)load(context, "vkCmdBindShadingRateImageNV");
   1566    table->vkCmdSetCoarseSampleOrderNV = (PFN_vkCmdSetCoarseSampleOrderNV)load(context, "vkCmdSetCoarseSampleOrderNV");
   1567    table->vkCmdSetViewportShadingRatePaletteNV = (PFN_vkCmdSetViewportShadingRatePaletteNV)load(context, "vkCmdSetViewportShadingRatePaletteNV");
   1568 #endif /* defined(VK_NV_shading_rate_image) */
   1569 #if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
   1570    table->vkGetDeviceGroupSurfacePresentModes2EXT = (PFN_vkGetDeviceGroupSurfacePresentModes2EXT)load(context, "vkGetDeviceGroupSurfacePresentModes2EXT");
   1571 #endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
   1572 #if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
   1573    table->vkCmdPushDescriptorSetWithTemplateKHR = (PFN_vkCmdPushDescriptorSetWithTemplateKHR)load(context, "vkCmdPushDescriptorSetWithTemplateKHR");
   1574 #endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
   1575 #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
   1576    table->vkGetDeviceGroupPresentCapabilitiesKHR = (PFN_vkGetDeviceGroupPresentCapabilitiesKHR)load(context, "vkGetDeviceGroupPresentCapabilitiesKHR");
   1577    table->vkGetDeviceGroupSurfacePresentModesKHR = (PFN_vkGetDeviceGroupSurfacePresentModesKHR)load(context, "vkGetDeviceGroupSurfacePresentModesKHR");
   1578 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
   1579 #if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
   1580    table->vkAcquireNextImage2KHR = (PFN_vkAcquireNextImage2KHR)load(context, "vkAcquireNextImage2KHR");
   1581 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
   1582    /* VOLK_GENERATE_LOAD_DEVICE_TABLE */
   1583 }
   1584 
   1585 #ifdef __GNUC__
   1586 #ifdef VOLK_DEFAULT_VISIBILITY
   1587 #   pragma GCC visibility push(default)
   1588 #else
   1589 #   pragma GCC visibility push(hidden)
   1590 #endif
   1591 #endif
   1592 
   1593 /* VOLK_GENERATE_PROTOTYPES_C */
   1594 #if defined(VK_VERSION_1_0)
   1595 PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
   1596 PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
   1597 PFN_vkAllocateMemory vkAllocateMemory;
   1598 PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
   1599 PFN_vkBindBufferMemory vkBindBufferMemory;
   1600 PFN_vkBindImageMemory vkBindImageMemory;
   1601 PFN_vkCmdBeginQuery vkCmdBeginQuery;
   1602 PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
   1603 PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
   1604 PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
   1605 PFN_vkCmdBindPipeline vkCmdBindPipeline;
   1606 PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
   1607 PFN_vkCmdBlitImage vkCmdBlitImage;
   1608 PFN_vkCmdClearAttachments vkCmdClearAttachments;
   1609 PFN_vkCmdClearColorImage vkCmdClearColorImage;
   1610 PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
   1611 PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
   1612 PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
   1613 PFN_vkCmdCopyImage vkCmdCopyImage;
   1614 PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
   1615 PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
   1616 PFN_vkCmdDispatch vkCmdDispatch;
   1617 PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
   1618 PFN_vkCmdDraw vkCmdDraw;
   1619 PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
   1620 PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
   1621 PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
   1622 PFN_vkCmdEndQuery vkCmdEndQuery;
   1623 PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
   1624 PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
   1625 PFN_vkCmdFillBuffer vkCmdFillBuffer;
   1626 PFN_vkCmdNextSubpass vkCmdNextSubpass;
   1627 PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
   1628 PFN_vkCmdPushConstants vkCmdPushConstants;
   1629 PFN_vkCmdResetEvent vkCmdResetEvent;
   1630 PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
   1631 PFN_vkCmdResolveImage vkCmdResolveImage;
   1632 PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
   1633 PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
   1634 PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
   1635 PFN_vkCmdSetEvent vkCmdSetEvent;
   1636 PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
   1637 PFN_vkCmdSetScissor vkCmdSetScissor;
   1638 PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
   1639 PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
   1640 PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
   1641 PFN_vkCmdSetViewport vkCmdSetViewport;
   1642 PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
   1643 PFN_vkCmdWaitEvents vkCmdWaitEvents;
   1644 PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
   1645 PFN_vkCreateBuffer vkCreateBuffer;
   1646 PFN_vkCreateBufferView vkCreateBufferView;
   1647 PFN_vkCreateCommandPool vkCreateCommandPool;
   1648 PFN_vkCreateComputePipelines vkCreateComputePipelines;
   1649 PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
   1650 PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
   1651 PFN_vkCreateDevice vkCreateDevice;
   1652 PFN_vkCreateEvent vkCreateEvent;
   1653 PFN_vkCreateFence vkCreateFence;
   1654 PFN_vkCreateFramebuffer vkCreateFramebuffer;
   1655 PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
   1656 PFN_vkCreateImage vkCreateImage;
   1657 PFN_vkCreateImageView vkCreateImageView;
   1658 PFN_vkCreateInstance vkCreateInstance;
   1659 PFN_vkCreatePipelineCache vkCreatePipelineCache;
   1660 PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
   1661 PFN_vkCreateQueryPool vkCreateQueryPool;
   1662 PFN_vkCreateRenderPass vkCreateRenderPass;
   1663 PFN_vkCreateSampler vkCreateSampler;
   1664 PFN_vkCreateSemaphore vkCreateSemaphore;
   1665 PFN_vkCreateShaderModule vkCreateShaderModule;
   1666 PFN_vkDestroyBuffer vkDestroyBuffer;
   1667 PFN_vkDestroyBufferView vkDestroyBufferView;
   1668 PFN_vkDestroyCommandPool vkDestroyCommandPool;
   1669 PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
   1670 PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
   1671 PFN_vkDestroyDevice vkDestroyDevice;
   1672 PFN_vkDestroyEvent vkDestroyEvent;
   1673 PFN_vkDestroyFence vkDestroyFence;
   1674 PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
   1675 PFN_vkDestroyImage vkDestroyImage;
   1676 PFN_vkDestroyImageView vkDestroyImageView;
   1677 PFN_vkDestroyInstance vkDestroyInstance;
   1678 PFN_vkDestroyPipeline vkDestroyPipeline;
   1679 PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
   1680 PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
   1681 PFN_vkDestroyQueryPool vkDestroyQueryPool;
   1682 PFN_vkDestroyRenderPass vkDestroyRenderPass;
   1683 PFN_vkDestroySampler vkDestroySampler;
   1684 PFN_vkDestroySemaphore vkDestroySemaphore;
   1685 PFN_vkDestroyShaderModule vkDestroyShaderModule;
   1686 PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
   1687 PFN_vkEndCommandBuffer vkEndCommandBuffer;
   1688 PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties;
   1689 PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties;
   1690 PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties;
   1691 PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties;
   1692 PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices;
   1693 PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
   1694 PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
   1695 PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
   1696 PFN_vkFreeMemory vkFreeMemory;
   1697 PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
   1698 PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
   1699 PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
   1700 PFN_vkGetDeviceQueue vkGetDeviceQueue;
   1701 PFN_vkGetEventStatus vkGetEventStatus;
   1702 PFN_vkGetFenceStatus vkGetFenceStatus;
   1703 PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
   1704 PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
   1705 PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
   1706 PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
   1707 PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures;
   1708 PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties;
   1709 PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties;
   1710 PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
   1711 PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
   1712 PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties;
   1713 PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties;
   1714 PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
   1715 PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
   1716 PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
   1717 PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
   1718 PFN_vkMapMemory vkMapMemory;
   1719 PFN_vkMergePipelineCaches vkMergePipelineCaches;
   1720 PFN_vkQueueBindSparse vkQueueBindSparse;
   1721 PFN_vkQueueSubmit vkQueueSubmit;
   1722 PFN_vkQueueWaitIdle vkQueueWaitIdle;
   1723 PFN_vkResetCommandBuffer vkResetCommandBuffer;
   1724 PFN_vkResetCommandPool vkResetCommandPool;
   1725 PFN_vkResetDescriptorPool vkResetDescriptorPool;
   1726 PFN_vkResetEvent vkResetEvent;
   1727 PFN_vkResetFences vkResetFences;
   1728 PFN_vkSetEvent vkSetEvent;
   1729 PFN_vkUnmapMemory vkUnmapMemory;
   1730 PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
   1731 PFN_vkWaitForFences vkWaitForFences;
   1732 #endif /* defined(VK_VERSION_1_0) */
   1733 #if defined(VK_VERSION_1_1)
   1734 PFN_vkBindBufferMemory2 vkBindBufferMemory2;
   1735 PFN_vkBindImageMemory2 vkBindImageMemory2;
   1736 PFN_vkCmdDispatchBase vkCmdDispatchBase;
   1737 PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
   1738 PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
   1739 PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
   1740 PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
   1741 PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
   1742 PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion;
   1743 PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups;
   1744 PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
   1745 PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
   1746 PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
   1747 PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
   1748 PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
   1749 PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
   1750 PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties;
   1751 PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties;
   1752 PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties;
   1753 PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2;
   1754 PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2;
   1755 PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2;
   1756 PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;
   1757 PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2;
   1758 PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2;
   1759 PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2;
   1760 PFN_vkTrimCommandPool vkTrimCommandPool;
   1761 PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
   1762 #endif /* defined(VK_VERSION_1_1) */
   1763 #if defined(VK_VERSION_1_2)
   1764 PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2;
   1765 PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount;
   1766 PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount;
   1767 PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2;
   1768 PFN_vkCmdNextSubpass2 vkCmdNextSubpass2;
   1769 PFN_vkCreateRenderPass2 vkCreateRenderPass2;
   1770 PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress;
   1771 PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress;
   1772 PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress;
   1773 PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue;
   1774 PFN_vkResetQueryPool vkResetQueryPool;
   1775 PFN_vkSignalSemaphore vkSignalSemaphore;
   1776 PFN_vkWaitSemaphores vkWaitSemaphores;
   1777 #endif /* defined(VK_VERSION_1_2) */
   1778 #if defined(VK_VERSION_1_3)
   1779 PFN_vkCmdBeginRendering vkCmdBeginRendering;
   1780 PFN_vkCmdBindVertexBuffers2 vkCmdBindVertexBuffers2;
   1781 PFN_vkCmdBlitImage2 vkCmdBlitImage2;
   1782 PFN_vkCmdCopyBuffer2 vkCmdCopyBuffer2;
   1783 PFN_vkCmdCopyBufferToImage2 vkCmdCopyBufferToImage2;
   1784 PFN_vkCmdCopyImage2 vkCmdCopyImage2;
   1785 PFN_vkCmdCopyImageToBuffer2 vkCmdCopyImageToBuffer2;
   1786 PFN_vkCmdEndRendering vkCmdEndRendering;
   1787 PFN_vkCmdPipelineBarrier2 vkCmdPipelineBarrier2;
   1788 PFN_vkCmdResetEvent2 vkCmdResetEvent2;
   1789 PFN_vkCmdResolveImage2 vkCmdResolveImage2;
   1790 PFN_vkCmdSetCullMode vkCmdSetCullMode;
   1791 PFN_vkCmdSetDepthBiasEnable vkCmdSetDepthBiasEnable;
   1792 PFN_vkCmdSetDepthBoundsTestEnable vkCmdSetDepthBoundsTestEnable;
   1793 PFN_vkCmdSetDepthCompareOp vkCmdSetDepthCompareOp;
   1794 PFN_vkCmdSetDepthTestEnable vkCmdSetDepthTestEnable;
   1795 PFN_vkCmdSetDepthWriteEnable vkCmdSetDepthWriteEnable;
   1796 PFN_vkCmdSetEvent2 vkCmdSetEvent2;
   1797 PFN_vkCmdSetFrontFace vkCmdSetFrontFace;
   1798 PFN_vkCmdSetPrimitiveRestartEnable vkCmdSetPrimitiveRestartEnable;
   1799 PFN_vkCmdSetPrimitiveTopology vkCmdSetPrimitiveTopology;
   1800 PFN_vkCmdSetRasterizerDiscardEnable vkCmdSetRasterizerDiscardEnable;
   1801 PFN_vkCmdSetScissorWithCount vkCmdSetScissorWithCount;
   1802 PFN_vkCmdSetStencilOp vkCmdSetStencilOp;
   1803 PFN_vkCmdSetStencilTestEnable vkCmdSetStencilTestEnable;
   1804 PFN_vkCmdSetViewportWithCount vkCmdSetViewportWithCount;
   1805 PFN_vkCmdWaitEvents2 vkCmdWaitEvents2;
   1806 PFN_vkCmdWriteTimestamp2 vkCmdWriteTimestamp2;
   1807 PFN_vkCreatePrivateDataSlot vkCreatePrivateDataSlot;
   1808 PFN_vkDestroyPrivateDataSlot vkDestroyPrivateDataSlot;
   1809 PFN_vkGetDeviceBufferMemoryRequirements vkGetDeviceBufferMemoryRequirements;
   1810 PFN_vkGetDeviceImageMemoryRequirements vkGetDeviceImageMemoryRequirements;
   1811 PFN_vkGetDeviceImageSparseMemoryRequirements vkGetDeviceImageSparseMemoryRequirements;
   1812 PFN_vkGetPhysicalDeviceToolProperties vkGetPhysicalDeviceToolProperties;
   1813 PFN_vkGetPrivateData vkGetPrivateData;
   1814 PFN_vkQueueSubmit2 vkQueueSubmit2;
   1815 PFN_vkSetPrivateData vkSetPrivateData;
   1816 #endif /* defined(VK_VERSION_1_3) */
   1817 #if defined(VK_AMD_buffer_marker)
   1818 PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD;
   1819 #endif /* defined(VK_AMD_buffer_marker) */
   1820 #if defined(VK_AMD_display_native_hdr)
   1821 PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD;
   1822 #endif /* defined(VK_AMD_display_native_hdr) */
   1823 #if defined(VK_AMD_draw_indirect_count)
   1824 PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD;
   1825 PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD;
   1826 #endif /* defined(VK_AMD_draw_indirect_count) */
   1827 #if defined(VK_AMD_shader_info)
   1828 PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD;
   1829 #endif /* defined(VK_AMD_shader_info) */
   1830 #if defined(VK_ANDROID_external_memory_android_hardware_buffer)
   1831 PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID;
   1832 PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID;
   1833 #endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
   1834 #if defined(VK_EXT_acquire_drm_display)
   1835 PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT;
   1836 PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT;
   1837 #endif /* defined(VK_EXT_acquire_drm_display) */
   1838 #if defined(VK_EXT_acquire_xlib_display)
   1839 PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT;
   1840 PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT;
   1841 #endif /* defined(VK_EXT_acquire_xlib_display) */
   1842 #if defined(VK_EXT_buffer_device_address)
   1843 PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT;
   1844 #endif /* defined(VK_EXT_buffer_device_address) */
   1845 #if defined(VK_EXT_calibrated_timestamps)
   1846 PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT;
   1847 PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT;
   1848 #endif /* defined(VK_EXT_calibrated_timestamps) */
   1849 #if defined(VK_EXT_color_write_enable)
   1850 PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT;
   1851 #endif /* defined(VK_EXT_color_write_enable) */
   1852 #if defined(VK_EXT_conditional_rendering)
   1853 PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT;
   1854 PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT;
   1855 #endif /* defined(VK_EXT_conditional_rendering) */
   1856 #if defined(VK_EXT_debug_marker)
   1857 PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT;
   1858 PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT;
   1859 PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT;
   1860 PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT;
   1861 PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT;
   1862 #endif /* defined(VK_EXT_debug_marker) */
   1863 #if defined(VK_EXT_debug_report)
   1864 PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT;
   1865 PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT;
   1866 PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT;
   1867 #endif /* defined(VK_EXT_debug_report) */
   1868 #if defined(VK_EXT_debug_utils)
   1869 PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT;
   1870 PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT;
   1871 PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT;
   1872 PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT;
   1873 PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT;
   1874 PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT;
   1875 PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT;
   1876 PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT;
   1877 PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT;
   1878 PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT;
   1879 PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT;
   1880 #endif /* defined(VK_EXT_debug_utils) */
   1881 #if defined(VK_EXT_direct_mode_display)
   1882 PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT;
   1883 #endif /* defined(VK_EXT_direct_mode_display) */
   1884 #if defined(VK_EXT_directfb_surface)
   1885 PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT;
   1886 PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT;
   1887 #endif /* defined(VK_EXT_directfb_surface) */
   1888 #if defined(VK_EXT_discard_rectangles)
   1889 PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT;
   1890 #endif /* defined(VK_EXT_discard_rectangles) */
   1891 #if defined(VK_EXT_display_control)
   1892 PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT;
   1893 PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT;
   1894 PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT;
   1895 PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT;
   1896 #endif /* defined(VK_EXT_display_control) */
   1897 #if defined(VK_EXT_display_surface_counter)
   1898 PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT;
   1899 #endif /* defined(VK_EXT_display_surface_counter) */
   1900 #if defined(VK_EXT_extended_dynamic_state)
   1901 PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT;
   1902 PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT;
   1903 PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT;
   1904 PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT;
   1905 PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT;
   1906 PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT;
   1907 PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT;
   1908 PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT;
   1909 PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT;
   1910 PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT;
   1911 PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT;
   1912 PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT;
   1913 #endif /* defined(VK_EXT_extended_dynamic_state) */
   1914 #if defined(VK_EXT_extended_dynamic_state2)
   1915 PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT;
   1916 PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT;
   1917 PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT;
   1918 PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT;
   1919 PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT;
   1920 #endif /* defined(VK_EXT_extended_dynamic_state2) */
   1921 #if defined(VK_EXT_external_memory_host)
   1922 PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT;
   1923 #endif /* defined(VK_EXT_external_memory_host) */
   1924 #if defined(VK_EXT_full_screen_exclusive)
   1925 PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT;
   1926 PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT;
   1927 PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT;
   1928 #endif /* defined(VK_EXT_full_screen_exclusive) */
   1929 #if defined(VK_EXT_hdr_metadata)
   1930 PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT;
   1931 #endif /* defined(VK_EXT_hdr_metadata) */
   1932 #if defined(VK_EXT_headless_surface)
   1933 PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT;
   1934 #endif /* defined(VK_EXT_headless_surface) */
   1935 #if defined(VK_EXT_host_query_reset)
   1936 PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT;
   1937 #endif /* defined(VK_EXT_host_query_reset) */
   1938 #if defined(VK_EXT_image_drm_format_modifier)
   1939 PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT;
   1940 #endif /* defined(VK_EXT_image_drm_format_modifier) */
   1941 #if defined(VK_EXT_line_rasterization)
   1942 PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT;
   1943 #endif /* defined(VK_EXT_line_rasterization) */
   1944 #if defined(VK_EXT_metal_surface)
   1945 PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT;
   1946 #endif /* defined(VK_EXT_metal_surface) */
   1947 #if defined(VK_EXT_multi_draw)
   1948 PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT;
   1949 PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT;
   1950 #endif /* defined(VK_EXT_multi_draw) */
   1951 #if defined(VK_EXT_pageable_device_local_memory)
   1952 PFN_vkSetDeviceMemoryPriorityEXT vkSetDeviceMemoryPriorityEXT;
   1953 #endif /* defined(VK_EXT_pageable_device_local_memory) */
   1954 #if defined(VK_EXT_private_data)
   1955 PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT;
   1956 PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT;
   1957 PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT;
   1958 PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT;
   1959 #endif /* defined(VK_EXT_private_data) */
   1960 #if defined(VK_EXT_sample_locations)
   1961 PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT;
   1962 PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT;
   1963 #endif /* defined(VK_EXT_sample_locations) */
   1964 #if defined(VK_EXT_tooling_info)
   1965 PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT;
   1966 #endif /* defined(VK_EXT_tooling_info) */
   1967 #if defined(VK_EXT_transform_feedback)
   1968 PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT;
   1969 PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT;
   1970 PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT;
   1971 PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT;
   1972 PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT;
   1973 PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT;
   1974 #endif /* defined(VK_EXT_transform_feedback) */
   1975 #if defined(VK_EXT_validation_cache)
   1976 PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT;
   1977 PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT;
   1978 PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT;
   1979 PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT;
   1980 #endif /* defined(VK_EXT_validation_cache) */
   1981 #if defined(VK_EXT_vertex_input_dynamic_state)
   1982 PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT;
   1983 #endif /* defined(VK_EXT_vertex_input_dynamic_state) */
   1984 #if defined(VK_FUCHSIA_buffer_collection)
   1985 PFN_vkCreateBufferCollectionFUCHSIA vkCreateBufferCollectionFUCHSIA;
   1986 PFN_vkDestroyBufferCollectionFUCHSIA vkDestroyBufferCollectionFUCHSIA;
   1987 PFN_vkGetBufferCollectionPropertiesFUCHSIA vkGetBufferCollectionPropertiesFUCHSIA;
   1988 PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA vkSetBufferCollectionBufferConstraintsFUCHSIA;
   1989 PFN_vkSetBufferCollectionImageConstraintsFUCHSIA vkSetBufferCollectionImageConstraintsFUCHSIA;
   1990 #endif /* defined(VK_FUCHSIA_buffer_collection) */
   1991 #if defined(VK_FUCHSIA_external_memory)
   1992 PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA;
   1993 PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA;
   1994 #endif /* defined(VK_FUCHSIA_external_memory) */
   1995 #if defined(VK_FUCHSIA_external_semaphore)
   1996 PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA;
   1997 PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA;
   1998 #endif /* defined(VK_FUCHSIA_external_semaphore) */
   1999 #if defined(VK_FUCHSIA_imagepipe_surface)
   2000 PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA;
   2001 #endif /* defined(VK_FUCHSIA_imagepipe_surface) */
   2002 #if defined(VK_GGP_stream_descriptor_surface)
   2003 PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP;
   2004 #endif /* defined(VK_GGP_stream_descriptor_surface) */
   2005 #if defined(VK_GOOGLE_display_timing)
   2006 PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE;
   2007 PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE;
   2008 #endif /* defined(VK_GOOGLE_display_timing) */
   2009 #if defined(VK_HUAWEI_invocation_mask)
   2010 PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI;
   2011 #endif /* defined(VK_HUAWEI_invocation_mask) */
   2012 #if defined(VK_HUAWEI_subpass_shading)
   2013 PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI;
   2014 PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI;
   2015 #endif /* defined(VK_HUAWEI_subpass_shading) */
   2016 #if defined(VK_INTEL_performance_query)
   2017 PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL;
   2018 PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL;
   2019 PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL;
   2020 PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL;
   2021 PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL;
   2022 PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL;
   2023 PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL;
   2024 PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL;
   2025 PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL;
   2026 #endif /* defined(VK_INTEL_performance_query) */
   2027 #if defined(VK_KHR_acceleration_structure)
   2028 PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR;
   2029 PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR;
   2030 PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR;
   2031 PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR;
   2032 PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR;
   2033 PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR;
   2034 PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR;
   2035 PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR;
   2036 PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR;
   2037 PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR;
   2038 PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR;
   2039 PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR;
   2040 PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR;
   2041 PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR;
   2042 PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR;
   2043 PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR;
   2044 #endif /* defined(VK_KHR_acceleration_structure) */
   2045 #if defined(VK_KHR_android_surface)
   2046 PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR;
   2047 #endif /* defined(VK_KHR_android_surface) */
   2048 #if defined(VK_KHR_bind_memory2)
   2049 PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
   2050 PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
   2051 #endif /* defined(VK_KHR_bind_memory2) */
   2052 #if defined(VK_KHR_buffer_device_address)
   2053 PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
   2054 PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
   2055 PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
   2056 #endif /* defined(VK_KHR_buffer_device_address) */
   2057 #if defined(VK_KHR_copy_commands2)
   2058 PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR;
   2059 PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR;
   2060 PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR;
   2061 PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR;
   2062 PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR;
   2063 PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR;
   2064 #endif /* defined(VK_KHR_copy_commands2) */
   2065 #if defined(VK_KHR_create_renderpass2)
   2066 PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
   2067 PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
   2068 PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
   2069 PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
   2070 #endif /* defined(VK_KHR_create_renderpass2) */
   2071 #if defined(VK_KHR_deferred_host_operations)
   2072 PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR;
   2073 PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR;
   2074 PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR;
   2075 PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR;
   2076 PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR;
   2077 #endif /* defined(VK_KHR_deferred_host_operations) */
   2078 #if defined(VK_KHR_descriptor_update_template)
   2079 PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
   2080 PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
   2081 PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
   2082 #endif /* defined(VK_KHR_descriptor_update_template) */
   2083 #if defined(VK_KHR_device_group)
   2084 PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
   2085 PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
   2086 PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
   2087 #endif /* defined(VK_KHR_device_group) */
   2088 #if defined(VK_KHR_device_group_creation)
   2089 PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR;
   2090 #endif /* defined(VK_KHR_device_group_creation) */
   2091 #if defined(VK_KHR_display)
   2092 PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR;
   2093 PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR;
   2094 PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR;
   2095 PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR;
   2096 PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR;
   2097 PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR;
   2098 PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR;
   2099 #endif /* defined(VK_KHR_display) */
   2100 #if defined(VK_KHR_display_swapchain)
   2101 PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
   2102 #endif /* defined(VK_KHR_display_swapchain) */
   2103 #if defined(VK_KHR_draw_indirect_count)
   2104 PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
   2105 PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
   2106 #endif /* defined(VK_KHR_draw_indirect_count) */
   2107 #if defined(VK_KHR_dynamic_rendering)
   2108 PFN_vkCmdBeginRenderingKHR vkCmdBeginRenderingKHR;
   2109 PFN_vkCmdEndRenderingKHR vkCmdEndRenderingKHR;
   2110 #endif /* defined(VK_KHR_dynamic_rendering) */
   2111 #if defined(VK_KHR_external_fence_capabilities)
   2112 PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR;
   2113 #endif /* defined(VK_KHR_external_fence_capabilities) */
   2114 #if defined(VK_KHR_external_fence_fd)
   2115 PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
   2116 PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
   2117 #endif /* defined(VK_KHR_external_fence_fd) */
   2118 #if defined(VK_KHR_external_fence_win32)
   2119 PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
   2120 PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
   2121 #endif /* defined(VK_KHR_external_fence_win32) */
   2122 #if defined(VK_KHR_external_memory_capabilities)
   2123 PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR;
   2124 #endif /* defined(VK_KHR_external_memory_capabilities) */
   2125 #if defined(VK_KHR_external_memory_fd)
   2126 PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
   2127 PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
   2128 #endif /* defined(VK_KHR_external_memory_fd) */
   2129 #if defined(VK_KHR_external_memory_win32)
   2130 PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
   2131 PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
   2132 #endif /* defined(VK_KHR_external_memory_win32) */
   2133 #if defined(VK_KHR_external_semaphore_capabilities)
   2134 PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
   2135 #endif /* defined(VK_KHR_external_semaphore_capabilities) */
   2136 #if defined(VK_KHR_external_semaphore_fd)
   2137 PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
   2138 PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
   2139 #endif /* defined(VK_KHR_external_semaphore_fd) */
   2140 #if defined(VK_KHR_external_semaphore_win32)
   2141 PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
   2142 PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
   2143 #endif /* defined(VK_KHR_external_semaphore_win32) */
   2144 #if defined(VK_KHR_fragment_shading_rate)
   2145 PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR;
   2146 PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR;
   2147 #endif /* defined(VK_KHR_fragment_shading_rate) */
   2148 #if defined(VK_KHR_get_display_properties2)
   2149 PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR;
   2150 PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR;
   2151 PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR;
   2152 PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR;
   2153 #endif /* defined(VK_KHR_get_display_properties2) */
   2154 #if defined(VK_KHR_get_memory_requirements2)
   2155 PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
   2156 PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
   2157 PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
   2158 #endif /* defined(VK_KHR_get_memory_requirements2) */
   2159 #if defined(VK_KHR_get_physical_device_properties2)
   2160 PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR;
   2161 PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR;
   2162 PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR;
   2163 PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
   2164 PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR;
   2165 PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR;
   2166 PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
   2167 #endif /* defined(VK_KHR_get_physical_device_properties2) */
   2168 #if defined(VK_KHR_get_surface_capabilities2)
   2169 PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR;
   2170 PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR;
   2171 #endif /* defined(VK_KHR_get_surface_capabilities2) */
   2172 #if defined(VK_KHR_maintenance1)
   2173 PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
   2174 #endif /* defined(VK_KHR_maintenance1) */
   2175 #if defined(VK_KHR_maintenance3)
   2176 PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
   2177 #endif /* defined(VK_KHR_maintenance3) */
   2178 #if defined(VK_KHR_maintenance4)
   2179 PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirementsKHR;
   2180 PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirementsKHR;
   2181 PFN_vkGetDeviceImageSparseMemoryRequirementsKHR vkGetDeviceImageSparseMemoryRequirementsKHR;
   2182 #endif /* defined(VK_KHR_maintenance4) */
   2183 #if defined(VK_KHR_performance_query)
   2184 PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
   2185 PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
   2186 PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
   2187 PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
   2188 #endif /* defined(VK_KHR_performance_query) */
   2189 #if defined(VK_KHR_pipeline_executable_properties)
   2190 PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
   2191 PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
   2192 PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
   2193 #endif /* defined(VK_KHR_pipeline_executable_properties) */
   2194 #if defined(VK_KHR_present_wait)
   2195 PFN_vkWaitForPresentKHR vkWaitForPresentKHR;
   2196 #endif /* defined(VK_KHR_present_wait) */
   2197 #if defined(VK_KHR_push_descriptor)
   2198 PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
   2199 #endif /* defined(VK_KHR_push_descriptor) */
   2200 #if defined(VK_KHR_ray_tracing_pipeline)
   2201 PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR;
   2202 PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR;
   2203 PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR;
   2204 PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR;
   2205 PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR;
   2206 PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR;
   2207 PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR;
   2208 #endif /* defined(VK_KHR_ray_tracing_pipeline) */
   2209 #if defined(VK_KHR_sampler_ycbcr_conversion)
   2210 PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
   2211 PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
   2212 #endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
   2213 #if defined(VK_KHR_shared_presentable_image)
   2214 PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
   2215 #endif /* defined(VK_KHR_shared_presentable_image) */
   2216 #if defined(VK_KHR_surface)
   2217 PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR;
   2218 PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR;
   2219 PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR;
   2220 PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR;
   2221 PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR;
   2222 #endif /* defined(VK_KHR_surface) */
   2223 #if defined(VK_KHR_swapchain)
   2224 PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
   2225 PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
   2226 PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
   2227 PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
   2228 PFN_vkQueuePresentKHR vkQueuePresentKHR;
   2229 #endif /* defined(VK_KHR_swapchain) */
   2230 #if defined(VK_KHR_synchronization2)
   2231 PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR;
   2232 PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR;
   2233 PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR;
   2234 PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR;
   2235 PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR;
   2236 PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR;
   2237 #endif /* defined(VK_KHR_synchronization2) */
   2238 #if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker)
   2239 PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD;
   2240 #endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */
   2241 #if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints)
   2242 PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV;
   2243 #endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */
   2244 #if defined(VK_KHR_timeline_semaphore)
   2245 PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
   2246 PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
   2247 PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
   2248 #endif /* defined(VK_KHR_timeline_semaphore) */
   2249 #if defined(VK_KHR_video_decode_queue)
   2250 PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR;
   2251 #endif /* defined(VK_KHR_video_decode_queue) */
   2252 #if defined(VK_KHR_video_encode_queue)
   2253 PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR;
   2254 #endif /* defined(VK_KHR_video_encode_queue) */
   2255 #if defined(VK_KHR_video_queue)
   2256 PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR;
   2257 PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR;
   2258 PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR;
   2259 PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR;
   2260 PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR;
   2261 PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR;
   2262 PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR;
   2263 PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR;
   2264 PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR;
   2265 PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR;
   2266 PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR;
   2267 PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR;
   2268 #endif /* defined(VK_KHR_video_queue) */
   2269 #if defined(VK_KHR_wayland_surface)
   2270 PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR;
   2271 PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR;
   2272 #endif /* defined(VK_KHR_wayland_surface) */
   2273 #if defined(VK_KHR_win32_surface)
   2274 PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR;
   2275 PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR;
   2276 #endif /* defined(VK_KHR_win32_surface) */
   2277 #if defined(VK_KHR_xcb_surface)
   2278 PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR;
   2279 PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR;
   2280 #endif /* defined(VK_KHR_xcb_surface) */
   2281 #if defined(VK_KHR_xlib_surface)
   2282 PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR;
   2283 PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR;
   2284 #endif /* defined(VK_KHR_xlib_surface) */
   2285 #if defined(VK_MVK_ios_surface)
   2286 PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK;
   2287 #endif /* defined(VK_MVK_ios_surface) */
   2288 #if defined(VK_MVK_macos_surface)
   2289 PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK;
   2290 #endif /* defined(VK_MVK_macos_surface) */
   2291 #if defined(VK_NN_vi_surface)
   2292 PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN;
   2293 #endif /* defined(VK_NN_vi_surface) */
   2294 #if defined(VK_NVX_binary_import)
   2295 PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX;
   2296 PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX;
   2297 PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX;
   2298 PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX;
   2299 PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX;
   2300 #endif /* defined(VK_NVX_binary_import) */
   2301 #if defined(VK_NVX_image_view_handle)
   2302 PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX;
   2303 PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX;
   2304 #endif /* defined(VK_NVX_image_view_handle) */
   2305 #if defined(VK_NV_acquire_winrt_display)
   2306 PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV;
   2307 PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV;
   2308 #endif /* defined(VK_NV_acquire_winrt_display) */
   2309 #if defined(VK_NV_clip_space_w_scaling)
   2310 PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV;
   2311 #endif /* defined(VK_NV_clip_space_w_scaling) */
   2312 #if defined(VK_NV_cooperative_matrix)
   2313 PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV;
   2314 #endif /* defined(VK_NV_cooperative_matrix) */
   2315 #if defined(VK_NV_coverage_reduction_mode)
   2316 PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
   2317 #endif /* defined(VK_NV_coverage_reduction_mode) */
   2318 #if defined(VK_NV_device_diagnostic_checkpoints)
   2319 PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV;
   2320 PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV;
   2321 #endif /* defined(VK_NV_device_diagnostic_checkpoints) */
   2322 #if defined(VK_NV_device_generated_commands)
   2323 PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV;
   2324 PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV;
   2325 PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV;
   2326 PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV;
   2327 PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV;
   2328 PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV;
   2329 #endif /* defined(VK_NV_device_generated_commands) */
   2330 #if defined(VK_NV_external_memory_capabilities)
   2331 PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV;
   2332 #endif /* defined(VK_NV_external_memory_capabilities) */
   2333 #if defined(VK_NV_external_memory_rdma)
   2334 PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV;
   2335 #endif /* defined(VK_NV_external_memory_rdma) */
   2336 #if defined(VK_NV_external_memory_win32)
   2337 PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV;
   2338 #endif /* defined(VK_NV_external_memory_win32) */
   2339 #if defined(VK_NV_fragment_shading_rate_enums)
   2340 PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV;
   2341 #endif /* defined(VK_NV_fragment_shading_rate_enums) */
   2342 #if defined(VK_NV_mesh_shader)
   2343 PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV;
   2344 PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV;
   2345 PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV;
   2346 #endif /* defined(VK_NV_mesh_shader) */
   2347 #if defined(VK_NV_ray_tracing)
   2348 PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV;
   2349 PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV;
   2350 PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV;
   2351 PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV;
   2352 PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV;
   2353 PFN_vkCompileDeferredNV vkCompileDeferredNV;
   2354 PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV;
   2355 PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV;
   2356 PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV;
   2357 PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV;
   2358 PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV;
   2359 PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV;
   2360 #endif /* defined(VK_NV_ray_tracing) */
   2361 #if defined(VK_NV_scissor_exclusive)
   2362 PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV;
   2363 #endif /* defined(VK_NV_scissor_exclusive) */
   2364 #if defined(VK_NV_shading_rate_image)
   2365 PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV;
   2366 PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV;
   2367 PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV;
   2368 #endif /* defined(VK_NV_shading_rate_image) */
   2369 #if defined(VK_QNX_screen_surface)
   2370 PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX;
   2371 PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX;
   2372 #endif /* defined(VK_QNX_screen_surface) */
   2373 #if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
   2374 PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT;
   2375 #endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
   2376 #if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template))
   2377 PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
   2378 #endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */
   2379 #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
   2380 PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
   2381 PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
   2382 PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR;
   2383 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
   2384 #if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
   2385 PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
   2386 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
   2387 /* VOLK_GENERATE_PROTOTYPES_C */
   2388 
   2389 #ifdef __GNUC__
   2390 #   pragma GCC visibility pop
   2391 #endif
   2392 
   2393 #ifdef __cplusplus
   2394 }
   2395 #endif
   2396 /* clang-format on */