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