• 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
5static const std::tuple<deUint32, deUint32, const char*, const char*>	instanceExtensionDependencies[]	=
6{
7	std::make_tuple(1, 0, "VK_EXT_acquire_drm_display", "VK_EXT_direct_mode_display"),
8	std::make_tuple(1, 1, "VK_EXT_acquire_drm_display", "VK_EXT_direct_mode_display"),
9	std::make_tuple(1, 2, "VK_EXT_acquire_drm_display", "VK_EXT_direct_mode_display"),
10	std::make_tuple(1, 0, "VK_EXT_acquire_xlib_display", "VK_EXT_direct_mode_display"),
11	std::make_tuple(1, 1, "VK_EXT_acquire_xlib_display", "VK_EXT_direct_mode_display"),
12	std::make_tuple(1, 2, "VK_EXT_acquire_xlib_display", "VK_EXT_direct_mode_display"),
13	std::make_tuple(1, 0, "VK_EXT_direct_mode_display", "VK_KHR_display"),
14	std::make_tuple(1, 1, "VK_EXT_direct_mode_display", "VK_KHR_display"),
15	std::make_tuple(1, 2, "VK_EXT_direct_mode_display", "VK_KHR_display"),
16	std::make_tuple(1, 0, "VK_EXT_directfb_surface", "VK_KHR_surface"),
17	std::make_tuple(1, 1, "VK_EXT_directfb_surface", "VK_KHR_surface"),
18	std::make_tuple(1, 2, "VK_EXT_directfb_surface", "VK_KHR_surface"),
19	std::make_tuple(1, 0, "VK_EXT_display_surface_counter", "VK_KHR_display"),
20	std::make_tuple(1, 1, "VK_EXT_display_surface_counter", "VK_KHR_display"),
21	std::make_tuple(1, 2, "VK_EXT_display_surface_counter", "VK_KHR_display"),
22	std::make_tuple(1, 0, "VK_EXT_headless_surface", "VK_KHR_surface"),
23	std::make_tuple(1, 1, "VK_EXT_headless_surface", "VK_KHR_surface"),
24	std::make_tuple(1, 2, "VK_EXT_headless_surface", "VK_KHR_surface"),
25	std::make_tuple(1, 0, "VK_EXT_metal_surface", "VK_KHR_surface"),
26	std::make_tuple(1, 1, "VK_EXT_metal_surface", "VK_KHR_surface"),
27	std::make_tuple(1, 2, "VK_EXT_metal_surface", "VK_KHR_surface"),
28	std::make_tuple(1, 0, "VK_EXT_swapchain_colorspace", "VK_KHR_surface"),
29	std::make_tuple(1, 1, "VK_EXT_swapchain_colorspace", "VK_KHR_surface"),
30	std::make_tuple(1, 2, "VK_EXT_swapchain_colorspace", "VK_KHR_surface"),
31	std::make_tuple(1, 0, "VK_FUCHSIA_imagepipe_surface", "VK_KHR_surface"),
32	std::make_tuple(1, 1, "VK_FUCHSIA_imagepipe_surface", "VK_KHR_surface"),
33	std::make_tuple(1, 2, "VK_FUCHSIA_imagepipe_surface", "VK_KHR_surface"),
34	std::make_tuple(1, 0, "VK_GGP_stream_descriptor_surface", "VK_KHR_surface"),
35	std::make_tuple(1, 1, "VK_GGP_stream_descriptor_surface", "VK_KHR_surface"),
36	std::make_tuple(1, 2, "VK_GGP_stream_descriptor_surface", "VK_KHR_surface"),
37	std::make_tuple(1, 0, "VK_KHR_android_surface", "VK_KHR_surface"),
38	std::make_tuple(1, 1, "VK_KHR_android_surface", "VK_KHR_surface"),
39	std::make_tuple(1, 2, "VK_KHR_android_surface", "VK_KHR_surface"),
40	std::make_tuple(1, 0, "VK_KHR_display", "VK_KHR_surface"),
41	std::make_tuple(1, 1, "VK_KHR_display", "VK_KHR_surface"),
42	std::make_tuple(1, 2, "VK_KHR_display", "VK_KHR_surface"),
43	std::make_tuple(1, 0, "VK_KHR_external_fence_capabilities", "VK_KHR_get_physical_device_properties2"),
44	std::make_tuple(1, 0, "VK_KHR_external_memory_capabilities", "VK_KHR_get_physical_device_properties2"),
45	std::make_tuple(1, 0, "VK_KHR_external_semaphore_capabilities", "VK_KHR_get_physical_device_properties2"),
46	std::make_tuple(1, 0, "VK_KHR_get_display_properties2", "VK_KHR_display"),
47	std::make_tuple(1, 1, "VK_KHR_get_display_properties2", "VK_KHR_display"),
48	std::make_tuple(1, 2, "VK_KHR_get_display_properties2", "VK_KHR_display"),
49	std::make_tuple(1, 0, "VK_KHR_get_surface_capabilities2", "VK_KHR_surface"),
50	std::make_tuple(1, 1, "VK_KHR_get_surface_capabilities2", "VK_KHR_surface"),
51	std::make_tuple(1, 2, "VK_KHR_get_surface_capabilities2", "VK_KHR_surface"),
52	std::make_tuple(1, 1, "VK_KHR_surface_protected_capabilities", "VK_KHR_get_surface_capabilities2"),
53	std::make_tuple(1, 2, "VK_KHR_surface_protected_capabilities", "VK_KHR_get_surface_capabilities2"),
54	std::make_tuple(1, 0, "VK_KHR_wayland_surface", "VK_KHR_surface"),
55	std::make_tuple(1, 1, "VK_KHR_wayland_surface", "VK_KHR_surface"),
56	std::make_tuple(1, 2, "VK_KHR_wayland_surface", "VK_KHR_surface"),
57	std::make_tuple(1, 0, "VK_KHR_win32_surface", "VK_KHR_surface"),
58	std::make_tuple(1, 1, "VK_KHR_win32_surface", "VK_KHR_surface"),
59	std::make_tuple(1, 2, "VK_KHR_win32_surface", "VK_KHR_surface"),
60	std::make_tuple(1, 0, "VK_KHR_xcb_surface", "VK_KHR_surface"),
61	std::make_tuple(1, 1, "VK_KHR_xcb_surface", "VK_KHR_surface"),
62	std::make_tuple(1, 2, "VK_KHR_xcb_surface", "VK_KHR_surface"),
63	std::make_tuple(1, 0, "VK_KHR_xlib_surface", "VK_KHR_surface"),
64	std::make_tuple(1, 1, "VK_KHR_xlib_surface", "VK_KHR_surface"),
65	std::make_tuple(1, 2, "VK_KHR_xlib_surface", "VK_KHR_surface"),
66	std::make_tuple(1, 0, "VK_MVK_ios_surface", "VK_KHR_surface"),
67	std::make_tuple(1, 1, "VK_MVK_ios_surface", "VK_KHR_surface"),
68	std::make_tuple(1, 2, "VK_MVK_ios_surface", "VK_KHR_surface"),
69	std::make_tuple(1, 0, "VK_MVK_macos_surface", "VK_KHR_surface"),
70	std::make_tuple(1, 1, "VK_MVK_macos_surface", "VK_KHR_surface"),
71	std::make_tuple(1, 2, "VK_MVK_macos_surface", "VK_KHR_surface"),
72	std::make_tuple(1, 0, "VK_NN_vi_surface", "VK_KHR_surface"),
73	std::make_tuple(1, 1, "VK_NN_vi_surface", "VK_KHR_surface"),
74	std::make_tuple(1, 2, "VK_NN_vi_surface", "VK_KHR_surface"),
75	std::make_tuple(1, 0, "VK_QNX_screen_surface", "VK_KHR_surface"),
76	std::make_tuple(1, 1, "VK_QNX_screen_surface", "VK_KHR_surface"),
77	std::make_tuple(1, 2, "VK_QNX_screen_surface", "VK_KHR_surface"),
78};
79static const std::tuple<deUint32, deUint32, const char*, const char*>	deviceExtensionDependencies[]	=
80{
81	std::make_tuple(1, 0, "VK_AMD_display_native_hdr", "VK_KHR_get_physical_device_properties2"),
82	std::make_tuple(1, 0, "VK_AMD_display_native_hdr", "VK_KHR_get_surface_capabilities2"),
83	std::make_tuple(1, 0, "VK_AMD_display_native_hdr", "VK_KHR_swapchain"),
84	std::make_tuple(1, 1, "VK_AMD_display_native_hdr", "VK_KHR_get_surface_capabilities2"),
85	std::make_tuple(1, 1, "VK_AMD_display_native_hdr", "VK_KHR_swapchain"),
86	std::make_tuple(1, 2, "VK_AMD_display_native_hdr", "VK_KHR_get_surface_capabilities2"),
87	std::make_tuple(1, 2, "VK_AMD_display_native_hdr", "VK_KHR_swapchain"),
88	std::make_tuple(1, 0, "VK_AMD_shader_core_properties", "VK_KHR_get_physical_device_properties2"),
89	std::make_tuple(1, 0, "VK_AMD_shader_core_properties2", "VK_AMD_shader_core_properties"),
90	std::make_tuple(1, 1, "VK_AMD_shader_core_properties2", "VK_AMD_shader_core_properties"),
91	std::make_tuple(1, 2, "VK_AMD_shader_core_properties2", "VK_AMD_shader_core_properties"),
92	std::make_tuple(1, 0, "VK_AMD_texture_gather_bias_lod", "VK_KHR_get_physical_device_properties2"),
93	std::make_tuple(1, 0, "VK_ANDROID_external_memory_android_hardware_buffer", "VK_KHR_sampler_ycbcr_conversion"),
94	std::make_tuple(1, 0, "VK_ANDROID_external_memory_android_hardware_buffer", "VK_KHR_external_memory"),
95	std::make_tuple(1, 0, "VK_ANDROID_external_memory_android_hardware_buffer", "VK_EXT_queue_family_foreign"),
96	std::make_tuple(1, 0, "VK_ANDROID_external_memory_android_hardware_buffer", "VK_KHR_dedicated_allocation"),
97	std::make_tuple(1, 1, "VK_ANDROID_external_memory_android_hardware_buffer", "VK_EXT_queue_family_foreign"),
98	std::make_tuple(1, 2, "VK_ANDROID_external_memory_android_hardware_buffer", "VK_EXT_queue_family_foreign"),
99	std::make_tuple(1, 0, "VK_ARM_rasterization_order_attachment_access", "VK_KHR_get_physical_device_properties2"),
100	std::make_tuple(1, 0, "VK_EXT_4444_formats", "VK_KHR_get_physical_device_properties2"),
101	std::make_tuple(1, 0, "VK_EXT_astc_decode_mode", "VK_KHR_get_physical_device_properties2"),
102	std::make_tuple(1, 0, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
103	std::make_tuple(1, 1, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
104	std::make_tuple(1, 2, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
105	std::make_tuple(1, 0, "VK_EXT_buffer_device_address", "VK_KHR_get_physical_device_properties2"),
106	std::make_tuple(1, 0, "VK_EXT_calibrated_timestamps", "VK_KHR_get_physical_device_properties2"),
107	std::make_tuple(1, 0, "VK_EXT_color_write_enable", "VK_KHR_get_physical_device_properties2"),
108	std::make_tuple(1, 0, "VK_EXT_conservative_rasterization", "VK_KHR_get_physical_device_properties2"),
109	std::make_tuple(1, 0, "VK_EXT_debug_marker", "VK_EXT_debug_report"),
110	std::make_tuple(1, 1, "VK_EXT_debug_marker", "VK_EXT_debug_report"),
111	std::make_tuple(1, 2, "VK_EXT_debug_marker", "VK_EXT_debug_report"),
112	std::make_tuple(1, 0, "VK_EXT_depth_clip_control", "VK_KHR_get_physical_device_properties2"),
113	std::make_tuple(1, 0, "VK_EXT_descriptor_indexing", "VK_KHR_get_physical_device_properties2"),
114	std::make_tuple(1, 0, "VK_EXT_descriptor_indexing", "VK_KHR_maintenance3"),
115	std::make_tuple(1, 0, "VK_EXT_device_memory_report", "VK_KHR_get_physical_device_properties2"),
116	std::make_tuple(1, 0, "VK_EXT_discard_rectangles", "VK_KHR_get_physical_device_properties2"),
117	std::make_tuple(1, 0, "VK_EXT_display_control", "VK_EXT_display_surface_counter"),
118	std::make_tuple(1, 0, "VK_EXT_display_control", "VK_KHR_swapchain"),
119	std::make_tuple(1, 1, "VK_EXT_display_control", "VK_EXT_display_surface_counter"),
120	std::make_tuple(1, 1, "VK_EXT_display_control", "VK_KHR_swapchain"),
121	std::make_tuple(1, 2, "VK_EXT_display_control", "VK_EXT_display_surface_counter"),
122	std::make_tuple(1, 2, "VK_EXT_display_control", "VK_KHR_swapchain"),
123	std::make_tuple(1, 0, "VK_EXT_extended_dynamic_state", "VK_KHR_get_physical_device_properties2"),
124	std::make_tuple(1, 0, "VK_EXT_extended_dynamic_state2", "VK_KHR_get_physical_device_properties2"),
125	std::make_tuple(1, 0, "VK_EXT_external_memory_dma_buf", "VK_KHR_external_memory_fd"),
126	std::make_tuple(1, 1, "VK_EXT_external_memory_dma_buf", "VK_KHR_external_memory_fd"),
127	std::make_tuple(1, 2, "VK_EXT_external_memory_dma_buf", "VK_KHR_external_memory_fd"),
128	std::make_tuple(1, 0, "VK_EXT_external_memory_host", "VK_KHR_external_memory"),
129	std::make_tuple(1, 0, "VK_EXT_fragment_density_map", "VK_KHR_get_physical_device_properties2"),
130	std::make_tuple(1, 0, "VK_EXT_fragment_density_map2", "VK_EXT_fragment_density_map"),
131	std::make_tuple(1, 1, "VK_EXT_fragment_density_map2", "VK_EXT_fragment_density_map"),
132	std::make_tuple(1, 2, "VK_EXT_fragment_density_map2", "VK_EXT_fragment_density_map"),
133	std::make_tuple(1, 0, "VK_EXT_fragment_shader_interlock", "VK_KHR_get_physical_device_properties2"),
134	std::make_tuple(1, 0, "VK_EXT_full_screen_exclusive", "VK_KHR_get_physical_device_properties2"),
135	std::make_tuple(1, 0, "VK_EXT_full_screen_exclusive", "VK_KHR_surface"),
136	std::make_tuple(1, 0, "VK_EXT_full_screen_exclusive", "VK_KHR_get_surface_capabilities2"),
137	std::make_tuple(1, 0, "VK_EXT_full_screen_exclusive", "VK_KHR_swapchain"),
138	std::make_tuple(1, 1, "VK_EXT_full_screen_exclusive", "VK_KHR_surface"),
139	std::make_tuple(1, 1, "VK_EXT_full_screen_exclusive", "VK_KHR_get_surface_capabilities2"),
140	std::make_tuple(1, 1, "VK_EXT_full_screen_exclusive", "VK_KHR_swapchain"),
141	std::make_tuple(1, 2, "VK_EXT_full_screen_exclusive", "VK_KHR_surface"),
142	std::make_tuple(1, 2, "VK_EXT_full_screen_exclusive", "VK_KHR_get_surface_capabilities2"),
143	std::make_tuple(1, 2, "VK_EXT_full_screen_exclusive", "VK_KHR_swapchain"),
144	std::make_tuple(1, 0, "VK_EXT_global_priority_query", "VK_EXT_global_priority"),
145	std::make_tuple(1, 0, "VK_EXT_global_priority_query", "VK_KHR_get_physical_device_properties2"),
146	std::make_tuple(1, 1, "VK_EXT_global_priority_query", "VK_EXT_global_priority"),
147	std::make_tuple(1, 2, "VK_EXT_global_priority_query", "VK_EXT_global_priority"),
148	std::make_tuple(1, 0, "VK_EXT_hdr_metadata", "VK_KHR_swapchain"),
149	std::make_tuple(1, 1, "VK_EXT_hdr_metadata", "VK_KHR_swapchain"),
150	std::make_tuple(1, 2, "VK_EXT_hdr_metadata", "VK_KHR_swapchain"),
151	std::make_tuple(1, 0, "VK_EXT_host_query_reset", "VK_KHR_get_physical_device_properties2"),
152	std::make_tuple(1, 0, "VK_EXT_image_drm_format_modifier", "VK_KHR_bind_memory2"),
153	std::make_tuple(1, 0, "VK_EXT_image_drm_format_modifier", "VK_KHR_get_physical_device_properties2"),
154	std::make_tuple(1, 0, "VK_EXT_image_drm_format_modifier", "VK_KHR_image_format_list"),
155	std::make_tuple(1, 0, "VK_EXT_image_drm_format_modifier", "VK_KHR_sampler_ycbcr_conversion"),
156	std::make_tuple(1, 1, "VK_EXT_image_drm_format_modifier", "VK_KHR_image_format_list"),
157	std::make_tuple(1, 0, "VK_EXT_image_robustness", "VK_KHR_get_physical_device_properties2"),
158	std::make_tuple(1, 0, "VK_EXT_image_view_min_lod", "VK_KHR_get_physical_device_properties2"),
159	std::make_tuple(1, 0, "VK_EXT_inline_uniform_block", "VK_KHR_get_physical_device_properties2"),
160	std::make_tuple(1, 0, "VK_EXT_inline_uniform_block", "VK_KHR_maintenance1"),
161	std::make_tuple(1, 0, "VK_EXT_line_rasterization", "VK_KHR_get_physical_device_properties2"),
162	std::make_tuple(1, 0, "VK_EXT_memory_budget", "VK_KHR_get_physical_device_properties2"),
163	std::make_tuple(1, 0, "VK_EXT_memory_priority", "VK_KHR_get_physical_device_properties2"),
164	std::make_tuple(1, 0, "VK_EXT_pageable_device_local_memory", "VK_EXT_memory_priority"),
165	std::make_tuple(1, 1, "VK_EXT_pageable_device_local_memory", "VK_EXT_memory_priority"),
166	std::make_tuple(1, 2, "VK_EXT_pageable_device_local_memory", "VK_EXT_memory_priority"),
167	std::make_tuple(1, 0, "VK_EXT_pci_bus_info", "VK_KHR_get_physical_device_properties2"),
168	std::make_tuple(1, 0, "VK_EXT_physical_device_drm", "VK_KHR_get_physical_device_properties2"),
169	std::make_tuple(1, 0, "VK_EXT_provoking_vertex", "VK_KHR_get_physical_device_properties2"),
170	std::make_tuple(1, 0, "VK_EXT_queue_family_foreign", "VK_KHR_external_memory"),
171	std::make_tuple(1, 0, "VK_EXT_rgba10x6_formats", "VK_KHR_sampler_ycbcr_conversion"),
172	std::make_tuple(1, 0, "VK_EXT_sample_locations", "VK_KHR_get_physical_device_properties2"),
173	std::make_tuple(1, 0, "VK_EXT_sampler_filter_minmax", "VK_KHR_get_physical_device_properties2"),
174	std::make_tuple(1, 0, "VK_EXT_scalar_block_layout", "VK_KHR_get_physical_device_properties2"),
175	std::make_tuple(1, 0, "VK_EXT_shader_atomic_float", "VK_KHR_get_physical_device_properties2"),
176	std::make_tuple(1, 0, "VK_EXT_shader_atomic_float2", "VK_EXT_shader_atomic_float"),
177	std::make_tuple(1, 1, "VK_EXT_shader_atomic_float2", "VK_EXT_shader_atomic_float"),
178	std::make_tuple(1, 2, "VK_EXT_shader_atomic_float2", "VK_EXT_shader_atomic_float"),
179	std::make_tuple(1, 0, "VK_EXT_shader_demote_to_helper_invocation", "VK_KHR_get_physical_device_properties2"),
180	std::make_tuple(1, 0, "VK_EXT_shader_image_atomic_int64", "VK_KHR_get_physical_device_properties2"),
181	std::make_tuple(1, 0, "VK_EXT_texel_buffer_alignment", "VK_KHR_get_physical_device_properties2"),
182	std::make_tuple(1, 0, "VK_EXT_texture_compression_astc_hdr", "VK_KHR_get_physical_device_properties2"),
183	std::make_tuple(1, 0, "VK_EXT_transform_feedback", "VK_KHR_get_physical_device_properties2"),
184	std::make_tuple(1, 0, "VK_EXT_vertex_attribute_divisor", "VK_KHR_get_physical_device_properties2"),
185	std::make_tuple(1, 0, "VK_EXT_vertex_input_dynamic_state", "VK_KHR_get_physical_device_properties2"),
186	std::make_tuple(1, 0, "VK_EXT_video_decode_h264", "VK_KHR_video_decode_queue"),
187	std::make_tuple(1, 1, "VK_EXT_video_decode_h264", "VK_KHR_video_decode_queue"),
188	std::make_tuple(1, 2, "VK_EXT_video_decode_h264", "VK_KHR_video_decode_queue"),
189	std::make_tuple(1, 0, "VK_EXT_video_decode_h265", "VK_KHR_video_decode_queue"),
190	std::make_tuple(1, 1, "VK_EXT_video_decode_h265", "VK_KHR_video_decode_queue"),
191	std::make_tuple(1, 2, "VK_EXT_video_decode_h265", "VK_KHR_video_decode_queue"),
192	std::make_tuple(1, 0, "VK_EXT_video_encode_h264", "VK_KHR_video_encode_queue"),
193	std::make_tuple(1, 1, "VK_EXT_video_encode_h264", "VK_KHR_video_encode_queue"),
194	std::make_tuple(1, 2, "VK_EXT_video_encode_h264", "VK_KHR_video_encode_queue"),
195	std::make_tuple(1, 0, "VK_EXT_video_encode_h265", "VK_KHR_video_encode_queue"),
196	std::make_tuple(1, 1, "VK_EXT_video_encode_h265", "VK_KHR_video_encode_queue"),
197	std::make_tuple(1, 2, "VK_EXT_video_encode_h265", "VK_KHR_video_encode_queue"),
198	std::make_tuple(1, 0, "VK_EXT_ycbcr_2plane_444_formats", "VK_KHR_sampler_ycbcr_conversion"),
199	std::make_tuple(1, 0, "VK_EXT_ycbcr_image_arrays", "VK_KHR_sampler_ycbcr_conversion"),
200	std::make_tuple(1, 0, "VK_FUCHSIA_buffer_collection", "VK_FUCHSIA_external_memory"),
201	std::make_tuple(1, 0, "VK_FUCHSIA_buffer_collection", "VK_KHR_sampler_ycbcr_conversion"),
202	std::make_tuple(1, 1, "VK_FUCHSIA_buffer_collection", "VK_FUCHSIA_external_memory"),
203	std::make_tuple(1, 2, "VK_FUCHSIA_buffer_collection", "VK_FUCHSIA_external_memory"),
204	std::make_tuple(1, 0, "VK_FUCHSIA_external_memory", "VK_KHR_external_memory_capabilities"),
205	std::make_tuple(1, 0, "VK_FUCHSIA_external_memory", "VK_KHR_external_memory"),
206	std::make_tuple(1, 0, "VK_FUCHSIA_external_semaphore", "VK_KHR_external_semaphore_capabilities"),
207	std::make_tuple(1, 0, "VK_FUCHSIA_external_semaphore", "VK_KHR_external_semaphore"),
208	std::make_tuple(1, 0, "VK_GGP_frame_token", "VK_KHR_swapchain"),
209	std::make_tuple(1, 0, "VK_GGP_frame_token", "VK_GGP_stream_descriptor_surface"),
210	std::make_tuple(1, 1, "VK_GGP_frame_token", "VK_KHR_swapchain"),
211	std::make_tuple(1, 1, "VK_GGP_frame_token", "VK_GGP_stream_descriptor_surface"),
212	std::make_tuple(1, 2, "VK_GGP_frame_token", "VK_KHR_swapchain"),
213	std::make_tuple(1, 2, "VK_GGP_frame_token", "VK_GGP_stream_descriptor_surface"),
214	std::make_tuple(1, 0, "VK_GOOGLE_display_timing", "VK_KHR_swapchain"),
215	std::make_tuple(1, 1, "VK_GOOGLE_display_timing", "VK_KHR_swapchain"),
216	std::make_tuple(1, 2, "VK_GOOGLE_display_timing", "VK_KHR_swapchain"),
217	std::make_tuple(1, 0, "VK_HUAWEI_invocation_mask", "VK_KHR_ray_tracing_pipeline"),
218	std::make_tuple(1, 0, "VK_HUAWEI_invocation_mask", "VK_KHR_synchronization2"),
219	std::make_tuple(1, 1, "VK_HUAWEI_invocation_mask", "VK_KHR_ray_tracing_pipeline"),
220	std::make_tuple(1, 1, "VK_HUAWEI_invocation_mask", "VK_KHR_synchronization2"),
221	std::make_tuple(1, 2, "VK_HUAWEI_invocation_mask", "VK_KHR_ray_tracing_pipeline"),
222	std::make_tuple(1, 2, "VK_HUAWEI_invocation_mask", "VK_KHR_synchronization2"),
223	std::make_tuple(1, 0, "VK_HUAWEI_subpass_shading", "VK_KHR_create_renderpass2"),
224	std::make_tuple(1, 0, "VK_HUAWEI_subpass_shading", "VK_KHR_synchronization2"),
225	std::make_tuple(1, 1, "VK_HUAWEI_subpass_shading", "VK_KHR_create_renderpass2"),
226	std::make_tuple(1, 1, "VK_HUAWEI_subpass_shading", "VK_KHR_synchronization2"),
227	std::make_tuple(1, 2, "VK_HUAWEI_subpass_shading", "VK_KHR_synchronization2"),
228	std::make_tuple(1, 0, "VK_INTEL_shader_integer_functions2", "VK_KHR_get_physical_device_properties2"),
229	std::make_tuple(1, 0, "VK_KHR_16bit_storage", "VK_KHR_get_physical_device_properties2"),
230	std::make_tuple(1, 0, "VK_KHR_16bit_storage", "VK_KHR_storage_buffer_storage_class"),
231	std::make_tuple(1, 0, "VK_KHR_8bit_storage", "VK_KHR_get_physical_device_properties2"),
232	std::make_tuple(1, 0, "VK_KHR_8bit_storage", "VK_KHR_storage_buffer_storage_class"),
233	std::make_tuple(1, 1, "VK_KHR_acceleration_structure", "VK_EXT_descriptor_indexing"),
234	std::make_tuple(1, 1, "VK_KHR_acceleration_structure", "VK_KHR_buffer_device_address"),
235	std::make_tuple(1, 1, "VK_KHR_acceleration_structure", "VK_KHR_deferred_host_operations"),
236	std::make_tuple(1, 2, "VK_KHR_acceleration_structure", "VK_KHR_deferred_host_operations"),
237	std::make_tuple(1, 0, "VK_KHR_buffer_device_address", "VK_KHR_get_physical_device_properties2"),
238	std::make_tuple(1, 0, "VK_KHR_create_renderpass2", "VK_KHR_multiview"),
239	std::make_tuple(1, 0, "VK_KHR_create_renderpass2", "VK_KHR_maintenance2"),
240	std::make_tuple(1, 0, "VK_KHR_dedicated_allocation", "VK_KHR_get_memory_requirements2"),
241	std::make_tuple(1, 0, "VK_KHR_depth_stencil_resolve", "VK_KHR_create_renderpass2"),
242	std::make_tuple(1, 1, "VK_KHR_depth_stencil_resolve", "VK_KHR_create_renderpass2"),
243	std::make_tuple(1, 0, "VK_KHR_device_group", "VK_KHR_device_group_creation"),
244	std::make_tuple(1, 0, "VK_KHR_display_swapchain", "VK_KHR_swapchain"),
245	std::make_tuple(1, 0, "VK_KHR_display_swapchain", "VK_KHR_display"),
246	std::make_tuple(1, 1, "VK_KHR_display_swapchain", "VK_KHR_swapchain"),
247	std::make_tuple(1, 1, "VK_KHR_display_swapchain", "VK_KHR_display"),
248	std::make_tuple(1, 2, "VK_KHR_display_swapchain", "VK_KHR_swapchain"),
249	std::make_tuple(1, 2, "VK_KHR_display_swapchain", "VK_KHR_display"),
250	std::make_tuple(1, 0, "VK_KHR_driver_properties", "VK_KHR_get_physical_device_properties2"),
251	std::make_tuple(1, 0, "VK_KHR_dynamic_rendering", "VK_KHR_get_physical_device_properties2"),
252	std::make_tuple(1, 0, "VK_KHR_external_fence", "VK_KHR_external_fence_capabilities"),
253	std::make_tuple(1, 0, "VK_KHR_external_fence_fd", "VK_KHR_external_fence"),
254	std::make_tuple(1, 0, "VK_KHR_external_fence_win32", "VK_KHR_external_fence"),
255	std::make_tuple(1, 0, "VK_KHR_external_memory", "VK_KHR_external_memory_capabilities"),
256	std::make_tuple(1, 0, "VK_KHR_external_memory_fd", "VK_KHR_external_memory"),
257	std::make_tuple(1, 0, "VK_KHR_external_memory_win32", "VK_KHR_external_memory"),
258	std::make_tuple(1, 0, "VK_KHR_external_semaphore", "VK_KHR_external_semaphore_capabilities"),
259	std::make_tuple(1, 0, "VK_KHR_external_semaphore_fd", "VK_KHR_external_semaphore"),
260	std::make_tuple(1, 0, "VK_KHR_external_semaphore_win32", "VK_KHR_external_semaphore"),
261	std::make_tuple(1, 0, "VK_KHR_format_feature_flags2", "VK_KHR_get_physical_device_properties2"),
262	std::make_tuple(1, 0, "VK_KHR_fragment_shading_rate", "VK_KHR_create_renderpass2"),
263	std::make_tuple(1, 0, "VK_KHR_fragment_shading_rate", "VK_KHR_get_physical_device_properties2"),
264	std::make_tuple(1, 1, "VK_KHR_fragment_shading_rate", "VK_KHR_create_renderpass2"),
265	std::make_tuple(1, 0, "VK_KHR_imageless_framebuffer", "VK_KHR_maintenance2"),
266	std::make_tuple(1, 0, "VK_KHR_imageless_framebuffer", "VK_KHR_image_format_list"),
267	std::make_tuple(1, 1, "VK_KHR_imageless_framebuffer", "VK_KHR_image_format_list"),
268	std::make_tuple(1, 0, "VK_KHR_incremental_present", "VK_KHR_swapchain"),
269	std::make_tuple(1, 1, "VK_KHR_incremental_present", "VK_KHR_swapchain"),
270	std::make_tuple(1, 2, "VK_KHR_incremental_present", "VK_KHR_swapchain"),
271	std::make_tuple(1, 0, "VK_KHR_maintenance3", "VK_KHR_get_physical_device_properties2"),
272	std::make_tuple(1, 0, "VK_KHR_multiview", "VK_KHR_get_physical_device_properties2"),
273	std::make_tuple(1, 0, "VK_KHR_performance_query", "VK_KHR_get_physical_device_properties2"),
274	std::make_tuple(1, 0, "VK_KHR_pipeline_executable_properties", "VK_KHR_get_physical_device_properties2"),
275	std::make_tuple(1, 0, "VK_KHR_portability_subset", "VK_KHR_get_physical_device_properties2"),
276	std::make_tuple(1, 0, "VK_KHR_present_id", "VK_KHR_swapchain"),
277	std::make_tuple(1, 1, "VK_KHR_present_id", "VK_KHR_swapchain"),
278	std::make_tuple(1, 2, "VK_KHR_present_id", "VK_KHR_swapchain"),
279	std::make_tuple(1, 0, "VK_KHR_present_wait", "VK_KHR_swapchain"),
280	std::make_tuple(1, 0, "VK_KHR_present_wait", "VK_KHR_present_id"),
281	std::make_tuple(1, 1, "VK_KHR_present_wait", "VK_KHR_swapchain"),
282	std::make_tuple(1, 1, "VK_KHR_present_wait", "VK_KHR_present_id"),
283	std::make_tuple(1, 2, "VK_KHR_present_wait", "VK_KHR_swapchain"),
284	std::make_tuple(1, 2, "VK_KHR_present_wait", "VK_KHR_present_id"),
285	std::make_tuple(1, 0, "VK_KHR_push_descriptor", "VK_KHR_get_physical_device_properties2"),
286	std::make_tuple(1, 1, "VK_KHR_ray_query", "VK_KHR_spirv_1_4"),
287	std::make_tuple(1, 1, "VK_KHR_ray_query", "VK_KHR_acceleration_structure"),
288	std::make_tuple(1, 2, "VK_KHR_ray_query", "VK_KHR_acceleration_structure"),
289	std::make_tuple(1, 1, "VK_KHR_ray_tracing_pipeline", "VK_KHR_spirv_1_4"),
290	std::make_tuple(1, 1, "VK_KHR_ray_tracing_pipeline", "VK_KHR_acceleration_structure"),
291	std::make_tuple(1, 2, "VK_KHR_ray_tracing_pipeline", "VK_KHR_acceleration_structure"),
292	std::make_tuple(1, 0, "VK_KHR_sampler_ycbcr_conversion", "VK_KHR_maintenance1"),
293	std::make_tuple(1, 0, "VK_KHR_sampler_ycbcr_conversion", "VK_KHR_bind_memory2"),
294	std::make_tuple(1, 0, "VK_KHR_sampler_ycbcr_conversion", "VK_KHR_get_memory_requirements2"),
295	std::make_tuple(1, 0, "VK_KHR_sampler_ycbcr_conversion", "VK_KHR_get_physical_device_properties2"),
296	std::make_tuple(1, 0, "VK_KHR_separate_depth_stencil_layouts", "VK_KHR_get_physical_device_properties2"),
297	std::make_tuple(1, 0, "VK_KHR_separate_depth_stencil_layouts", "VK_KHR_create_renderpass2"),
298	std::make_tuple(1, 1, "VK_KHR_separate_depth_stencil_layouts", "VK_KHR_create_renderpass2"),
299	std::make_tuple(1, 0, "VK_KHR_shader_atomic_int64", "VK_KHR_get_physical_device_properties2"),
300	std::make_tuple(1, 0, "VK_KHR_shader_clock", "VK_KHR_get_physical_device_properties2"),
301	std::make_tuple(1, 0, "VK_KHR_shader_float16_int8", "VK_KHR_get_physical_device_properties2"),
302	std::make_tuple(1, 0, "VK_KHR_shader_float_controls", "VK_KHR_get_physical_device_properties2"),
303	std::make_tuple(1, 0, "VK_KHR_shader_integer_dot_product", "VK_KHR_get_physical_device_properties2"),
304	std::make_tuple(1, 0, "VK_KHR_shader_terminate_invocation", "VK_KHR_get_physical_device_properties2"),
305	std::make_tuple(1, 0, "VK_KHR_shared_presentable_image", "VK_KHR_swapchain"),
306	std::make_tuple(1, 0, "VK_KHR_shared_presentable_image", "VK_KHR_get_physical_device_properties2"),
307	std::make_tuple(1, 0, "VK_KHR_shared_presentable_image", "VK_KHR_get_surface_capabilities2"),
308	std::make_tuple(1, 1, "VK_KHR_shared_presentable_image", "VK_KHR_swapchain"),
309	std::make_tuple(1, 1, "VK_KHR_shared_presentable_image", "VK_KHR_get_surface_capabilities2"),
310	std::make_tuple(1, 2, "VK_KHR_shared_presentable_image", "VK_KHR_swapchain"),
311	std::make_tuple(1, 2, "VK_KHR_shared_presentable_image", "VK_KHR_get_surface_capabilities2"),
312	std::make_tuple(1, 1, "VK_KHR_spirv_1_4", "VK_KHR_shader_float_controls"),
313	std::make_tuple(1, 0, "VK_KHR_swapchain", "VK_KHR_surface"),
314	std::make_tuple(1, 1, "VK_KHR_swapchain", "VK_KHR_surface"),
315	std::make_tuple(1, 2, "VK_KHR_swapchain", "VK_KHR_surface"),
316	std::make_tuple(1, 0, "VK_KHR_swapchain_mutable_format", "VK_KHR_swapchain"),
317	std::make_tuple(1, 0, "VK_KHR_swapchain_mutable_format", "VK_KHR_maintenance2"),
318	std::make_tuple(1, 0, "VK_KHR_swapchain_mutable_format", "VK_KHR_image_format_list"),
319	std::make_tuple(1, 1, "VK_KHR_swapchain_mutable_format", "VK_KHR_swapchain"),
320	std::make_tuple(1, 1, "VK_KHR_swapchain_mutable_format", "VK_KHR_image_format_list"),
321	std::make_tuple(1, 2, "VK_KHR_swapchain_mutable_format", "VK_KHR_swapchain"),
322	std::make_tuple(1, 0, "VK_KHR_synchronization2", "VK_KHR_get_physical_device_properties2"),
323	std::make_tuple(1, 0, "VK_KHR_timeline_semaphore", "VK_KHR_get_physical_device_properties2"),
324	std::make_tuple(1, 0, "VK_KHR_uniform_buffer_standard_layout", "VK_KHR_get_physical_device_properties2"),
325	std::make_tuple(1, 0, "VK_KHR_variable_pointers", "VK_KHR_get_physical_device_properties2"),
326	std::make_tuple(1, 0, "VK_KHR_variable_pointers", "VK_KHR_storage_buffer_storage_class"),
327	std::make_tuple(1, 0, "VK_KHR_video_decode_queue", "VK_KHR_video_queue"),
328	std::make_tuple(1, 0, "VK_KHR_video_decode_queue", "VK_KHR_synchronization2"),
329	std::make_tuple(1, 1, "VK_KHR_video_decode_queue", "VK_KHR_video_queue"),
330	std::make_tuple(1, 1, "VK_KHR_video_decode_queue", "VK_KHR_synchronization2"),
331	std::make_tuple(1, 2, "VK_KHR_video_decode_queue", "VK_KHR_video_queue"),
332	std::make_tuple(1, 2, "VK_KHR_video_decode_queue", "VK_KHR_synchronization2"),
333	std::make_tuple(1, 0, "VK_KHR_video_encode_queue", "VK_KHR_video_queue"),
334	std::make_tuple(1, 0, "VK_KHR_video_encode_queue", "VK_KHR_synchronization2"),
335	std::make_tuple(1, 1, "VK_KHR_video_encode_queue", "VK_KHR_video_queue"),
336	std::make_tuple(1, 1, "VK_KHR_video_encode_queue", "VK_KHR_synchronization2"),
337	std::make_tuple(1, 2, "VK_KHR_video_encode_queue", "VK_KHR_video_queue"),
338	std::make_tuple(1, 2, "VK_KHR_video_encode_queue", "VK_KHR_synchronization2"),
339	std::make_tuple(1, 0, "VK_KHR_video_queue", "VK_KHR_get_physical_device_properties2"),
340	std::make_tuple(1, 0, "VK_KHR_video_queue", "VK_KHR_sampler_ycbcr_conversion"),
341	std::make_tuple(1, 0, "VK_KHR_win32_keyed_mutex", "VK_KHR_external_memory_win32"),
342	std::make_tuple(1, 1, "VK_KHR_win32_keyed_mutex", "VK_KHR_external_memory_win32"),
343	std::make_tuple(1, 2, "VK_KHR_win32_keyed_mutex", "VK_KHR_external_memory_win32"),
344	std::make_tuple(1, 0, "VK_KHR_workgroup_memory_explicit_layout", "VK_KHR_get_physical_device_properties2"),
345	std::make_tuple(1, 0, "VK_KHR_zero_initialize_workgroup_memory", "VK_KHR_get_physical_device_properties2"),
346	std::make_tuple(1, 0, "VK_NVX_multiview_per_view_attributes", "VK_KHR_multiview"),
347	std::make_tuple(1, 0, "VK_NV_acquire_winrt_display", "VK_EXT_direct_mode_display"),
348	std::make_tuple(1, 1, "VK_NV_acquire_winrt_display", "VK_EXT_direct_mode_display"),
349	std::make_tuple(1, 2, "VK_NV_acquire_winrt_display", "VK_EXT_direct_mode_display"),
350	std::make_tuple(1, 0, "VK_NV_compute_shader_derivatives", "VK_KHR_get_physical_device_properties2"),
351	std::make_tuple(1, 0, "VK_NV_cooperative_matrix", "VK_KHR_get_physical_device_properties2"),
352	std::make_tuple(1, 0, "VK_NV_corner_sampled_image", "VK_KHR_get_physical_device_properties2"),
353	std::make_tuple(1, 0, "VK_NV_coverage_reduction_mode", "VK_NV_framebuffer_mixed_samples"),
354	std::make_tuple(1, 1, "VK_NV_coverage_reduction_mode", "VK_NV_framebuffer_mixed_samples"),
355	std::make_tuple(1, 2, "VK_NV_coverage_reduction_mode", "VK_NV_framebuffer_mixed_samples"),
356	std::make_tuple(1, 0, "VK_NV_dedicated_allocation_image_aliasing", "VK_KHR_dedicated_allocation"),
357	std::make_tuple(1, 0, "VK_NV_device_diagnostic_checkpoints", "VK_KHR_get_physical_device_properties2"),
358	std::make_tuple(1, 0, "VK_NV_device_diagnostics_config", "VK_KHR_get_physical_device_properties2"),
359	std::make_tuple(1, 1, "VK_NV_device_generated_commands", "VK_KHR_buffer_device_address"),
360	std::make_tuple(1, 0, "VK_NV_external_memory", "VK_NV_external_memory_capabilities"),
361	std::make_tuple(1, 1, "VK_NV_external_memory", "VK_NV_external_memory_capabilities"),
362	std::make_tuple(1, 2, "VK_NV_external_memory", "VK_NV_external_memory_capabilities"),
363	std::make_tuple(1, 0, "VK_NV_external_memory_rdma", "VK_KHR_external_memory"),
364	std::make_tuple(1, 0, "VK_NV_external_memory_win32", "VK_NV_external_memory"),
365	std::make_tuple(1, 1, "VK_NV_external_memory_win32", "VK_NV_external_memory"),
366	std::make_tuple(1, 2, "VK_NV_external_memory_win32", "VK_NV_external_memory"),
367	std::make_tuple(1, 0, "VK_NV_fragment_shader_barycentric", "VK_KHR_get_physical_device_properties2"),
368	std::make_tuple(1, 0, "VK_NV_fragment_shading_rate_enums", "VK_KHR_fragment_shading_rate"),
369	std::make_tuple(1, 1, "VK_NV_fragment_shading_rate_enums", "VK_KHR_fragment_shading_rate"),
370	std::make_tuple(1, 2, "VK_NV_fragment_shading_rate_enums", "VK_KHR_fragment_shading_rate"),
371	std::make_tuple(1, 0, "VK_NV_mesh_shader", "VK_KHR_get_physical_device_properties2"),
372	std::make_tuple(1, 0, "VK_NV_ray_tracing", "VK_KHR_get_physical_device_properties2"),
373	std::make_tuple(1, 0, "VK_NV_ray_tracing", "VK_KHR_get_memory_requirements2"),
374	std::make_tuple(1, 0, "VK_NV_ray_tracing_motion_blur", "VK_KHR_ray_tracing_pipeline"),
375	std::make_tuple(1, 1, "VK_NV_ray_tracing_motion_blur", "VK_KHR_ray_tracing_pipeline"),
376	std::make_tuple(1, 2, "VK_NV_ray_tracing_motion_blur", "VK_KHR_ray_tracing_pipeline"),
377	std::make_tuple(1, 0, "VK_NV_scissor_exclusive", "VK_KHR_get_physical_device_properties2"),
378	std::make_tuple(1, 0, "VK_NV_shader_image_footprint", "VK_KHR_get_physical_device_properties2"),
379	std::make_tuple(1, 0, "VK_NV_shading_rate_image", "VK_KHR_get_physical_device_properties2"),
380	std::make_tuple(1, 0, "VK_NV_win32_keyed_mutex", "VK_NV_external_memory_win32"),
381	std::make_tuple(1, 1, "VK_NV_win32_keyed_mutex", "VK_NV_external_memory_win32"),
382	std::make_tuple(1, 2, "VK_NV_win32_keyed_mutex", "VK_NV_external_memory_win32"),
383	std::make_tuple(1, 0, "VK_QCOM_render_pass_transform", "VK_KHR_swapchain"),
384	std::make_tuple(1, 0, "VK_QCOM_render_pass_transform", "VK_KHR_surface"),
385	std::make_tuple(1, 1, "VK_QCOM_render_pass_transform", "VK_KHR_swapchain"),
386	std::make_tuple(1, 1, "VK_QCOM_render_pass_transform", "VK_KHR_surface"),
387	std::make_tuple(1, 2, "VK_QCOM_render_pass_transform", "VK_KHR_swapchain"),
388	std::make_tuple(1, 2, "VK_QCOM_render_pass_transform", "VK_KHR_surface"),
389	std::make_tuple(1, 0, "VK_QCOM_rotated_copy_commands", "VK_KHR_swapchain"),
390	std::make_tuple(1, 0, "VK_QCOM_rotated_copy_commands", "VK_KHR_copy_commands2"),
391	std::make_tuple(1, 1, "VK_QCOM_rotated_copy_commands", "VK_KHR_swapchain"),
392	std::make_tuple(1, 1, "VK_QCOM_rotated_copy_commands", "VK_KHR_copy_commands2"),
393	std::make_tuple(1, 2, "VK_QCOM_rotated_copy_commands", "VK_KHR_swapchain"),
394	std::make_tuple(1, 2, "VK_QCOM_rotated_copy_commands", "VK_KHR_copy_commands2"),
395	std::make_tuple(1, 0, "VK_VALVE_mutable_descriptor_type", "VK_KHR_maintenance3"),
396};
397static const std::tuple<deUint32, deUint32, deUint32>	releasedApiVersions[]	=
398{
399	std::make_tuple(4202496, 1, 2),
400	std::make_tuple(4198400, 1, 1),
401	std::make_tuple(4194304, 1, 0),
402};
403static const std::tuple<deUint32, deUint32, const char*>	extensionRequiredCoreVersion[]	 =
404{
405	std::make_tuple(1, 0, "VK_AMD_buffer_marker"),
406	std::make_tuple(1, 0, "VK_AMD_device_coherent_memory"),
407	std::make_tuple(1, 0, "VK_AMD_display_native_hdr"),
408	std::make_tuple(1, 0, "VK_AMD_draw_indirect_count"),
409	std::make_tuple(1, 0, "VK_AMD_gcn_shader"),
410	std::make_tuple(1, 0, "VK_AMD_gpu_shader_half_float"),
411	std::make_tuple(1, 0, "VK_AMD_gpu_shader_int16"),
412	std::make_tuple(1, 0, "VK_AMD_memory_overallocation_behavior"),
413	std::make_tuple(1, 0, "VK_AMD_mixed_attachment_samples"),
414	std::make_tuple(1, 0, "VK_AMD_negative_viewport_height"),
415	std::make_tuple(1, 0, "VK_AMD_pipeline_compiler_control"),
416	std::make_tuple(1, 0, "VK_AMD_rasterization_order"),
417	std::make_tuple(1, 0, "VK_AMD_shader_ballot"),
418	std::make_tuple(1, 0, "VK_AMD_shader_core_properties"),
419	std::make_tuple(1, 0, "VK_AMD_shader_core_properties2"),
420	std::make_tuple(1, 0, "VK_AMD_shader_explicit_vertex_parameter"),
421	std::make_tuple(1, 0, "VK_AMD_shader_fragment_mask"),
422	std::make_tuple(1, 0, "VK_AMD_shader_image_load_store_lod"),
423	std::make_tuple(1, 0, "VK_AMD_shader_info"),
424	std::make_tuple(1, 0, "VK_AMD_shader_trinary_minmax"),
425	std::make_tuple(1, 0, "VK_AMD_texture_gather_bias_lod"),
426	std::make_tuple(1, 0, "VK_ANDROID_external_memory_android_hardware_buffer"),
427	std::make_tuple(1, 0, "VK_ARM_rasterization_order_attachment_access"),
428	std::make_tuple(1, 0, "VK_EXT_4444_formats"),
429	std::make_tuple(1, 0, "VK_EXT_acquire_drm_display"),
430	std::make_tuple(1, 0, "VK_EXT_acquire_xlib_display"),
431	std::make_tuple(1, 0, "VK_EXT_astc_decode_mode"),
432	std::make_tuple(1, 0, "VK_EXT_blend_operation_advanced"),
433	std::make_tuple(1, 0, "VK_EXT_border_color_swizzle"),
434	std::make_tuple(1, 0, "VK_EXT_buffer_device_address"),
435	std::make_tuple(1, 0, "VK_EXT_calibrated_timestamps"),
436	std::make_tuple(1, 0, "VK_EXT_color_write_enable"),
437	std::make_tuple(1, 0, "VK_EXT_conditional_rendering"),
438	std::make_tuple(1, 0, "VK_EXT_conservative_rasterization"),
439	std::make_tuple(1, 0, "VK_EXT_custom_border_color"),
440	std::make_tuple(1, 0, "VK_EXT_debug_marker"),
441	std::make_tuple(1, 0, "VK_EXT_debug_report"),
442	std::make_tuple(1, 0, "VK_EXT_debug_utils"),
443	std::make_tuple(1, 0, "VK_EXT_depth_clip_control"),
444	std::make_tuple(1, 0, "VK_EXT_depth_clip_enable"),
445	std::make_tuple(1, 0, "VK_EXT_depth_range_unrestricted"),
446	std::make_tuple(1, 0, "VK_EXT_descriptor_indexing"),
447	std::make_tuple(1, 0, "VK_EXT_device_memory_report"),
448	std::make_tuple(1, 0, "VK_EXT_direct_mode_display"),
449	std::make_tuple(1, 0, "VK_EXT_directfb_surface"),
450	std::make_tuple(1, 0, "VK_EXT_discard_rectangles"),
451	std::make_tuple(1, 0, "VK_EXT_display_control"),
452	std::make_tuple(1, 0, "VK_EXT_display_surface_counter"),
453	std::make_tuple(1, 0, "VK_EXT_extended_dynamic_state"),
454	std::make_tuple(1, 0, "VK_EXT_extended_dynamic_state2"),
455	std::make_tuple(1, 0, "VK_EXT_external_memory_dma_buf"),
456	std::make_tuple(1, 0, "VK_EXT_external_memory_host"),
457	std::make_tuple(1, 0, "VK_EXT_filter_cubic"),
458	std::make_tuple(1, 0, "VK_EXT_fragment_density_map"),
459	std::make_tuple(1, 0, "VK_EXT_fragment_density_map2"),
460	std::make_tuple(1, 0, "VK_EXT_fragment_shader_interlock"),
461	std::make_tuple(1, 0, "VK_EXT_full_screen_exclusive"),
462	std::make_tuple(1, 0, "VK_EXT_global_priority"),
463	std::make_tuple(1, 0, "VK_EXT_global_priority_query"),
464	std::make_tuple(1, 0, "VK_EXT_hdr_metadata"),
465	std::make_tuple(1, 0, "VK_EXT_headless_surface"),
466	std::make_tuple(1, 0, "VK_EXT_host_query_reset"),
467	std::make_tuple(1, 0, "VK_EXT_image_drm_format_modifier"),
468	std::make_tuple(1, 0, "VK_EXT_image_robustness"),
469	std::make_tuple(1, 0, "VK_EXT_image_view_min_lod"),
470	std::make_tuple(1, 0, "VK_EXT_index_type_uint8"),
471	std::make_tuple(1, 0, "VK_EXT_inline_uniform_block"),
472	std::make_tuple(1, 0, "VK_EXT_line_rasterization"),
473	std::make_tuple(1, 0, "VK_EXT_load_store_op_none"),
474	std::make_tuple(1, 0, "VK_EXT_memory_budget"),
475	std::make_tuple(1, 0, "VK_EXT_memory_priority"),
476	std::make_tuple(1, 0, "VK_EXT_metal_surface"),
477	std::make_tuple(1, 0, "VK_EXT_multi_draw"),
478	std::make_tuple(1, 0, "VK_EXT_pageable_device_local_memory"),
479	std::make_tuple(1, 0, "VK_EXT_pci_bus_info"),
480	std::make_tuple(1, 0, "VK_EXT_physical_device_drm"),
481	std::make_tuple(1, 0, "VK_EXT_pipeline_creation_cache_control"),
482	std::make_tuple(1, 0, "VK_EXT_pipeline_creation_feedback"),
483	std::make_tuple(1, 0, "VK_EXT_post_depth_coverage"),
484	std::make_tuple(1, 0, "VK_EXT_primitive_topology_list_restart"),
485	std::make_tuple(1, 0, "VK_EXT_private_data"),
486	std::make_tuple(1, 0, "VK_EXT_provoking_vertex"),
487	std::make_tuple(1, 0, "VK_EXT_queue_family_foreign"),
488	std::make_tuple(1, 0, "VK_EXT_rgba10x6_formats"),
489	std::make_tuple(1, 0, "VK_EXT_robustness2"),
490	std::make_tuple(1, 0, "VK_EXT_sample_locations"),
491	std::make_tuple(1, 0, "VK_EXT_sampler_filter_minmax"),
492	std::make_tuple(1, 0, "VK_EXT_scalar_block_layout"),
493	std::make_tuple(1, 0, "VK_EXT_separate_stencil_usage"),
494	std::make_tuple(1, 0, "VK_EXT_shader_atomic_float"),
495	std::make_tuple(1, 0, "VK_EXT_shader_atomic_float2"),
496	std::make_tuple(1, 0, "VK_EXT_shader_demote_to_helper_invocation"),
497	std::make_tuple(1, 0, "VK_EXT_shader_image_atomic_int64"),
498	std::make_tuple(1, 0, "VK_EXT_shader_stencil_export"),
499	std::make_tuple(1, 0, "VK_EXT_shader_subgroup_ballot"),
500	std::make_tuple(1, 0, "VK_EXT_shader_subgroup_vote"),
501	std::make_tuple(1, 0, "VK_EXT_shader_viewport_index_layer"),
502	std::make_tuple(1, 1, "VK_EXT_subgroup_size_control"),
503	std::make_tuple(1, 0, "VK_EXT_swapchain_colorspace"),
504	std::make_tuple(1, 0, "VK_EXT_texel_buffer_alignment"),
505	std::make_tuple(1, 0, "VK_EXT_texture_compression_astc_hdr"),
506	std::make_tuple(1, 0, "VK_EXT_tooling_info"),
507	std::make_tuple(1, 0, "VK_EXT_transform_feedback"),
508	std::make_tuple(1, 0, "VK_EXT_validation_cache"),
509	std::make_tuple(1, 0, "VK_EXT_validation_features"),
510	std::make_tuple(1, 0, "VK_EXT_validation_flags"),
511	std::make_tuple(1, 0, "VK_EXT_vertex_attribute_divisor"),
512	std::make_tuple(1, 0, "VK_EXT_vertex_input_dynamic_state"),
513	std::make_tuple(1, 0, "VK_EXT_video_decode_h264"),
514	std::make_tuple(1, 0, "VK_EXT_video_decode_h265"),
515	std::make_tuple(1, 0, "VK_EXT_video_encode_h264"),
516	std::make_tuple(1, 0, "VK_EXT_video_encode_h265"),
517	std::make_tuple(1, 0, "VK_EXT_ycbcr_2plane_444_formats"),
518	std::make_tuple(1, 0, "VK_EXT_ycbcr_image_arrays"),
519	std::make_tuple(1, 0, "VK_FUCHSIA_buffer_collection"),
520	std::make_tuple(1, 0, "VK_FUCHSIA_external_memory"),
521	std::make_tuple(1, 0, "VK_FUCHSIA_external_semaphore"),
522	std::make_tuple(1, 0, "VK_FUCHSIA_imagepipe_surface"),
523	std::make_tuple(1, 0, "VK_GGP_frame_token"),
524	std::make_tuple(1, 0, "VK_GGP_stream_descriptor_surface"),
525	std::make_tuple(1, 0, "VK_GOOGLE_decorate_string"),
526	std::make_tuple(1, 0, "VK_GOOGLE_display_timing"),
527	std::make_tuple(1, 0, "VK_GOOGLE_hlsl_functionality1"),
528	std::make_tuple(1, 0, "VK_GOOGLE_user_type"),
529	std::make_tuple(1, 0, "VK_HUAWEI_invocation_mask"),
530	std::make_tuple(1, 0, "VK_HUAWEI_subpass_shading"),
531	std::make_tuple(1, 0, "VK_IMG_filter_cubic"),
532	std::make_tuple(1, 0, "VK_IMG_format_pvrtc"),
533	std::make_tuple(1, 0, "VK_INTEL_performance_query"),
534	std::make_tuple(1, 0, "VK_INTEL_shader_integer_functions2"),
535	std::make_tuple(1, 0, "VK_KHR_16bit_storage"),
536	std::make_tuple(1, 0, "VK_KHR_8bit_storage"),
537	std::make_tuple(1, 1, "VK_KHR_acceleration_structure"),
538	std::make_tuple(1, 0, "VK_KHR_android_surface"),
539	std::make_tuple(1, 0, "VK_KHR_bind_memory2"),
540	std::make_tuple(1, 0, "VK_KHR_buffer_device_address"),
541	std::make_tuple(1, 0, "VK_KHR_copy_commands2"),
542	std::make_tuple(1, 0, "VK_KHR_create_renderpass2"),
543	std::make_tuple(1, 0, "VK_KHR_dedicated_allocation"),
544	std::make_tuple(1, 0, "VK_KHR_deferred_host_operations"),
545	std::make_tuple(1, 0, "VK_KHR_depth_stencil_resolve"),
546	std::make_tuple(1, 0, "VK_KHR_descriptor_update_template"),
547	std::make_tuple(1, 0, "VK_KHR_device_group"),
548	std::make_tuple(1, 0, "VK_KHR_device_group_creation"),
549	std::make_tuple(1, 0, "VK_KHR_display"),
550	std::make_tuple(1, 0, "VK_KHR_display_swapchain"),
551	std::make_tuple(1, 0, "VK_KHR_draw_indirect_count"),
552	std::make_tuple(1, 0, "VK_KHR_driver_properties"),
553	std::make_tuple(1, 0, "VK_KHR_dynamic_rendering"),
554	std::make_tuple(1, 0, "VK_KHR_external_fence"),
555	std::make_tuple(1, 0, "VK_KHR_external_fence_capabilities"),
556	std::make_tuple(1, 0, "VK_KHR_external_fence_fd"),
557	std::make_tuple(1, 0, "VK_KHR_external_fence_win32"),
558	std::make_tuple(1, 0, "VK_KHR_external_memory"),
559	std::make_tuple(1, 0, "VK_KHR_external_memory_capabilities"),
560	std::make_tuple(1, 0, "VK_KHR_external_memory_fd"),
561	std::make_tuple(1, 0, "VK_KHR_external_memory_win32"),
562	std::make_tuple(1, 0, "VK_KHR_external_semaphore"),
563	std::make_tuple(1, 0, "VK_KHR_external_semaphore_capabilities"),
564	std::make_tuple(1, 0, "VK_KHR_external_semaphore_fd"),
565	std::make_tuple(1, 0, "VK_KHR_external_semaphore_win32"),
566	std::make_tuple(1, 0, "VK_KHR_format_feature_flags2"),
567	std::make_tuple(1, 0, "VK_KHR_fragment_shading_rate"),
568	std::make_tuple(1, 0, "VK_KHR_get_display_properties2"),
569	std::make_tuple(1, 0, "VK_KHR_get_memory_requirements2"),
570	std::make_tuple(1, 0, "VK_KHR_get_physical_device_properties2"),
571	std::make_tuple(1, 0, "VK_KHR_get_surface_capabilities2"),
572	std::make_tuple(1, 0, "VK_KHR_image_format_list"),
573	std::make_tuple(1, 0, "VK_KHR_imageless_framebuffer"),
574	std::make_tuple(1, 0, "VK_KHR_incremental_present"),
575	std::make_tuple(1, 0, "VK_KHR_maintenance1"),
576	std::make_tuple(1, 0, "VK_KHR_maintenance2"),
577	std::make_tuple(1, 0, "VK_KHR_maintenance3"),
578	std::make_tuple(1, 1, "VK_KHR_maintenance4"),
579	std::make_tuple(1, 0, "VK_KHR_multiview"),
580	std::make_tuple(1, 0, "VK_KHR_performance_query"),
581	std::make_tuple(1, 0, "VK_KHR_pipeline_executable_properties"),
582	std::make_tuple(1, 0, "VK_KHR_pipeline_library"),
583	std::make_tuple(1, 0, "VK_KHR_portability_subset"),
584	std::make_tuple(1, 0, "VK_KHR_present_id"),
585	std::make_tuple(1, 0, "VK_KHR_present_wait"),
586	std::make_tuple(1, 0, "VK_KHR_push_descriptor"),
587	std::make_tuple(1, 1, "VK_KHR_ray_query"),
588	std::make_tuple(1, 1, "VK_KHR_ray_tracing_pipeline"),
589	std::make_tuple(1, 0, "VK_KHR_relaxed_block_layout"),
590	std::make_tuple(1, 0, "VK_KHR_sampler_mirror_clamp_to_edge"),
591	std::make_tuple(1, 0, "VK_KHR_sampler_ycbcr_conversion"),
592	std::make_tuple(1, 0, "VK_KHR_separate_depth_stencil_layouts"),
593	std::make_tuple(1, 0, "VK_KHR_shader_atomic_int64"),
594	std::make_tuple(1, 0, "VK_KHR_shader_clock"),
595	std::make_tuple(1, 0, "VK_KHR_shader_draw_parameters"),
596	std::make_tuple(1, 0, "VK_KHR_shader_float16_int8"),
597	std::make_tuple(1, 0, "VK_KHR_shader_float_controls"),
598	std::make_tuple(1, 0, "VK_KHR_shader_integer_dot_product"),
599	std::make_tuple(1, 0, "VK_KHR_shader_non_semantic_info"),
600	std::make_tuple(1, 1, "VK_KHR_shader_subgroup_extended_types"),
601	std::make_tuple(1, 1, "VK_KHR_shader_subgroup_uniform_control_flow"),
602	std::make_tuple(1, 0, "VK_KHR_shader_terminate_invocation"),
603	std::make_tuple(1, 0, "VK_KHR_shared_presentable_image"),
604	std::make_tuple(1, 1, "VK_KHR_spirv_1_4"),
605	std::make_tuple(1, 0, "VK_KHR_storage_buffer_storage_class"),
606	std::make_tuple(1, 0, "VK_KHR_surface"),
607	std::make_tuple(1, 1, "VK_KHR_surface_protected_capabilities"),
608	std::make_tuple(1, 0, "VK_KHR_swapchain"),
609	std::make_tuple(1, 0, "VK_KHR_swapchain_mutable_format"),
610	std::make_tuple(1, 0, "VK_KHR_synchronization2"),
611	std::make_tuple(1, 0, "VK_KHR_timeline_semaphore"),
612	std::make_tuple(1, 0, "VK_KHR_uniform_buffer_standard_layout"),
613	std::make_tuple(1, 0, "VK_KHR_variable_pointers"),
614	std::make_tuple(1, 0, "VK_KHR_video_decode_queue"),
615	std::make_tuple(1, 0, "VK_KHR_video_encode_queue"),
616	std::make_tuple(1, 0, "VK_KHR_video_queue"),
617	std::make_tuple(1, 0, "VK_KHR_vulkan_memory_model"),
618	std::make_tuple(1, 0, "VK_KHR_wayland_surface"),
619	std::make_tuple(1, 0, "VK_KHR_win32_keyed_mutex"),
620	std::make_tuple(1, 0, "VK_KHR_win32_surface"),
621	std::make_tuple(1, 0, "VK_KHR_workgroup_memory_explicit_layout"),
622	std::make_tuple(1, 0, "VK_KHR_xcb_surface"),
623	std::make_tuple(1, 0, "VK_KHR_xlib_surface"),
624	std::make_tuple(1, 0, "VK_KHR_zero_initialize_workgroup_memory"),
625	std::make_tuple(1, 0, "VK_MVK_ios_surface"),
626	std::make_tuple(1, 0, "VK_MVK_macos_surface"),
627	std::make_tuple(1, 0, "VK_NN_vi_surface"),
628	std::make_tuple(1, 0, "VK_NVX_binary_import"),
629	std::make_tuple(1, 0, "VK_NVX_image_view_handle"),
630	std::make_tuple(1, 0, "VK_NVX_multiview_per_view_attributes"),
631	std::make_tuple(1, 0, "VK_NV_acquire_winrt_display"),
632	std::make_tuple(1, 0, "VK_NV_clip_space_w_scaling"),
633	std::make_tuple(1, 0, "VK_NV_compute_shader_derivatives"),
634	std::make_tuple(1, 0, "VK_NV_cooperative_matrix"),
635	std::make_tuple(1, 0, "VK_NV_corner_sampled_image"),
636	std::make_tuple(1, 0, "VK_NV_coverage_reduction_mode"),
637	std::make_tuple(1, 0, "VK_NV_dedicated_allocation"),
638	std::make_tuple(1, 0, "VK_NV_dedicated_allocation_image_aliasing"),
639	std::make_tuple(1, 0, "VK_NV_device_diagnostic_checkpoints"),
640	std::make_tuple(1, 0, "VK_NV_device_diagnostics_config"),
641	std::make_tuple(1, 1, "VK_NV_device_generated_commands"),
642	std::make_tuple(1, 0, "VK_NV_external_memory"),
643	std::make_tuple(1, 0, "VK_NV_external_memory_capabilities"),
644	std::make_tuple(1, 0, "VK_NV_external_memory_rdma"),
645	std::make_tuple(1, 0, "VK_NV_external_memory_win32"),
646	std::make_tuple(1, 0, "VK_NV_fill_rectangle"),
647	std::make_tuple(1, 0, "VK_NV_fragment_coverage_to_color"),
648	std::make_tuple(1, 0, "VK_NV_fragment_shader_barycentric"),
649	std::make_tuple(1, 0, "VK_NV_fragment_shading_rate_enums"),
650	std::make_tuple(1, 0, "VK_NV_framebuffer_mixed_samples"),
651	std::make_tuple(1, 0, "VK_NV_geometry_shader_passthrough"),
652	std::make_tuple(1, 0, "VK_NV_glsl_shader"),
653	std::make_tuple(1, 0, "VK_NV_inherited_viewport_scissor"),
654	std::make_tuple(1, 0, "VK_NV_mesh_shader"),
655	std::make_tuple(1, 0, "VK_NV_ray_tracing"),
656	std::make_tuple(1, 0, "VK_NV_ray_tracing_motion_blur"),
657	std::make_tuple(1, 0, "VK_NV_representative_fragment_test"),
658	std::make_tuple(1, 0, "VK_NV_sample_mask_override_coverage"),
659	std::make_tuple(1, 0, "VK_NV_scissor_exclusive"),
660	std::make_tuple(1, 0, "VK_NV_shader_image_footprint"),
661	std::make_tuple(1, 1, "VK_NV_shader_sm_builtins"),
662	std::make_tuple(1, 1, "VK_NV_shader_subgroup_partitioned"),
663	std::make_tuple(1, 0, "VK_NV_shading_rate_image"),
664	std::make_tuple(1, 0, "VK_NV_viewport_array2"),
665	std::make_tuple(1, 0, "VK_NV_viewport_swizzle"),
666	std::make_tuple(1, 0, "VK_NV_win32_keyed_mutex"),
667	std::make_tuple(1, 0, "VK_QCOM_render_pass_shader_resolve"),
668	std::make_tuple(1, 0, "VK_QCOM_render_pass_store_ops"),
669	std::make_tuple(1, 0, "VK_QCOM_render_pass_transform"),
670	std::make_tuple(1, 0, "VK_QCOM_rotated_copy_commands"),
671	std::make_tuple(1, 0, "VK_QNX_screen_surface"),
672	std::make_tuple(1, 0, "VK_VALVE_mutable_descriptor_type"),
673};
674