• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* WARNING: This is auto-generated file. Do not modify, since changes will
2 * be lost! Modify the generating script instead.
3 * This file was generated by /scripts/gen_framework.py
4 */
5
6void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::std::vector<const char*>& functions)
7{
8	if (extName == "VK_KHR_surface")
9	{
10		functions.push_back("vkDestroySurfaceKHR");
11		functions.push_back("vkGetPhysicalDeviceSurfaceSupportKHR");
12		functions.push_back("vkGetPhysicalDeviceSurfaceCapabilitiesKHR");
13		functions.push_back("vkGetPhysicalDeviceSurfaceFormatsKHR");
14		functions.push_back("vkGetPhysicalDeviceSurfacePresentModesKHR");
15		return;
16	}
17	if (extName == "VK_KHR_swapchain")
18	{
19		if(apiVersion >= VK_API_VERSION_1_1) functions.push_back("vkGetPhysicalDevicePresentRectanglesKHR");
20		return;
21	}
22	if (extName == "VK_KHR_display")
23	{
24		functions.push_back("vkGetPhysicalDeviceDisplayPropertiesKHR");
25		functions.push_back("vkGetPhysicalDeviceDisplayPlanePropertiesKHR");
26		functions.push_back("vkGetDisplayPlaneSupportedDisplaysKHR");
27		functions.push_back("vkGetDisplayModePropertiesKHR");
28		functions.push_back("vkCreateDisplayModeKHR");
29		functions.push_back("vkGetDisplayPlaneCapabilitiesKHR");
30		functions.push_back("vkCreateDisplayPlaneSurfaceKHR");
31		return;
32	}
33	if (extName == "VK_KHR_display_swapchain")
34	{
35		return;
36	}
37	if (extName == "VK_KHR_sampler_mirror_clamp_to_edge")
38	{
39		return;
40	}
41	if (extName == "VK_KHR_dynamic_rendering")
42	{
43		return;
44	}
45	if (extName == "VK_KHR_multiview")
46	{
47		return;
48	}
49	if (extName == "VK_KHR_get_physical_device_properties2")
50	{
51		functions.push_back("vkGetPhysicalDeviceFeatures2KHR");
52		functions.push_back("vkGetPhysicalDeviceProperties2KHR");
53		functions.push_back("vkGetPhysicalDeviceFormatProperties2KHR");
54		functions.push_back("vkGetPhysicalDeviceImageFormatProperties2KHR");
55		functions.push_back("vkGetPhysicalDeviceQueueFamilyProperties2KHR");
56		functions.push_back("vkGetPhysicalDeviceMemoryProperties2KHR");
57		functions.push_back("vkGetPhysicalDeviceSparseImageFormatProperties2KHR");
58		return;
59	}
60	if (extName == "VK_KHR_device_group")
61	{
62		if(apiVersion < VK_API_VERSION_1_1) functions.push_back("vkGetPhysicalDevicePresentRectanglesKHR");
63		return;
64	}
65	if (extName == "VK_KHR_shader_draw_parameters")
66	{
67		return;
68	}
69	if (extName == "VK_KHR_maintenance1")
70	{
71		return;
72	}
73	if (extName == "VK_KHR_device_group_creation")
74	{
75		functions.push_back("vkEnumeratePhysicalDeviceGroupsKHR");
76		return;
77	}
78	if (extName == "VK_KHR_external_memory_capabilities")
79	{
80		functions.push_back("vkGetPhysicalDeviceExternalBufferPropertiesKHR");
81		return;
82	}
83	if (extName == "VK_KHR_external_memory")
84	{
85		return;
86	}
87	if (extName == "VK_KHR_external_memory_fd")
88	{
89		return;
90	}
91	if (extName == "VK_KHR_external_semaphore_capabilities")
92	{
93		functions.push_back("vkGetPhysicalDeviceExternalSemaphorePropertiesKHR");
94		return;
95	}
96	if (extName == "VK_KHR_external_semaphore")
97	{
98		return;
99	}
100	if (extName == "VK_KHR_external_semaphore_fd")
101	{
102		return;
103	}
104	if (extName == "VK_KHR_push_descriptor")
105	{
106		return;
107	}
108	if (extName == "VK_KHR_shader_float16_int8")
109	{
110		return;
111	}
112	if (extName == "VK_KHR_16bit_storage")
113	{
114		return;
115	}
116	if (extName == "VK_KHR_incremental_present")
117	{
118		return;
119	}
120	if (extName == "VK_KHR_descriptor_update_template")
121	{
122		return;
123	}
124	if (extName == "VK_KHR_imageless_framebuffer")
125	{
126		return;
127	}
128	if (extName == "VK_KHR_create_renderpass2")
129	{
130		return;
131	}
132	if (extName == "VK_KHR_shared_presentable_image")
133	{
134		return;
135	}
136	if (extName == "VK_KHR_external_fence_capabilities")
137	{
138		functions.push_back("vkGetPhysicalDeviceExternalFencePropertiesKHR");
139		return;
140	}
141	if (extName == "VK_KHR_external_fence")
142	{
143		return;
144	}
145	if (extName == "VK_KHR_external_fence_fd")
146	{
147		return;
148	}
149	if (extName == "VK_KHR_performance_query")
150	{
151		functions.push_back("vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR");
152		functions.push_back("vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR");
153		return;
154	}
155	if (extName == "VK_KHR_maintenance2")
156	{
157		return;
158	}
159	if (extName == "VK_KHR_get_surface_capabilities2")
160	{
161		functions.push_back("vkGetPhysicalDeviceSurfaceCapabilities2KHR");
162		functions.push_back("vkGetPhysicalDeviceSurfaceFormats2KHR");
163		return;
164	}
165	if (extName == "VK_KHR_variable_pointers")
166	{
167		return;
168	}
169	if (extName == "VK_KHR_get_display_properties2")
170	{
171		functions.push_back("vkGetPhysicalDeviceDisplayProperties2KHR");
172		functions.push_back("vkGetPhysicalDeviceDisplayPlaneProperties2KHR");
173		functions.push_back("vkGetDisplayModeProperties2KHR");
174		functions.push_back("vkGetDisplayPlaneCapabilities2KHR");
175		return;
176	}
177	if (extName == "VK_KHR_dedicated_allocation")
178	{
179		return;
180	}
181	if (extName == "VK_KHR_storage_buffer_storage_class")
182	{
183		return;
184	}
185	if (extName == "VK_KHR_relaxed_block_layout")
186	{
187		return;
188	}
189	if (extName == "VK_KHR_get_memory_requirements2")
190	{
191		return;
192	}
193	if (extName == "VK_KHR_image_format_list")
194	{
195		return;
196	}
197	if (extName == "VK_KHR_sampler_ycbcr_conversion")
198	{
199		return;
200	}
201	if (extName == "VK_KHR_bind_memory2")
202	{
203		return;
204	}
205	if (extName == "VK_KHR_maintenance3")
206	{
207		return;
208	}
209	if (extName == "VK_KHR_draw_indirect_count")
210	{
211		return;
212	}
213	if (extName == "VK_KHR_shader_subgroup_extended_types")
214	{
215		return;
216	}
217	if (extName == "VK_KHR_8bit_storage")
218	{
219		return;
220	}
221	if (extName == "VK_KHR_shader_atomic_int64")
222	{
223		return;
224	}
225	if (extName == "VK_KHR_shader_clock")
226	{
227		return;
228	}
229	if (extName == "VK_KHR_global_priority")
230	{
231		return;
232	}
233	if (extName == "VK_KHR_driver_properties")
234	{
235		return;
236	}
237	if (extName == "VK_KHR_shader_float_controls")
238	{
239		return;
240	}
241	if (extName == "VK_KHR_depth_stencil_resolve")
242	{
243		return;
244	}
245	if (extName == "VK_KHR_swapchain_mutable_format")
246	{
247		return;
248	}
249	if (extName == "VK_KHR_timeline_semaphore")
250	{
251		return;
252	}
253	if (extName == "VK_KHR_vulkan_memory_model")
254	{
255		return;
256	}
257	if (extName == "VK_KHR_shader_terminate_invocation")
258	{
259		return;
260	}
261	if (extName == "VK_KHR_fragment_shading_rate")
262	{
263		functions.push_back("vkGetPhysicalDeviceFragmentShadingRatesKHR");
264		return;
265	}
266	if (extName == "VK_KHR_spirv_1_4")
267	{
268		return;
269	}
270	if (extName == "VK_KHR_surface_protected_capabilities")
271	{
272		return;
273	}
274	if (extName == "VK_KHR_separate_depth_stencil_layouts")
275	{
276		return;
277	}
278	if (extName == "VK_KHR_present_wait")
279	{
280		return;
281	}
282	if (extName == "VK_KHR_uniform_buffer_standard_layout")
283	{
284		return;
285	}
286	if (extName == "VK_KHR_buffer_device_address")
287	{
288		return;
289	}
290	if (extName == "VK_KHR_deferred_host_operations")
291	{
292		return;
293	}
294	if (extName == "VK_KHR_pipeline_executable_properties")
295	{
296		return;
297	}
298	if (extName == "VK_KHR_shader_integer_dot_product")
299	{
300		return;
301	}
302	if (extName == "VK_KHR_pipeline_library")
303	{
304		return;
305	}
306	if (extName == "VK_KHR_shader_non_semantic_info")
307	{
308		return;
309	}
310	if (extName == "VK_KHR_present_id")
311	{
312		return;
313	}
314	if (extName == "VK_KHR_synchronization2")
315	{
316		return;
317	}
318	if (extName == "VK_KHR_shader_subgroup_uniform_control_flow")
319	{
320		return;
321	}
322	if (extName == "VK_KHR_zero_initialize_workgroup_memory")
323	{
324		return;
325	}
326	if (extName == "VK_KHR_workgroup_memory_explicit_layout")
327	{
328		return;
329	}
330	if (extName == "VK_KHR_copy_commands2")
331	{
332		return;
333	}
334	if (extName == "VK_KHR_format_feature_flags2")
335	{
336		return;
337	}
338	if (extName == "VK_KHR_maintenance4")
339	{
340		return;
341	}
342	if (extName == "VK_EXT_debug_report")
343	{
344		functions.push_back("vkCreateDebugReportCallbackEXT");
345		functions.push_back("vkDestroyDebugReportCallbackEXT");
346		functions.push_back("vkDebugReportMessageEXT");
347		return;
348	}
349	if (extName == "VK_NV_glsl_shader")
350	{
351		return;
352	}
353	if (extName == "VK_EXT_depth_range_unrestricted")
354	{
355		return;
356	}
357	if (extName == "VK_IMG_filter_cubic")
358	{
359		return;
360	}
361	if (extName == "VK_AMD_rasterization_order")
362	{
363		return;
364	}
365	if (extName == "VK_AMD_shader_trinary_minmax")
366	{
367		return;
368	}
369	if (extName == "VK_AMD_shader_explicit_vertex_parameter")
370	{
371		return;
372	}
373	if (extName == "VK_EXT_debug_marker")
374	{
375		return;
376	}
377	if (extName == "VK_AMD_gcn_shader")
378	{
379		return;
380	}
381	if (extName == "VK_NV_dedicated_allocation")
382	{
383		return;
384	}
385	if (extName == "VK_EXT_transform_feedback")
386	{
387		return;
388	}
389	if (extName == "VK_NVX_binary_import")
390	{
391		return;
392	}
393	if (extName == "VK_NVX_image_view_handle")
394	{
395		return;
396	}
397	if (extName == "VK_AMD_draw_indirect_count")
398	{
399		return;
400	}
401	if (extName == "VK_AMD_negative_viewport_height")
402	{
403		return;
404	}
405	if (extName == "VK_AMD_gpu_shader_half_float")
406	{
407		return;
408	}
409	if (extName == "VK_AMD_shader_ballot")
410	{
411		return;
412	}
413	if (extName == "VK_AMD_texture_gather_bias_lod")
414	{
415		return;
416	}
417	if (extName == "VK_AMD_shader_info")
418	{
419		return;
420	}
421	if (extName == "VK_AMD_shader_image_load_store_lod")
422	{
423		return;
424	}
425	if (extName == "VK_NV_corner_sampled_image")
426	{
427		return;
428	}
429	if (extName == "VK_IMG_format_pvrtc")
430	{
431		return;
432	}
433	if (extName == "VK_NV_external_memory_capabilities")
434	{
435		functions.push_back("vkGetPhysicalDeviceExternalImageFormatPropertiesNV");
436		return;
437	}
438	if (extName == "VK_NV_external_memory")
439	{
440		return;
441	}
442	if (extName == "VK_EXT_validation_flags")
443	{
444		return;
445	}
446	if (extName == "VK_EXT_shader_subgroup_ballot")
447	{
448		return;
449	}
450	if (extName == "VK_EXT_shader_subgroup_vote")
451	{
452		return;
453	}
454	if (extName == "VK_EXT_texture_compression_astc_hdr")
455	{
456		return;
457	}
458	if (extName == "VK_EXT_astc_decode_mode")
459	{
460		return;
461	}
462	if (extName == "VK_EXT_conditional_rendering")
463	{
464		return;
465	}
466	if (extName == "VK_NV_clip_space_w_scaling")
467	{
468		return;
469	}
470	if (extName == "VK_EXT_direct_mode_display")
471	{
472		functions.push_back("vkReleaseDisplayEXT");
473		return;
474	}
475	if (extName == "VK_EXT_display_surface_counter")
476	{
477		functions.push_back("vkGetPhysicalDeviceSurfaceCapabilities2EXT");
478		return;
479	}
480	if (extName == "VK_EXT_display_control")
481	{
482		return;
483	}
484	if (extName == "VK_GOOGLE_display_timing")
485	{
486		return;
487	}
488	if (extName == "VK_NV_sample_mask_override_coverage")
489	{
490		return;
491	}
492	if (extName == "VK_NV_geometry_shader_passthrough")
493	{
494		return;
495	}
496	if (extName == "VK_NV_viewport_array2")
497	{
498		return;
499	}
500	if (extName == "VK_NVX_multiview_per_view_attributes")
501	{
502		return;
503	}
504	if (extName == "VK_NV_viewport_swizzle")
505	{
506		return;
507	}
508	if (extName == "VK_EXT_discard_rectangles")
509	{
510		return;
511	}
512	if (extName == "VK_EXT_conservative_rasterization")
513	{
514		return;
515	}
516	if (extName == "VK_EXT_depth_clip_enable")
517	{
518		return;
519	}
520	if (extName == "VK_EXT_swapchain_colorspace")
521	{
522		return;
523	}
524	if (extName == "VK_EXT_hdr_metadata")
525	{
526		return;
527	}
528	if (extName == "VK_EXT_external_memory_dma_buf")
529	{
530		return;
531	}
532	if (extName == "VK_EXT_queue_family_foreign")
533	{
534		return;
535	}
536	if (extName == "VK_EXT_debug_utils")
537	{
538		functions.push_back("vkCreateDebugUtilsMessengerEXT");
539		functions.push_back("vkDestroyDebugUtilsMessengerEXT");
540		functions.push_back("vkSubmitDebugUtilsMessageEXT");
541		return;
542	}
543	if (extName == "VK_EXT_sampler_filter_minmax")
544	{
545		return;
546	}
547	if (extName == "VK_AMD_gpu_shader_int16")
548	{
549		return;
550	}
551	if (extName == "VK_AMD_mixed_attachment_samples")
552	{
553		return;
554	}
555	if (extName == "VK_AMD_shader_fragment_mask")
556	{
557		return;
558	}
559	if (extName == "VK_EXT_inline_uniform_block")
560	{
561		return;
562	}
563	if (extName == "VK_EXT_shader_stencil_export")
564	{
565		return;
566	}
567	if (extName == "VK_EXT_sample_locations")
568	{
569		functions.push_back("vkGetPhysicalDeviceMultisamplePropertiesEXT");
570		return;
571	}
572	if (extName == "VK_EXT_blend_operation_advanced")
573	{
574		return;
575	}
576	if (extName == "VK_NV_fragment_coverage_to_color")
577	{
578		return;
579	}
580	if (extName == "VK_NV_framebuffer_mixed_samples")
581	{
582		return;
583	}
584	if (extName == "VK_NV_fill_rectangle")
585	{
586		return;
587	}
588	if (extName == "VK_NV_shader_sm_builtins")
589	{
590		return;
591	}
592	if (extName == "VK_EXT_post_depth_coverage")
593	{
594		return;
595	}
596	if (extName == "VK_EXT_image_drm_format_modifier")
597	{
598		return;
599	}
600	if (extName == "VK_EXT_validation_cache")
601	{
602		return;
603	}
604	if (extName == "VK_EXT_descriptor_indexing")
605	{
606		return;
607	}
608	if (extName == "VK_EXT_shader_viewport_index_layer")
609	{
610		return;
611	}
612	if (extName == "VK_NV_shading_rate_image")
613	{
614		return;
615	}
616	if (extName == "VK_NV_ray_tracing")
617	{
618		return;
619	}
620	if (extName == "VK_NV_representative_fragment_test")
621	{
622		return;
623	}
624	if (extName == "VK_EXT_filter_cubic")
625	{
626		return;
627	}
628	if (extName == "VK_QCOM_render_pass_shader_resolve")
629	{
630		return;
631	}
632	if (extName == "VK_EXT_global_priority")
633	{
634		return;
635	}
636	if (extName == "VK_EXT_external_memory_host")
637	{
638		return;
639	}
640	if (extName == "VK_AMD_buffer_marker")
641	{
642		return;
643	}
644	if (extName == "VK_AMD_pipeline_compiler_control")
645	{
646		return;
647	}
648	if (extName == "VK_EXT_calibrated_timestamps")
649	{
650		functions.push_back("vkGetPhysicalDeviceCalibrateableTimeDomainsEXT");
651		return;
652	}
653	if (extName == "VK_AMD_shader_core_properties")
654	{
655		return;
656	}
657	if (extName == "VK_AMD_memory_overallocation_behavior")
658	{
659		return;
660	}
661	if (extName == "VK_EXT_vertex_attribute_divisor")
662	{
663		return;
664	}
665	if (extName == "VK_EXT_pipeline_creation_feedback")
666	{
667		return;
668	}
669	if (extName == "VK_NV_shader_subgroup_partitioned")
670	{
671		return;
672	}
673	if (extName == "VK_NV_compute_shader_derivatives")
674	{
675		return;
676	}
677	if (extName == "VK_NV_mesh_shader")
678	{
679		return;
680	}
681	if (extName == "VK_NV_fragment_shader_barycentric")
682	{
683		return;
684	}
685	if (extName == "VK_NV_shader_image_footprint")
686	{
687		return;
688	}
689	if (extName == "VK_NV_scissor_exclusive")
690	{
691		return;
692	}
693	if (extName == "VK_NV_device_diagnostic_checkpoints")
694	{
695		return;
696	}
697	if (extName == "VK_INTEL_shader_integer_functions2")
698	{
699		return;
700	}
701	if (extName == "VK_INTEL_performance_query")
702	{
703		return;
704	}
705	if (extName == "VK_EXT_pci_bus_info")
706	{
707		return;
708	}
709	if (extName == "VK_AMD_display_native_hdr")
710	{
711		return;
712	}
713	if (extName == "VK_EXT_fragment_density_map")
714	{
715		return;
716	}
717	if (extName == "VK_EXT_scalar_block_layout")
718	{
719		return;
720	}
721	if (extName == "VK_GOOGLE_hlsl_functionality1")
722	{
723		return;
724	}
725	if (extName == "VK_GOOGLE_decorate_string")
726	{
727		return;
728	}
729	if (extName == "VK_EXT_subgroup_size_control")
730	{
731		return;
732	}
733	if (extName == "VK_AMD_shader_core_properties2")
734	{
735		return;
736	}
737	if (extName == "VK_AMD_device_coherent_memory")
738	{
739		return;
740	}
741	if (extName == "VK_EXT_shader_image_atomic_int64")
742	{
743		return;
744	}
745	if (extName == "VK_EXT_memory_budget")
746	{
747		return;
748	}
749	if (extName == "VK_EXT_memory_priority")
750	{
751		return;
752	}
753	if (extName == "VK_NV_dedicated_allocation_image_aliasing")
754	{
755		return;
756	}
757	if (extName == "VK_EXT_buffer_device_address")
758	{
759		return;
760	}
761	if (extName == "VK_EXT_tooling_info")
762	{
763		functions.push_back("vkGetPhysicalDeviceToolPropertiesEXT");
764		return;
765	}
766	if (extName == "VK_EXT_separate_stencil_usage")
767	{
768		return;
769	}
770	if (extName == "VK_EXT_validation_features")
771	{
772		return;
773	}
774	if (extName == "VK_NV_cooperative_matrix")
775	{
776		functions.push_back("vkGetPhysicalDeviceCooperativeMatrixPropertiesNV");
777		return;
778	}
779	if (extName == "VK_NV_coverage_reduction_mode")
780	{
781		functions.push_back("vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV");
782		return;
783	}
784	if (extName == "VK_EXT_fragment_shader_interlock")
785	{
786		return;
787	}
788	if (extName == "VK_EXT_ycbcr_image_arrays")
789	{
790		return;
791	}
792	if (extName == "VK_EXT_provoking_vertex")
793	{
794		return;
795	}
796	if (extName == "VK_EXT_headless_surface")
797	{
798		functions.push_back("vkCreateHeadlessSurfaceEXT");
799		return;
800	}
801	if (extName == "VK_EXT_line_rasterization")
802	{
803		return;
804	}
805	if (extName == "VK_EXT_shader_atomic_float")
806	{
807		return;
808	}
809	if (extName == "VK_EXT_host_query_reset")
810	{
811		return;
812	}
813	if (extName == "VK_EXT_index_type_uint8")
814	{
815		return;
816	}
817	if (extName == "VK_EXT_extended_dynamic_state")
818	{
819		return;
820	}
821	if (extName == "VK_EXT_shader_atomic_float2")
822	{
823		return;
824	}
825	if (extName == "VK_EXT_shader_demote_to_helper_invocation")
826	{
827		return;
828	}
829	if (extName == "VK_NV_device_generated_commands")
830	{
831		return;
832	}
833	if (extName == "VK_NV_inherited_viewport_scissor")
834	{
835		return;
836	}
837	if (extName == "VK_EXT_texel_buffer_alignment")
838	{
839		return;
840	}
841	if (extName == "VK_QCOM_render_pass_transform")
842	{
843		return;
844	}
845	if (extName == "VK_EXT_device_memory_report")
846	{
847		return;
848	}
849	if (extName == "VK_EXT_acquire_drm_display")
850	{
851		functions.push_back("vkAcquireDrmDisplayEXT");
852		functions.push_back("vkGetDrmDisplayEXT");
853		return;
854	}
855	if (extName == "VK_EXT_robustness2")
856	{
857		return;
858	}
859	if (extName == "VK_EXT_custom_border_color")
860	{
861		return;
862	}
863	if (extName == "VK_GOOGLE_user_type")
864	{
865		return;
866	}
867	if (extName == "VK_EXT_private_data")
868	{
869		return;
870	}
871	if (extName == "VK_EXT_pipeline_creation_cache_control")
872	{
873		return;
874	}
875	if (extName == "VK_NV_device_diagnostics_config")
876	{
877		return;
878	}
879	if (extName == "VK_QCOM_render_pass_store_ops")
880	{
881		return;
882	}
883	if (extName == "VK_NV_fragment_shading_rate_enums")
884	{
885		return;
886	}
887	if (extName == "VK_NV_ray_tracing_motion_blur")
888	{
889		return;
890	}
891	if (extName == "VK_EXT_ycbcr_2plane_444_formats")
892	{
893		return;
894	}
895	if (extName == "VK_EXT_fragment_density_map2")
896	{
897		return;
898	}
899	if (extName == "VK_QCOM_rotated_copy_commands")
900	{
901		return;
902	}
903	if (extName == "VK_EXT_image_robustness")
904	{
905		return;
906	}
907	if (extName == "VK_EXT_4444_formats")
908	{
909		return;
910	}
911	if (extName == "VK_ARM_rasterization_order_attachment_access")
912	{
913		return;
914	}
915	if (extName == "VK_EXT_rgba10x6_formats")
916	{
917		return;
918	}
919	if (extName == "VK_NV_acquire_winrt_display")
920	{
921		functions.push_back("vkAcquireWinrtDisplayNV");
922		functions.push_back("vkGetWinrtDisplayNV");
923		return;
924	}
925	if (extName == "VK_VALVE_mutable_descriptor_type")
926	{
927		return;
928	}
929	if (extName == "VK_EXT_vertex_input_dynamic_state")
930	{
931		return;
932	}
933	if (extName == "VK_EXT_physical_device_drm")
934	{
935		return;
936	}
937	if (extName == "VK_EXT_depth_clip_control")
938	{
939		return;
940	}
941	if (extName == "VK_EXT_primitive_topology_list_restart")
942	{
943		return;
944	}
945	if (extName == "VK_HUAWEI_subpass_shading")
946	{
947		return;
948	}
949	if (extName == "VK_HUAWEI_invocation_mask")
950	{
951		return;
952	}
953	if (extName == "VK_NV_external_memory_rdma")
954	{
955		return;
956	}
957	if (extName == "VK_EXT_extended_dynamic_state2")
958	{
959		return;
960	}
961	if (extName == "VK_EXT_color_write_enable")
962	{
963		return;
964	}
965	if (extName == "VK_EXT_global_priority_query")
966	{
967		return;
968	}
969	if (extName == "VK_EXT_image_view_min_lod")
970	{
971		return;
972	}
973	if (extName == "VK_EXT_multi_draw")
974	{
975		return;
976	}
977	if (extName == "VK_EXT_load_store_op_none")
978	{
979		return;
980	}
981	if (extName == "VK_EXT_border_color_swizzle")
982	{
983		return;
984	}
985	if (extName == "VK_EXT_pageable_device_local_memory")
986	{
987		return;
988	}
989	if (extName == "VK_QCOM_fragment_density_map_offset")
990	{
991		return;
992	}
993	if (extName == "VK_NV_linear_color_attachment")
994	{
995		return;
996	}
997	if (extName == "VK_GOOGLE_surfaceless_query")
998	{
999		return;
1000	}
1001	if (extName == "VK_KHR_acceleration_structure")
1002	{
1003		return;
1004	}
1005	if (extName == "VK_KHR_ray_tracing_pipeline")
1006	{
1007		return;
1008	}
1009	if (extName == "VK_KHR_ray_query")
1010	{
1011		return;
1012	}
1013	if (extName == "VK_KHR_android_surface")
1014	{
1015		functions.push_back("vkCreateAndroidSurfaceKHR");
1016		return;
1017	}
1018	if (extName == "VK_ANDROID_external_memory_android_hardware_buffer")
1019	{
1020		return;
1021	}
1022	if (extName == "VK_KHR_video_queue")
1023	{
1024		functions.push_back("vkGetPhysicalDeviceVideoCapabilitiesKHR");
1025		functions.push_back("vkGetPhysicalDeviceVideoFormatPropertiesKHR");
1026		return;
1027	}
1028	if (extName == "VK_KHR_video_decode_queue")
1029	{
1030		return;
1031	}
1032	if (extName == "VK_KHR_portability_subset")
1033	{
1034		return;
1035	}
1036	if (extName == "VK_KHR_video_encode_queue")
1037	{
1038		return;
1039	}
1040	if (extName == "VK_EXT_video_encode_h264")
1041	{
1042		return;
1043	}
1044	if (extName == "VK_EXT_video_encode_h265")
1045	{
1046		return;
1047	}
1048	if (extName == "VK_EXT_video_decode_h264")
1049	{
1050		return;
1051	}
1052	if (extName == "VK_EXT_video_decode_h265")
1053	{
1054		return;
1055	}
1056	if (extName == "VK_FUCHSIA_imagepipe_surface")
1057	{
1058		functions.push_back("vkCreateImagePipeSurfaceFUCHSIA");
1059		return;
1060	}
1061	if (extName == "VK_FUCHSIA_external_memory")
1062	{
1063		return;
1064	}
1065	if (extName == "VK_FUCHSIA_external_semaphore")
1066	{
1067		return;
1068	}
1069	if (extName == "VK_FUCHSIA_buffer_collection")
1070	{
1071		return;
1072	}
1073	if (extName == "VK_GGP_stream_descriptor_surface")
1074	{
1075		functions.push_back("vkCreateStreamDescriptorSurfaceGGP");
1076		return;
1077	}
1078	if (extName == "VK_GGP_frame_token")
1079	{
1080		return;
1081	}
1082	if (extName == "VK_MVK_ios_surface")
1083	{
1084		functions.push_back("vkCreateIOSSurfaceMVK");
1085		return;
1086	}
1087	if (extName == "VK_MVK_macos_surface")
1088	{
1089		functions.push_back("vkCreateMacOSSurfaceMVK");
1090		return;
1091	}
1092	if (extName == "VK_EXT_metal_surface")
1093	{
1094		functions.push_back("vkCreateMetalSurfaceEXT");
1095		return;
1096	}
1097	if (extName == "VK_NN_vi_surface")
1098	{
1099		functions.push_back("vkCreateViSurfaceNN");
1100		return;
1101	}
1102	if (extName == "VK_KHR_wayland_surface")
1103	{
1104		functions.push_back("vkCreateWaylandSurfaceKHR");
1105		functions.push_back("vkGetPhysicalDeviceWaylandPresentationSupportKHR");
1106		return;
1107	}
1108	if (extName == "VK_KHR_win32_surface")
1109	{
1110		functions.push_back("vkCreateWin32SurfaceKHR");
1111		functions.push_back("vkGetPhysicalDeviceWin32PresentationSupportKHR");
1112		return;
1113	}
1114	if (extName == "VK_KHR_external_memory_win32")
1115	{
1116		return;
1117	}
1118	if (extName == "VK_KHR_win32_keyed_mutex")
1119	{
1120		return;
1121	}
1122	if (extName == "VK_KHR_external_semaphore_win32")
1123	{
1124		return;
1125	}
1126	if (extName == "VK_KHR_external_fence_win32")
1127	{
1128		return;
1129	}
1130	if (extName == "VK_NV_external_memory_win32")
1131	{
1132		return;
1133	}
1134	if (extName == "VK_NV_win32_keyed_mutex")
1135	{
1136		return;
1137	}
1138	if (extName == "VK_EXT_full_screen_exclusive")
1139	{
1140		functions.push_back("vkGetPhysicalDeviceSurfacePresentModes2EXT");
1141		return;
1142	}
1143	if (extName == "VK_KHR_xcb_surface")
1144	{
1145		functions.push_back("vkCreateXcbSurfaceKHR");
1146		functions.push_back("vkGetPhysicalDeviceXcbPresentationSupportKHR");
1147		return;
1148	}
1149	if (extName == "VK_KHR_xlib_surface")
1150	{
1151		functions.push_back("vkCreateXlibSurfaceKHR");
1152		functions.push_back("vkGetPhysicalDeviceXlibPresentationSupportKHR");
1153		return;
1154	}
1155	if (extName == "VK_EXT_acquire_xlib_display")
1156	{
1157		functions.push_back("vkAcquireXlibDisplayEXT");
1158		functions.push_back("vkGetRandROutputDisplayEXT");
1159		return;
1160	}
1161	DE_FATAL("Extension name not found");
1162}
1163
1164void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::std::vector<const char*>& functions)
1165{
1166	if (extName == "VK_KHR_surface")
1167	{
1168		return;
1169	}
1170	if (extName == "VK_KHR_swapchain")
1171	{
1172		functions.push_back("vkCreateSwapchainKHR");
1173		functions.push_back("vkDestroySwapchainKHR");
1174		functions.push_back("vkGetSwapchainImagesKHR");
1175		functions.push_back("vkAcquireNextImageKHR");
1176		functions.push_back("vkQueuePresentKHR");
1177		if(apiVersion >= VK_API_VERSION_1_1) functions.push_back("vkGetDeviceGroupPresentCapabilitiesKHR");
1178		if(apiVersion >= VK_API_VERSION_1_1) functions.push_back("vkGetDeviceGroupSurfacePresentModesKHR");
1179		if(apiVersion >= VK_API_VERSION_1_1) functions.push_back("vkAcquireNextImage2KHR");
1180		return;
1181	}
1182	if (extName == "VK_KHR_display")
1183	{
1184		return;
1185	}
1186	if (extName == "VK_KHR_display_swapchain")
1187	{
1188		functions.push_back("vkCreateSharedSwapchainsKHR");
1189		return;
1190	}
1191	if (extName == "VK_KHR_sampler_mirror_clamp_to_edge")
1192	{
1193		return;
1194	}
1195	if (extName == "VK_KHR_dynamic_rendering")
1196	{
1197		functions.push_back("vkCmdBeginRenderingKHR");
1198		functions.push_back("vkCmdEndRenderingKHR");
1199		return;
1200	}
1201	if (extName == "VK_KHR_multiview")
1202	{
1203		return;
1204	}
1205	if (extName == "VK_KHR_get_physical_device_properties2")
1206	{
1207		return;
1208	}
1209	if (extName == "VK_KHR_device_group")
1210	{
1211		functions.push_back("vkGetDeviceGroupPeerMemoryFeaturesKHR");
1212		functions.push_back("vkCmdSetDeviceMaskKHR");
1213		functions.push_back("vkCmdDispatchBaseKHR");
1214		if(apiVersion < VK_API_VERSION_1_1) functions.push_back("vkGetDeviceGroupPresentCapabilitiesKHR");
1215		if(apiVersion < VK_API_VERSION_1_1) functions.push_back("vkGetDeviceGroupSurfacePresentModesKHR");
1216		if(apiVersion < VK_API_VERSION_1_1) functions.push_back("vkAcquireNextImage2KHR");
1217		return;
1218	}
1219	if (extName == "VK_KHR_shader_draw_parameters")
1220	{
1221		return;
1222	}
1223	if (extName == "VK_KHR_maintenance1")
1224	{
1225		functions.push_back("vkTrimCommandPoolKHR");
1226		return;
1227	}
1228	if (extName == "VK_KHR_device_group_creation")
1229	{
1230		return;
1231	}
1232	if (extName == "VK_KHR_external_memory_capabilities")
1233	{
1234		return;
1235	}
1236	if (extName == "VK_KHR_external_memory")
1237	{
1238		return;
1239	}
1240	if (extName == "VK_KHR_external_memory_fd")
1241	{
1242		functions.push_back("vkGetMemoryFdKHR");
1243		functions.push_back("vkGetMemoryFdPropertiesKHR");
1244		return;
1245	}
1246	if (extName == "VK_KHR_external_semaphore_capabilities")
1247	{
1248		return;
1249	}
1250	if (extName == "VK_KHR_external_semaphore")
1251	{
1252		return;
1253	}
1254	if (extName == "VK_KHR_external_semaphore_fd")
1255	{
1256		functions.push_back("vkImportSemaphoreFdKHR");
1257		functions.push_back("vkGetSemaphoreFdKHR");
1258		return;
1259	}
1260	if (extName == "VK_KHR_push_descriptor")
1261	{
1262		functions.push_back("vkCmdPushDescriptorSetKHR");
1263		functions.push_back("vkCmdPushDescriptorSetWithTemplateKHR");
1264		return;
1265	}
1266	if (extName == "VK_KHR_shader_float16_int8")
1267	{
1268		return;
1269	}
1270	if (extName == "VK_KHR_16bit_storage")
1271	{
1272		return;
1273	}
1274	if (extName == "VK_KHR_incremental_present")
1275	{
1276		return;
1277	}
1278	if (extName == "VK_KHR_descriptor_update_template")
1279	{
1280		functions.push_back("vkCreateDescriptorUpdateTemplateKHR");
1281		functions.push_back("vkDestroyDescriptorUpdateTemplateKHR");
1282		functions.push_back("vkUpdateDescriptorSetWithTemplateKHR");
1283		return;
1284	}
1285	if (extName == "VK_KHR_imageless_framebuffer")
1286	{
1287		return;
1288	}
1289	if (extName == "VK_KHR_create_renderpass2")
1290	{
1291		functions.push_back("vkCreateRenderPass2KHR");
1292		functions.push_back("vkCmdBeginRenderPass2KHR");
1293		functions.push_back("vkCmdNextSubpass2KHR");
1294		functions.push_back("vkCmdEndRenderPass2KHR");
1295		return;
1296	}
1297	if (extName == "VK_KHR_shared_presentable_image")
1298	{
1299		functions.push_back("vkGetSwapchainStatusKHR");
1300		return;
1301	}
1302	if (extName == "VK_KHR_external_fence_capabilities")
1303	{
1304		return;
1305	}
1306	if (extName == "VK_KHR_external_fence")
1307	{
1308		return;
1309	}
1310	if (extName == "VK_KHR_external_fence_fd")
1311	{
1312		functions.push_back("vkImportFenceFdKHR");
1313		functions.push_back("vkGetFenceFdKHR");
1314		return;
1315	}
1316	if (extName == "VK_KHR_performance_query")
1317	{
1318		functions.push_back("vkAcquireProfilingLockKHR");
1319		functions.push_back("vkReleaseProfilingLockKHR");
1320		return;
1321	}
1322	if (extName == "VK_KHR_maintenance2")
1323	{
1324		return;
1325	}
1326	if (extName == "VK_KHR_get_surface_capabilities2")
1327	{
1328		return;
1329	}
1330	if (extName == "VK_KHR_variable_pointers")
1331	{
1332		return;
1333	}
1334	if (extName == "VK_KHR_get_display_properties2")
1335	{
1336		return;
1337	}
1338	if (extName == "VK_KHR_dedicated_allocation")
1339	{
1340		return;
1341	}
1342	if (extName == "VK_KHR_storage_buffer_storage_class")
1343	{
1344		return;
1345	}
1346	if (extName == "VK_KHR_relaxed_block_layout")
1347	{
1348		return;
1349	}
1350	if (extName == "VK_KHR_get_memory_requirements2")
1351	{
1352		functions.push_back("vkGetImageMemoryRequirements2KHR");
1353		functions.push_back("vkGetBufferMemoryRequirements2KHR");
1354		functions.push_back("vkGetImageSparseMemoryRequirements2KHR");
1355		return;
1356	}
1357	if (extName == "VK_KHR_image_format_list")
1358	{
1359		return;
1360	}
1361	if (extName == "VK_KHR_sampler_ycbcr_conversion")
1362	{
1363		functions.push_back("vkCreateSamplerYcbcrConversionKHR");
1364		functions.push_back("vkDestroySamplerYcbcrConversionKHR");
1365		return;
1366	}
1367	if (extName == "VK_KHR_bind_memory2")
1368	{
1369		functions.push_back("vkBindBufferMemory2KHR");
1370		functions.push_back("vkBindImageMemory2KHR");
1371		return;
1372	}
1373	if (extName == "VK_KHR_maintenance3")
1374	{
1375		functions.push_back("vkGetDescriptorSetLayoutSupportKHR");
1376		return;
1377	}
1378	if (extName == "VK_KHR_draw_indirect_count")
1379	{
1380		functions.push_back("vkCmdDrawIndirectCountKHR");
1381		functions.push_back("vkCmdDrawIndexedIndirectCountKHR");
1382		return;
1383	}
1384	if (extName == "VK_KHR_shader_subgroup_extended_types")
1385	{
1386		return;
1387	}
1388	if (extName == "VK_KHR_8bit_storage")
1389	{
1390		return;
1391	}
1392	if (extName == "VK_KHR_shader_atomic_int64")
1393	{
1394		return;
1395	}
1396	if (extName == "VK_KHR_shader_clock")
1397	{
1398		return;
1399	}
1400	if (extName == "VK_KHR_global_priority")
1401	{
1402		return;
1403	}
1404	if (extName == "VK_KHR_driver_properties")
1405	{
1406		return;
1407	}
1408	if (extName == "VK_KHR_shader_float_controls")
1409	{
1410		return;
1411	}
1412	if (extName == "VK_KHR_depth_stencil_resolve")
1413	{
1414		return;
1415	}
1416	if (extName == "VK_KHR_swapchain_mutable_format")
1417	{
1418		return;
1419	}
1420	if (extName == "VK_KHR_timeline_semaphore")
1421	{
1422		functions.push_back("vkGetSemaphoreCounterValueKHR");
1423		functions.push_back("vkWaitSemaphoresKHR");
1424		functions.push_back("vkSignalSemaphoreKHR");
1425		return;
1426	}
1427	if (extName == "VK_KHR_vulkan_memory_model")
1428	{
1429		return;
1430	}
1431	if (extName == "VK_KHR_shader_terminate_invocation")
1432	{
1433		return;
1434	}
1435	if (extName == "VK_KHR_fragment_shading_rate")
1436	{
1437		functions.push_back("vkCmdSetFragmentShadingRateKHR");
1438		return;
1439	}
1440	if (extName == "VK_KHR_spirv_1_4")
1441	{
1442		return;
1443	}
1444	if (extName == "VK_KHR_surface_protected_capabilities")
1445	{
1446		return;
1447	}
1448	if (extName == "VK_KHR_separate_depth_stencil_layouts")
1449	{
1450		return;
1451	}
1452	if (extName == "VK_KHR_present_wait")
1453	{
1454		functions.push_back("vkWaitForPresentKHR");
1455		return;
1456	}
1457	if (extName == "VK_KHR_uniform_buffer_standard_layout")
1458	{
1459		return;
1460	}
1461	if (extName == "VK_KHR_buffer_device_address")
1462	{
1463		functions.push_back("vkGetBufferDeviceAddressKHR");
1464		functions.push_back("vkGetBufferOpaqueCaptureAddressKHR");
1465		functions.push_back("vkGetDeviceMemoryOpaqueCaptureAddressKHR");
1466		return;
1467	}
1468	if (extName == "VK_KHR_deferred_host_operations")
1469	{
1470		functions.push_back("vkCreateDeferredOperationKHR");
1471		functions.push_back("vkDestroyDeferredOperationKHR");
1472		functions.push_back("vkGetDeferredOperationMaxConcurrencyKHR");
1473		functions.push_back("vkGetDeferredOperationResultKHR");
1474		functions.push_back("vkDeferredOperationJoinKHR");
1475		return;
1476	}
1477	if (extName == "VK_KHR_pipeline_executable_properties")
1478	{
1479		functions.push_back("vkGetPipelineExecutablePropertiesKHR");
1480		functions.push_back("vkGetPipelineExecutableStatisticsKHR");
1481		functions.push_back("vkGetPipelineExecutableInternalRepresentationsKHR");
1482		return;
1483	}
1484	if (extName == "VK_KHR_shader_integer_dot_product")
1485	{
1486		return;
1487	}
1488	if (extName == "VK_KHR_pipeline_library")
1489	{
1490		return;
1491	}
1492	if (extName == "VK_KHR_shader_non_semantic_info")
1493	{
1494		return;
1495	}
1496	if (extName == "VK_KHR_present_id")
1497	{
1498		return;
1499	}
1500	if (extName == "VK_KHR_synchronization2")
1501	{
1502		functions.push_back("vkCmdSetEvent2KHR");
1503		functions.push_back("vkCmdResetEvent2KHR");
1504		functions.push_back("vkCmdWaitEvents2KHR");
1505		functions.push_back("vkCmdPipelineBarrier2KHR");
1506		functions.push_back("vkCmdWriteTimestamp2KHR");
1507		functions.push_back("vkQueueSubmit2KHR");
1508		return;
1509	}
1510	if (extName == "VK_KHR_shader_subgroup_uniform_control_flow")
1511	{
1512		return;
1513	}
1514	if (extName == "VK_KHR_zero_initialize_workgroup_memory")
1515	{
1516		return;
1517	}
1518	if (extName == "VK_KHR_workgroup_memory_explicit_layout")
1519	{
1520		return;
1521	}
1522	if (extName == "VK_KHR_copy_commands2")
1523	{
1524		functions.push_back("vkCmdCopyBuffer2KHR");
1525		functions.push_back("vkCmdCopyImage2KHR");
1526		functions.push_back("vkCmdCopyBufferToImage2KHR");
1527		functions.push_back("vkCmdCopyImageToBuffer2KHR");
1528		functions.push_back("vkCmdBlitImage2KHR");
1529		functions.push_back("vkCmdResolveImage2KHR");
1530		return;
1531	}
1532	if (extName == "VK_KHR_format_feature_flags2")
1533	{
1534		return;
1535	}
1536	if (extName == "VK_KHR_maintenance4")
1537	{
1538		functions.push_back("vkGetDeviceBufferMemoryRequirementsKHR");
1539		functions.push_back("vkGetDeviceImageMemoryRequirementsKHR");
1540		functions.push_back("vkGetDeviceImageSparseMemoryRequirementsKHR");
1541		return;
1542	}
1543	if (extName == "VK_EXT_debug_report")
1544	{
1545		return;
1546	}
1547	if (extName == "VK_NV_glsl_shader")
1548	{
1549		return;
1550	}
1551	if (extName == "VK_EXT_depth_range_unrestricted")
1552	{
1553		return;
1554	}
1555	if (extName == "VK_IMG_filter_cubic")
1556	{
1557		return;
1558	}
1559	if (extName == "VK_AMD_rasterization_order")
1560	{
1561		return;
1562	}
1563	if (extName == "VK_AMD_shader_trinary_minmax")
1564	{
1565		return;
1566	}
1567	if (extName == "VK_AMD_shader_explicit_vertex_parameter")
1568	{
1569		return;
1570	}
1571	if (extName == "VK_EXT_debug_marker")
1572	{
1573		functions.push_back("vkDebugMarkerSetObjectTagEXT");
1574		functions.push_back("vkDebugMarkerSetObjectNameEXT");
1575		functions.push_back("vkCmdDebugMarkerBeginEXT");
1576		functions.push_back("vkCmdDebugMarkerEndEXT");
1577		functions.push_back("vkCmdDebugMarkerInsertEXT");
1578		return;
1579	}
1580	if (extName == "VK_AMD_gcn_shader")
1581	{
1582		return;
1583	}
1584	if (extName == "VK_NV_dedicated_allocation")
1585	{
1586		return;
1587	}
1588	if (extName == "VK_EXT_transform_feedback")
1589	{
1590		functions.push_back("vkCmdBindTransformFeedbackBuffersEXT");
1591		functions.push_back("vkCmdBeginTransformFeedbackEXT");
1592		functions.push_back("vkCmdEndTransformFeedbackEXT");
1593		functions.push_back("vkCmdBeginQueryIndexedEXT");
1594		functions.push_back("vkCmdEndQueryIndexedEXT");
1595		functions.push_back("vkCmdDrawIndirectByteCountEXT");
1596		return;
1597	}
1598	if (extName == "VK_NVX_binary_import")
1599	{
1600		functions.push_back("vkCreateCuModuleNVX");
1601		functions.push_back("vkCreateCuFunctionNVX");
1602		functions.push_back("vkDestroyCuModuleNVX");
1603		functions.push_back("vkDestroyCuFunctionNVX");
1604		functions.push_back("vkCmdCuLaunchKernelNVX");
1605		return;
1606	}
1607	if (extName == "VK_NVX_image_view_handle")
1608	{
1609		functions.push_back("vkGetImageViewHandleNVX");
1610		functions.push_back("vkGetImageViewAddressNVX");
1611		return;
1612	}
1613	if (extName == "VK_AMD_draw_indirect_count")
1614	{
1615		functions.push_back("vkCmdDrawIndirectCountAMD");
1616		functions.push_back("vkCmdDrawIndexedIndirectCountAMD");
1617		return;
1618	}
1619	if (extName == "VK_AMD_negative_viewport_height")
1620	{
1621		return;
1622	}
1623	if (extName == "VK_AMD_gpu_shader_half_float")
1624	{
1625		return;
1626	}
1627	if (extName == "VK_AMD_shader_ballot")
1628	{
1629		return;
1630	}
1631	if (extName == "VK_AMD_texture_gather_bias_lod")
1632	{
1633		return;
1634	}
1635	if (extName == "VK_AMD_shader_info")
1636	{
1637		functions.push_back("vkGetShaderInfoAMD");
1638		return;
1639	}
1640	if (extName == "VK_AMD_shader_image_load_store_lod")
1641	{
1642		return;
1643	}
1644	if (extName == "VK_NV_corner_sampled_image")
1645	{
1646		return;
1647	}
1648	if (extName == "VK_IMG_format_pvrtc")
1649	{
1650		return;
1651	}
1652	if (extName == "VK_NV_external_memory_capabilities")
1653	{
1654		return;
1655	}
1656	if (extName == "VK_NV_external_memory")
1657	{
1658		return;
1659	}
1660	if (extName == "VK_EXT_validation_flags")
1661	{
1662		return;
1663	}
1664	if (extName == "VK_EXT_shader_subgroup_ballot")
1665	{
1666		return;
1667	}
1668	if (extName == "VK_EXT_shader_subgroup_vote")
1669	{
1670		return;
1671	}
1672	if (extName == "VK_EXT_texture_compression_astc_hdr")
1673	{
1674		return;
1675	}
1676	if (extName == "VK_EXT_astc_decode_mode")
1677	{
1678		return;
1679	}
1680	if (extName == "VK_EXT_conditional_rendering")
1681	{
1682		functions.push_back("vkCmdBeginConditionalRenderingEXT");
1683		functions.push_back("vkCmdEndConditionalRenderingEXT");
1684		return;
1685	}
1686	if (extName == "VK_NV_clip_space_w_scaling")
1687	{
1688		functions.push_back("vkCmdSetViewportWScalingNV");
1689		return;
1690	}
1691	if (extName == "VK_EXT_direct_mode_display")
1692	{
1693		return;
1694	}
1695	if (extName == "VK_EXT_display_surface_counter")
1696	{
1697		return;
1698	}
1699	if (extName == "VK_EXT_display_control")
1700	{
1701		functions.push_back("vkDisplayPowerControlEXT");
1702		functions.push_back("vkRegisterDeviceEventEXT");
1703		functions.push_back("vkRegisterDisplayEventEXT");
1704		functions.push_back("vkGetSwapchainCounterEXT");
1705		return;
1706	}
1707	if (extName == "VK_GOOGLE_display_timing")
1708	{
1709		functions.push_back("vkGetRefreshCycleDurationGOOGLE");
1710		functions.push_back("vkGetPastPresentationTimingGOOGLE");
1711		return;
1712	}
1713	if (extName == "VK_NV_sample_mask_override_coverage")
1714	{
1715		return;
1716	}
1717	if (extName == "VK_NV_geometry_shader_passthrough")
1718	{
1719		return;
1720	}
1721	if (extName == "VK_NV_viewport_array2")
1722	{
1723		return;
1724	}
1725	if (extName == "VK_NVX_multiview_per_view_attributes")
1726	{
1727		return;
1728	}
1729	if (extName == "VK_NV_viewport_swizzle")
1730	{
1731		return;
1732	}
1733	if (extName == "VK_EXT_discard_rectangles")
1734	{
1735		functions.push_back("vkCmdSetDiscardRectangleEXT");
1736		return;
1737	}
1738	if (extName == "VK_EXT_conservative_rasterization")
1739	{
1740		return;
1741	}
1742	if (extName == "VK_EXT_depth_clip_enable")
1743	{
1744		return;
1745	}
1746	if (extName == "VK_EXT_swapchain_colorspace")
1747	{
1748		return;
1749	}
1750	if (extName == "VK_EXT_hdr_metadata")
1751	{
1752		functions.push_back("vkSetHdrMetadataEXT");
1753		return;
1754	}
1755	if (extName == "VK_EXT_external_memory_dma_buf")
1756	{
1757		return;
1758	}
1759	if (extName == "VK_EXT_queue_family_foreign")
1760	{
1761		return;
1762	}
1763	if (extName == "VK_EXT_debug_utils")
1764	{
1765		functions.push_back("vkSetDebugUtilsObjectNameEXT");
1766		functions.push_back("vkSetDebugUtilsObjectTagEXT");
1767		functions.push_back("vkQueueBeginDebugUtilsLabelEXT");
1768		functions.push_back("vkQueueEndDebugUtilsLabelEXT");
1769		functions.push_back("vkQueueInsertDebugUtilsLabelEXT");
1770		functions.push_back("vkCmdBeginDebugUtilsLabelEXT");
1771		functions.push_back("vkCmdEndDebugUtilsLabelEXT");
1772		functions.push_back("vkCmdInsertDebugUtilsLabelEXT");
1773		return;
1774	}
1775	if (extName == "VK_EXT_sampler_filter_minmax")
1776	{
1777		return;
1778	}
1779	if (extName == "VK_AMD_gpu_shader_int16")
1780	{
1781		return;
1782	}
1783	if (extName == "VK_AMD_mixed_attachment_samples")
1784	{
1785		return;
1786	}
1787	if (extName == "VK_AMD_shader_fragment_mask")
1788	{
1789		return;
1790	}
1791	if (extName == "VK_EXT_inline_uniform_block")
1792	{
1793		return;
1794	}
1795	if (extName == "VK_EXT_shader_stencil_export")
1796	{
1797		return;
1798	}
1799	if (extName == "VK_EXT_sample_locations")
1800	{
1801		functions.push_back("vkCmdSetSampleLocationsEXT");
1802		return;
1803	}
1804	if (extName == "VK_EXT_blend_operation_advanced")
1805	{
1806		return;
1807	}
1808	if (extName == "VK_NV_fragment_coverage_to_color")
1809	{
1810		return;
1811	}
1812	if (extName == "VK_NV_framebuffer_mixed_samples")
1813	{
1814		return;
1815	}
1816	if (extName == "VK_NV_fill_rectangle")
1817	{
1818		return;
1819	}
1820	if (extName == "VK_NV_shader_sm_builtins")
1821	{
1822		return;
1823	}
1824	if (extName == "VK_EXT_post_depth_coverage")
1825	{
1826		return;
1827	}
1828	if (extName == "VK_EXT_image_drm_format_modifier")
1829	{
1830		functions.push_back("vkGetImageDrmFormatModifierPropertiesEXT");
1831		return;
1832	}
1833	if (extName == "VK_EXT_validation_cache")
1834	{
1835		functions.push_back("vkCreateValidationCacheEXT");
1836		functions.push_back("vkDestroyValidationCacheEXT");
1837		functions.push_back("vkMergeValidationCachesEXT");
1838		functions.push_back("vkGetValidationCacheDataEXT");
1839		return;
1840	}
1841	if (extName == "VK_EXT_descriptor_indexing")
1842	{
1843		return;
1844	}
1845	if (extName == "VK_EXT_shader_viewport_index_layer")
1846	{
1847		return;
1848	}
1849	if (extName == "VK_NV_shading_rate_image")
1850	{
1851		functions.push_back("vkCmdBindShadingRateImageNV");
1852		functions.push_back("vkCmdSetViewportShadingRatePaletteNV");
1853		functions.push_back("vkCmdSetCoarseSampleOrderNV");
1854		return;
1855	}
1856	if (extName == "VK_NV_ray_tracing")
1857	{
1858		functions.push_back("vkCreateAccelerationStructureNV");
1859		functions.push_back("vkDestroyAccelerationStructureNV");
1860		functions.push_back("vkGetAccelerationStructureMemoryRequirementsNV");
1861		functions.push_back("vkBindAccelerationStructureMemoryNV");
1862		functions.push_back("vkCmdBuildAccelerationStructureNV");
1863		functions.push_back("vkCmdCopyAccelerationStructureNV");
1864		functions.push_back("vkCmdTraceRaysNV");
1865		functions.push_back("vkCreateRayTracingPipelinesNV");
1866		functions.push_back("vkGetRayTracingShaderGroupHandlesNV");
1867		functions.push_back("vkGetAccelerationStructureHandleNV");
1868		functions.push_back("vkCmdWriteAccelerationStructuresPropertiesNV");
1869		functions.push_back("vkCompileDeferredNV");
1870		return;
1871	}
1872	if (extName == "VK_NV_representative_fragment_test")
1873	{
1874		return;
1875	}
1876	if (extName == "VK_EXT_filter_cubic")
1877	{
1878		return;
1879	}
1880	if (extName == "VK_QCOM_render_pass_shader_resolve")
1881	{
1882		return;
1883	}
1884	if (extName == "VK_EXT_global_priority")
1885	{
1886		return;
1887	}
1888	if (extName == "VK_EXT_external_memory_host")
1889	{
1890		functions.push_back("vkGetMemoryHostPointerPropertiesEXT");
1891		return;
1892	}
1893	if (extName == "VK_AMD_buffer_marker")
1894	{
1895		functions.push_back("vkCmdWriteBufferMarkerAMD");
1896		return;
1897	}
1898	if (extName == "VK_AMD_pipeline_compiler_control")
1899	{
1900		return;
1901	}
1902	if (extName == "VK_EXT_calibrated_timestamps")
1903	{
1904		functions.push_back("vkGetCalibratedTimestampsEXT");
1905		return;
1906	}
1907	if (extName == "VK_AMD_shader_core_properties")
1908	{
1909		return;
1910	}
1911	if (extName == "VK_AMD_memory_overallocation_behavior")
1912	{
1913		return;
1914	}
1915	if (extName == "VK_EXT_vertex_attribute_divisor")
1916	{
1917		return;
1918	}
1919	if (extName == "VK_EXT_pipeline_creation_feedback")
1920	{
1921		return;
1922	}
1923	if (extName == "VK_NV_shader_subgroup_partitioned")
1924	{
1925		return;
1926	}
1927	if (extName == "VK_NV_compute_shader_derivatives")
1928	{
1929		return;
1930	}
1931	if (extName == "VK_NV_mesh_shader")
1932	{
1933		functions.push_back("vkCmdDrawMeshTasksNV");
1934		functions.push_back("vkCmdDrawMeshTasksIndirectNV");
1935		functions.push_back("vkCmdDrawMeshTasksIndirectCountNV");
1936		return;
1937	}
1938	if (extName == "VK_NV_fragment_shader_barycentric")
1939	{
1940		return;
1941	}
1942	if (extName == "VK_NV_shader_image_footprint")
1943	{
1944		return;
1945	}
1946	if (extName == "VK_NV_scissor_exclusive")
1947	{
1948		functions.push_back("vkCmdSetExclusiveScissorNV");
1949		return;
1950	}
1951	if (extName == "VK_NV_device_diagnostic_checkpoints")
1952	{
1953		functions.push_back("vkCmdSetCheckpointNV");
1954		functions.push_back("vkGetQueueCheckpointDataNV");
1955		return;
1956	}
1957	if (extName == "VK_INTEL_shader_integer_functions2")
1958	{
1959		return;
1960	}
1961	if (extName == "VK_INTEL_performance_query")
1962	{
1963		functions.push_back("vkInitializePerformanceApiINTEL");
1964		functions.push_back("vkUninitializePerformanceApiINTEL");
1965		functions.push_back("vkCmdSetPerformanceMarkerINTEL");
1966		functions.push_back("vkCmdSetPerformanceStreamMarkerINTEL");
1967		functions.push_back("vkCmdSetPerformanceOverrideINTEL");
1968		functions.push_back("vkAcquirePerformanceConfigurationINTEL");
1969		functions.push_back("vkReleasePerformanceConfigurationINTEL");
1970		functions.push_back("vkQueueSetPerformanceConfigurationINTEL");
1971		functions.push_back("vkGetPerformanceParameterINTEL");
1972		return;
1973	}
1974	if (extName == "VK_EXT_pci_bus_info")
1975	{
1976		return;
1977	}
1978	if (extName == "VK_AMD_display_native_hdr")
1979	{
1980		functions.push_back("vkSetLocalDimmingAMD");
1981		return;
1982	}
1983	if (extName == "VK_EXT_fragment_density_map")
1984	{
1985		return;
1986	}
1987	if (extName == "VK_EXT_scalar_block_layout")
1988	{
1989		return;
1990	}
1991	if (extName == "VK_GOOGLE_hlsl_functionality1")
1992	{
1993		return;
1994	}
1995	if (extName == "VK_GOOGLE_decorate_string")
1996	{
1997		return;
1998	}
1999	if (extName == "VK_EXT_subgroup_size_control")
2000	{
2001		return;
2002	}
2003	if (extName == "VK_AMD_shader_core_properties2")
2004	{
2005		return;
2006	}
2007	if (extName == "VK_AMD_device_coherent_memory")
2008	{
2009		return;
2010	}
2011	if (extName == "VK_EXT_shader_image_atomic_int64")
2012	{
2013		return;
2014	}
2015	if (extName == "VK_EXT_memory_budget")
2016	{
2017		return;
2018	}
2019	if (extName == "VK_EXT_memory_priority")
2020	{
2021		return;
2022	}
2023	if (extName == "VK_NV_dedicated_allocation_image_aliasing")
2024	{
2025		return;
2026	}
2027	if (extName == "VK_EXT_buffer_device_address")
2028	{
2029		functions.push_back("vkGetBufferDeviceAddressEXT");
2030		return;
2031	}
2032	if (extName == "VK_EXT_tooling_info")
2033	{
2034		return;
2035	}
2036	if (extName == "VK_EXT_separate_stencil_usage")
2037	{
2038		return;
2039	}
2040	if (extName == "VK_EXT_validation_features")
2041	{
2042		return;
2043	}
2044	if (extName == "VK_NV_cooperative_matrix")
2045	{
2046		return;
2047	}
2048	if (extName == "VK_NV_coverage_reduction_mode")
2049	{
2050		return;
2051	}
2052	if (extName == "VK_EXT_fragment_shader_interlock")
2053	{
2054		return;
2055	}
2056	if (extName == "VK_EXT_ycbcr_image_arrays")
2057	{
2058		return;
2059	}
2060	if (extName == "VK_EXT_provoking_vertex")
2061	{
2062		return;
2063	}
2064	if (extName == "VK_EXT_headless_surface")
2065	{
2066		return;
2067	}
2068	if (extName == "VK_EXT_line_rasterization")
2069	{
2070		functions.push_back("vkCmdSetLineStippleEXT");
2071		return;
2072	}
2073	if (extName == "VK_EXT_shader_atomic_float")
2074	{
2075		return;
2076	}
2077	if (extName == "VK_EXT_host_query_reset")
2078	{
2079		functions.push_back("vkResetQueryPoolEXT");
2080		return;
2081	}
2082	if (extName == "VK_EXT_index_type_uint8")
2083	{
2084		return;
2085	}
2086	if (extName == "VK_EXT_extended_dynamic_state")
2087	{
2088		functions.push_back("vkCmdSetCullModeEXT");
2089		functions.push_back("vkCmdSetFrontFaceEXT");
2090		functions.push_back("vkCmdSetPrimitiveTopologyEXT");
2091		functions.push_back("vkCmdSetViewportWithCountEXT");
2092		functions.push_back("vkCmdSetScissorWithCountEXT");
2093		functions.push_back("vkCmdBindVertexBuffers2EXT");
2094		functions.push_back("vkCmdSetDepthTestEnableEXT");
2095		functions.push_back("vkCmdSetDepthWriteEnableEXT");
2096		functions.push_back("vkCmdSetDepthCompareOpEXT");
2097		functions.push_back("vkCmdSetDepthBoundsTestEnableEXT");
2098		functions.push_back("vkCmdSetStencilTestEnableEXT");
2099		functions.push_back("vkCmdSetStencilOpEXT");
2100		return;
2101	}
2102	if (extName == "VK_EXT_shader_atomic_float2")
2103	{
2104		return;
2105	}
2106	if (extName == "VK_EXT_shader_demote_to_helper_invocation")
2107	{
2108		return;
2109	}
2110	if (extName == "VK_NV_device_generated_commands")
2111	{
2112		functions.push_back("vkGetGeneratedCommandsMemoryRequirementsNV");
2113		functions.push_back("vkCmdPreprocessGeneratedCommandsNV");
2114		functions.push_back("vkCmdExecuteGeneratedCommandsNV");
2115		functions.push_back("vkCmdBindPipelineShaderGroupNV");
2116		functions.push_back("vkCreateIndirectCommandsLayoutNV");
2117		functions.push_back("vkDestroyIndirectCommandsLayoutNV");
2118		return;
2119	}
2120	if (extName == "VK_NV_inherited_viewport_scissor")
2121	{
2122		return;
2123	}
2124	if (extName == "VK_EXT_texel_buffer_alignment")
2125	{
2126		return;
2127	}
2128	if (extName == "VK_QCOM_render_pass_transform")
2129	{
2130		return;
2131	}
2132	if (extName == "VK_EXT_device_memory_report")
2133	{
2134		return;
2135	}
2136	if (extName == "VK_EXT_acquire_drm_display")
2137	{
2138		return;
2139	}
2140	if (extName == "VK_EXT_robustness2")
2141	{
2142		return;
2143	}
2144	if (extName == "VK_EXT_custom_border_color")
2145	{
2146		return;
2147	}
2148	if (extName == "VK_GOOGLE_user_type")
2149	{
2150		return;
2151	}
2152	if (extName == "VK_EXT_private_data")
2153	{
2154		functions.push_back("vkCreatePrivateDataSlotEXT");
2155		functions.push_back("vkDestroyPrivateDataSlotEXT");
2156		functions.push_back("vkSetPrivateDataEXT");
2157		functions.push_back("vkGetPrivateDataEXT");
2158		return;
2159	}
2160	if (extName == "VK_EXT_pipeline_creation_cache_control")
2161	{
2162		return;
2163	}
2164	if (extName == "VK_NV_device_diagnostics_config")
2165	{
2166		return;
2167	}
2168	if (extName == "VK_QCOM_render_pass_store_ops")
2169	{
2170		return;
2171	}
2172	if (extName == "VK_NV_fragment_shading_rate_enums")
2173	{
2174		functions.push_back("vkCmdSetFragmentShadingRateEnumNV");
2175		return;
2176	}
2177	if (extName == "VK_NV_ray_tracing_motion_blur")
2178	{
2179		return;
2180	}
2181	if (extName == "VK_EXT_ycbcr_2plane_444_formats")
2182	{
2183		return;
2184	}
2185	if (extName == "VK_EXT_fragment_density_map2")
2186	{
2187		return;
2188	}
2189	if (extName == "VK_QCOM_rotated_copy_commands")
2190	{
2191		return;
2192	}
2193	if (extName == "VK_EXT_image_robustness")
2194	{
2195		return;
2196	}
2197	if (extName == "VK_EXT_4444_formats")
2198	{
2199		return;
2200	}
2201	if (extName == "VK_ARM_rasterization_order_attachment_access")
2202	{
2203		return;
2204	}
2205	if (extName == "VK_EXT_rgba10x6_formats")
2206	{
2207		return;
2208	}
2209	if (extName == "VK_NV_acquire_winrt_display")
2210	{
2211		return;
2212	}
2213	if (extName == "VK_VALVE_mutable_descriptor_type")
2214	{
2215		return;
2216	}
2217	if (extName == "VK_EXT_vertex_input_dynamic_state")
2218	{
2219		functions.push_back("vkCmdSetVertexInputEXT");
2220		return;
2221	}
2222	if (extName == "VK_EXT_physical_device_drm")
2223	{
2224		return;
2225	}
2226	if (extName == "VK_EXT_depth_clip_control")
2227	{
2228		return;
2229	}
2230	if (extName == "VK_EXT_primitive_topology_list_restart")
2231	{
2232		return;
2233	}
2234	if (extName == "VK_HUAWEI_subpass_shading")
2235	{
2236		functions.push_back("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI");
2237		functions.push_back("vkCmdSubpassShadingHUAWEI");
2238		return;
2239	}
2240	if (extName == "VK_HUAWEI_invocation_mask")
2241	{
2242		functions.push_back("vkCmdBindInvocationMaskHUAWEI");
2243		return;
2244	}
2245	if (extName == "VK_NV_external_memory_rdma")
2246	{
2247		functions.push_back("vkGetMemoryRemoteAddressNV");
2248		return;
2249	}
2250	if (extName == "VK_EXT_extended_dynamic_state2")
2251	{
2252		functions.push_back("vkCmdSetPatchControlPointsEXT");
2253		functions.push_back("vkCmdSetRasterizerDiscardEnableEXT");
2254		functions.push_back("vkCmdSetDepthBiasEnableEXT");
2255		functions.push_back("vkCmdSetLogicOpEXT");
2256		functions.push_back("vkCmdSetPrimitiveRestartEnableEXT");
2257		return;
2258	}
2259	if (extName == "VK_EXT_color_write_enable")
2260	{
2261		functions.push_back("vkCmdSetColorWriteEnableEXT");
2262		return;
2263	}
2264	if (extName == "VK_EXT_global_priority_query")
2265	{
2266		return;
2267	}
2268	if (extName == "VK_EXT_image_view_min_lod")
2269	{
2270		return;
2271	}
2272	if (extName == "VK_EXT_multi_draw")
2273	{
2274		functions.push_back("vkCmdDrawMultiEXT");
2275		functions.push_back("vkCmdDrawMultiIndexedEXT");
2276		return;
2277	}
2278	if (extName == "VK_EXT_load_store_op_none")
2279	{
2280		return;
2281	}
2282	if (extName == "VK_EXT_border_color_swizzle")
2283	{
2284		return;
2285	}
2286	if (extName == "VK_EXT_pageable_device_local_memory")
2287	{
2288		functions.push_back("vkSetDeviceMemoryPriorityEXT");
2289		return;
2290	}
2291	if (extName == "VK_QCOM_fragment_density_map_offset")
2292	{
2293		return;
2294	}
2295	if (extName == "VK_NV_linear_color_attachment")
2296	{
2297		return;
2298	}
2299	if (extName == "VK_GOOGLE_surfaceless_query")
2300	{
2301		return;
2302	}
2303	if (extName == "VK_KHR_acceleration_structure")
2304	{
2305		functions.push_back("vkCreateAccelerationStructureKHR");
2306		functions.push_back("vkDestroyAccelerationStructureKHR");
2307		functions.push_back("vkCmdBuildAccelerationStructuresKHR");
2308		functions.push_back("vkCmdBuildAccelerationStructuresIndirectKHR");
2309		functions.push_back("vkBuildAccelerationStructuresKHR");
2310		functions.push_back("vkCopyAccelerationStructureKHR");
2311		functions.push_back("vkCopyAccelerationStructureToMemoryKHR");
2312		functions.push_back("vkCopyMemoryToAccelerationStructureKHR");
2313		functions.push_back("vkWriteAccelerationStructuresPropertiesKHR");
2314		functions.push_back("vkCmdCopyAccelerationStructureKHR");
2315		functions.push_back("vkCmdCopyAccelerationStructureToMemoryKHR");
2316		functions.push_back("vkCmdCopyMemoryToAccelerationStructureKHR");
2317		functions.push_back("vkGetAccelerationStructureDeviceAddressKHR");
2318		functions.push_back("vkCmdWriteAccelerationStructuresPropertiesKHR");
2319		functions.push_back("vkGetDeviceAccelerationStructureCompatibilityKHR");
2320		functions.push_back("vkGetAccelerationStructureBuildSizesKHR");
2321		return;
2322	}
2323	if (extName == "VK_KHR_ray_tracing_pipeline")
2324	{
2325		functions.push_back("vkCmdTraceRaysKHR");
2326		functions.push_back("vkCreateRayTracingPipelinesKHR");
2327		functions.push_back("vkGetRayTracingCaptureReplayShaderGroupHandlesKHR");
2328		functions.push_back("vkCmdTraceRaysIndirectKHR");
2329		functions.push_back("vkGetRayTracingShaderGroupStackSizeKHR");
2330		functions.push_back("vkCmdSetRayTracingPipelineStackSizeKHR");
2331		return;
2332	}
2333	if (extName == "VK_KHR_ray_query")
2334	{
2335		return;
2336	}
2337	if (extName == "VK_KHR_android_surface")
2338	{
2339		return;
2340	}
2341	if (extName == "VK_ANDROID_external_memory_android_hardware_buffer")
2342	{
2343		functions.push_back("vkGetAndroidHardwareBufferPropertiesANDROID");
2344		functions.push_back("vkGetMemoryAndroidHardwareBufferANDROID");
2345		return;
2346	}
2347	if (extName == "VK_KHR_video_queue")
2348	{
2349		functions.push_back("vkCreateVideoSessionKHR");
2350		functions.push_back("vkDestroyVideoSessionKHR");
2351		functions.push_back("vkGetVideoSessionMemoryRequirementsKHR");
2352		functions.push_back("vkBindVideoSessionMemoryKHR");
2353		functions.push_back("vkCreateVideoSessionParametersKHR");
2354		functions.push_back("vkUpdateVideoSessionParametersKHR");
2355		functions.push_back("vkDestroyVideoSessionParametersKHR");
2356		functions.push_back("vkCmdBeginVideoCodingKHR");
2357		functions.push_back("vkCmdEndVideoCodingKHR");
2358		functions.push_back("vkCmdControlVideoCodingKHR");
2359		return;
2360	}
2361	if (extName == "VK_KHR_video_decode_queue")
2362	{
2363		functions.push_back("vkCmdDecodeVideoKHR");
2364		return;
2365	}
2366	if (extName == "VK_KHR_portability_subset")
2367	{
2368		return;
2369	}
2370	if (extName == "VK_KHR_video_encode_queue")
2371	{
2372		functions.push_back("vkCmdEncodeVideoKHR");
2373		return;
2374	}
2375	if (extName == "VK_EXT_video_encode_h264")
2376	{
2377		return;
2378	}
2379	if (extName == "VK_EXT_video_encode_h265")
2380	{
2381		return;
2382	}
2383	if (extName == "VK_EXT_video_decode_h264")
2384	{
2385		return;
2386	}
2387	if (extName == "VK_EXT_video_decode_h265")
2388	{
2389		return;
2390	}
2391	if (extName == "VK_FUCHSIA_imagepipe_surface")
2392	{
2393		return;
2394	}
2395	if (extName == "VK_FUCHSIA_external_memory")
2396	{
2397		functions.push_back("vkGetMemoryZirconHandleFUCHSIA");
2398		functions.push_back("vkGetMemoryZirconHandlePropertiesFUCHSIA");
2399		return;
2400	}
2401	if (extName == "VK_FUCHSIA_external_semaphore")
2402	{
2403		functions.push_back("vkImportSemaphoreZirconHandleFUCHSIA");
2404		functions.push_back("vkGetSemaphoreZirconHandleFUCHSIA");
2405		return;
2406	}
2407	if (extName == "VK_FUCHSIA_buffer_collection")
2408	{
2409		functions.push_back("vkCreateBufferCollectionFUCHSIA");
2410		functions.push_back("vkSetBufferCollectionImageConstraintsFUCHSIA");
2411		functions.push_back("vkSetBufferCollectionBufferConstraintsFUCHSIA");
2412		functions.push_back("vkDestroyBufferCollectionFUCHSIA");
2413		functions.push_back("vkGetBufferCollectionPropertiesFUCHSIA");
2414		return;
2415	}
2416	if (extName == "VK_GGP_stream_descriptor_surface")
2417	{
2418		return;
2419	}
2420	if (extName == "VK_GGP_frame_token")
2421	{
2422		return;
2423	}
2424	if (extName == "VK_MVK_ios_surface")
2425	{
2426		return;
2427	}
2428	if (extName == "VK_MVK_macos_surface")
2429	{
2430		return;
2431	}
2432	if (extName == "VK_EXT_metal_surface")
2433	{
2434		return;
2435	}
2436	if (extName == "VK_NN_vi_surface")
2437	{
2438		return;
2439	}
2440	if (extName == "VK_KHR_wayland_surface")
2441	{
2442		return;
2443	}
2444	if (extName == "VK_KHR_win32_surface")
2445	{
2446		return;
2447	}
2448	if (extName == "VK_KHR_external_memory_win32")
2449	{
2450		functions.push_back("vkGetMemoryWin32HandleKHR");
2451		functions.push_back("vkGetMemoryWin32HandlePropertiesKHR");
2452		return;
2453	}
2454	if (extName == "VK_KHR_win32_keyed_mutex")
2455	{
2456		return;
2457	}
2458	if (extName == "VK_KHR_external_semaphore_win32")
2459	{
2460		functions.push_back("vkImportSemaphoreWin32HandleKHR");
2461		functions.push_back("vkGetSemaphoreWin32HandleKHR");
2462		return;
2463	}
2464	if (extName == "VK_KHR_external_fence_win32")
2465	{
2466		functions.push_back("vkImportFenceWin32HandleKHR");
2467		functions.push_back("vkGetFenceWin32HandleKHR");
2468		return;
2469	}
2470	if (extName == "VK_NV_external_memory_win32")
2471	{
2472		functions.push_back("vkGetMemoryWin32HandleNV");
2473		return;
2474	}
2475	if (extName == "VK_NV_win32_keyed_mutex")
2476	{
2477		return;
2478	}
2479	if (extName == "VK_EXT_full_screen_exclusive")
2480	{
2481		functions.push_back("vkAcquireFullScreenExclusiveModeEXT");
2482		functions.push_back("vkReleaseFullScreenExclusiveModeEXT");
2483		functions.push_back("vkGetDeviceGroupSurfacePresentModes2EXT");
2484		return;
2485	}
2486	if (extName == "VK_KHR_xcb_surface")
2487	{
2488		return;
2489	}
2490	if (extName == "VK_KHR_xlib_surface")
2491	{
2492		return;
2493	}
2494	if (extName == "VK_EXT_acquire_xlib_display")
2495	{
2496		return;
2497	}
2498	DE_FATAL("Extension name not found");
2499}
2500
2501::std::string instanceExtensionNames[] =
2502{
2503	"VK_KHR_surface",
2504	"VK_KHR_display",
2505	"VK_KHR_get_physical_device_properties2",
2506	"VK_KHR_device_group_creation",
2507	"VK_KHR_external_memory_capabilities",
2508	"VK_KHR_external_semaphore_capabilities",
2509	"VK_KHR_external_fence_capabilities",
2510	"VK_KHR_performance_query",
2511	"VK_KHR_get_surface_capabilities2",
2512	"VK_KHR_get_display_properties2",
2513	"VK_KHR_fragment_shading_rate",
2514	"VK_EXT_debug_report",
2515	"VK_NV_external_memory_capabilities",
2516	"VK_EXT_direct_mode_display",
2517	"VK_EXT_display_surface_counter",
2518	"VK_EXT_calibrated_timestamps",
2519	"VK_EXT_tooling_info",
2520	"VK_NV_cooperative_matrix",
2521	"VK_NV_coverage_reduction_mode",
2522	"VK_EXT_headless_surface",
2523	"VK_EXT_acquire_drm_display",
2524	"VK_NV_acquire_winrt_display",
2525	"VK_KHR_android_surface",
2526	"VK_KHR_video_queue",
2527	"VK_FUCHSIA_imagepipe_surface",
2528	"VK_GGP_stream_descriptor_surface",
2529	"VK_MVK_ios_surface",
2530	"VK_MVK_macos_surface",
2531	"VK_EXT_metal_surface",
2532	"VK_NN_vi_surface",
2533	"VK_KHR_wayland_surface",
2534	"VK_KHR_win32_surface",
2535	"VK_EXT_full_screen_exclusive",
2536	"VK_KHR_xcb_surface",
2537	"VK_KHR_xlib_surface",
2538	"VK_EXT_acquire_xlib_display"
2539};
2540
2541::std::string deviceExtensionNames[] =
2542{
2543	"VK_KHR_swapchain",
2544	"VK_KHR_display_swapchain",
2545	"VK_KHR_dynamic_rendering",
2546	"VK_KHR_device_group",
2547	"VK_KHR_maintenance1",
2548	"VK_KHR_external_memory_fd",
2549	"VK_KHR_external_semaphore_fd",
2550	"VK_KHR_push_descriptor",
2551	"VK_KHR_descriptor_update_template",
2552	"VK_KHR_create_renderpass2",
2553	"VK_KHR_shared_presentable_image",
2554	"VK_KHR_external_fence_fd",
2555	"VK_KHR_get_memory_requirements2",
2556	"VK_KHR_sampler_ycbcr_conversion",
2557	"VK_KHR_bind_memory2",
2558	"VK_KHR_maintenance3",
2559	"VK_KHR_draw_indirect_count",
2560	"VK_KHR_timeline_semaphore",
2561	"VK_KHR_present_wait",
2562	"VK_KHR_buffer_device_address",
2563	"VK_KHR_deferred_host_operations",
2564	"VK_KHR_pipeline_executable_properties",
2565	"VK_KHR_synchronization2",
2566	"VK_KHR_copy_commands2",
2567	"VK_KHR_maintenance4",
2568	"VK_EXT_debug_marker",
2569	"VK_EXT_transform_feedback",
2570	"VK_NVX_binary_import",
2571	"VK_NVX_image_view_handle",
2572	"VK_AMD_draw_indirect_count",
2573	"VK_AMD_shader_info",
2574	"VK_EXT_conditional_rendering",
2575	"VK_NV_clip_space_w_scaling",
2576	"VK_EXT_display_control",
2577	"VK_GOOGLE_display_timing",
2578	"VK_EXT_discard_rectangles",
2579	"VK_EXT_hdr_metadata",
2580	"VK_EXT_debug_utils",
2581	"VK_EXT_sample_locations",
2582	"VK_EXT_image_drm_format_modifier",
2583	"VK_EXT_validation_cache",
2584	"VK_NV_shading_rate_image",
2585	"VK_NV_ray_tracing",
2586	"VK_EXT_external_memory_host",
2587	"VK_AMD_buffer_marker",
2588	"VK_NV_mesh_shader",
2589	"VK_NV_scissor_exclusive",
2590	"VK_NV_device_diagnostic_checkpoints",
2591	"VK_INTEL_performance_query",
2592	"VK_AMD_display_native_hdr",
2593	"VK_EXT_buffer_device_address",
2594	"VK_EXT_line_rasterization",
2595	"VK_EXT_host_query_reset",
2596	"VK_EXT_extended_dynamic_state",
2597	"VK_NV_device_generated_commands",
2598	"VK_EXT_private_data",
2599	"VK_NV_fragment_shading_rate_enums",
2600	"VK_EXT_vertex_input_dynamic_state",
2601	"VK_HUAWEI_subpass_shading",
2602	"VK_HUAWEI_invocation_mask",
2603	"VK_NV_external_memory_rdma",
2604	"VK_EXT_extended_dynamic_state2",
2605	"VK_EXT_color_write_enable",
2606	"VK_EXT_multi_draw",
2607	"VK_EXT_pageable_device_local_memory",
2608	"VK_KHR_acceleration_structure",
2609	"VK_KHR_ray_tracing_pipeline",
2610	"VK_ANDROID_external_memory_android_hardware_buffer",
2611	"VK_KHR_video_decode_queue",
2612	"VK_KHR_video_encode_queue",
2613	"VK_FUCHSIA_external_memory",
2614	"VK_FUCHSIA_external_semaphore",
2615	"VK_FUCHSIA_buffer_collection",
2616	"VK_KHR_external_memory_win32",
2617	"VK_KHR_external_semaphore_win32",
2618	"VK_KHR_external_fence_win32",
2619	"VK_NV_external_memory_win32"
2620};
2621