summaryrefslogtreecommitdiff
path: root/vulkan/libvulkan/driver_gen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'vulkan/libvulkan/driver_gen.cpp')
-rw-r--r--vulkan/libvulkan/driver_gen.cpp148
1 files changed, 4 insertions, 144 deletions
diff --git a/vulkan/libvulkan/driver_gen.cpp b/vulkan/libvulkan/driver_gen.cpp
index 5f37a50a03..52205e9e79 100644
--- a/vulkan/libvulkan/driver_gen.cpp
+++ b/vulkan/libvulkan/driver_gen.cpp
@@ -363,55 +363,6 @@ const ProcHook g_proc_hooks[] = {
reinterpret_cast<PFN_vkVoidFunction>(checkedGetPastPresentationTimingGOOGLE),
},
{
- "vkGetPhysicalDeviceExternalBufferProperties",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceExternalBufferProperties),
- nullptr,
- },
- {
- "vkGetPhysicalDeviceExternalFenceProperties",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceExternalFenceProperties),
- nullptr,
- },
- {
- "vkGetPhysicalDeviceExternalSemaphoreProperties",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceExternalSemaphoreProperties),
- nullptr,
- },
- {
- "vkGetPhysicalDeviceFeatures2",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceFeatures2),
- nullptr,
- },
- {
- "vkGetPhysicalDeviceFormatProperties2",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceFormatProperties2),
- nullptr,
- },
- {
- "vkGetPhysicalDeviceImageFormatProperties2",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceImageFormatProperties2),
- nullptr,
- },
- {
- "vkGetPhysicalDeviceMemoryProperties2",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceMemoryProperties2),
- nullptr,
- },
- {
"vkGetPhysicalDevicePresentRectanglesKHR",
ProcHook::INSTANCE,
ProcHook::KHR_swapchain,
@@ -419,27 +370,6 @@ const ProcHook g_proc_hooks[] = {
nullptr,
},
{
- "vkGetPhysicalDeviceProperties2",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceProperties2),
- nullptr,
- },
- {
- "vkGetPhysicalDeviceQueueFamilyProperties2",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceQueueFamilyProperties2),
- nullptr,
- },
- {
- "vkGetPhysicalDeviceSparseImageFormatProperties2",
- ProcHook::INSTANCE,
- ProcHook::EXTENSION_CORE_1_1,
- reinterpret_cast<PFN_vkVoidFunction>(GetPhysicalDeviceSparseImageFormatProperties2),
- nullptr,
- },
- {
"vkGetPhysicalDeviceSurfaceCapabilities2KHR",
ProcHook::INSTANCE,
ProcHook::KHR_get_surface_capabilities2,
@@ -550,9 +480,10 @@ const ProcHook g_proc_hooks[] = {
} // namespace
const ProcHook* GetProcHook(const char* name) {
- auto begin = std::cbegin(g_proc_hooks);
- auto end = std::cend(g_proc_hooks);
- auto hook = std::lower_bound(
+ const auto& begin = g_proc_hooks;
+ const auto& end =
+ g_proc_hooks + sizeof(g_proc_hooks) / sizeof(g_proc_hooks[0]);
+ const auto hook = std::lower_bound(
begin, end, name,
[](const ProcHook& e, const char* n) { return strcmp(e.name, n) < 0; });
return (hook < end && strcmp(hook->name, name) == 0) ? hook : nullptr;
@@ -574,10 +505,6 @@ ProcHook::Extension GetProcHookExtension(const char* name) {
if (strcmp(name, "VK_ANDROID_external_memory_android_hardware_buffer") == 0) return ProcHook::ANDROID_external_memory_android_hardware_buffer;
if (strcmp(name, "VK_KHR_bind_memory2") == 0) return ProcHook::KHR_bind_memory2;
if (strcmp(name, "VK_KHR_get_physical_device_properties2") == 0) return ProcHook::KHR_get_physical_device_properties2;
- if (strcmp(name, "VK_KHR_device_group_creation") == 0) return ProcHook::KHR_device_group_creation;
- if (strcmp(name, "VK_KHR_external_memory_capabilities") == 0) return ProcHook::KHR_external_memory_capabilities;
- if (strcmp(name, "VK_KHR_external_semaphore_capabilities") == 0) return ProcHook::KHR_external_semaphore_capabilities;
- if (strcmp(name, "VK_KHR_external_fence_capabilities") == 0) return ProcHook::KHR_external_fence_capabilities;
// clang-format on
return ProcHook::EXTENSION_UNKNOWN;
}
@@ -616,28 +543,9 @@ bool InitDriverTable(VkInstance instance,
INIT_PROC_EXT(EXT_debug_report, true, instance, CreateDebugReportCallbackEXT);
INIT_PROC_EXT(EXT_debug_report, true, instance, DestroyDebugReportCallbackEXT);
INIT_PROC_EXT(EXT_debug_report, true, instance, DebugReportMessageEXT);
- INIT_PROC(false, instance, GetPhysicalDeviceFeatures2);
- INIT_PROC_EXT(KHR_get_physical_device_properties2, true, instance, GetPhysicalDeviceFeatures2KHR);
INIT_PROC(false, instance, GetPhysicalDeviceProperties2);
INIT_PROC_EXT(KHR_get_physical_device_properties2, true, instance, GetPhysicalDeviceProperties2KHR);
- INIT_PROC(false, instance, GetPhysicalDeviceFormatProperties2);
- INIT_PROC_EXT(KHR_get_physical_device_properties2, true, instance, GetPhysicalDeviceFormatProperties2KHR);
- INIT_PROC(false, instance, GetPhysicalDeviceImageFormatProperties2);
- INIT_PROC_EXT(KHR_get_physical_device_properties2, true, instance, GetPhysicalDeviceImageFormatProperties2KHR);
- INIT_PROC(false, instance, GetPhysicalDeviceQueueFamilyProperties2);
- INIT_PROC_EXT(KHR_get_physical_device_properties2, true, instance, GetPhysicalDeviceQueueFamilyProperties2KHR);
- INIT_PROC(false, instance, GetPhysicalDeviceMemoryProperties2);
- INIT_PROC_EXT(KHR_get_physical_device_properties2, true, instance, GetPhysicalDeviceMemoryProperties2KHR);
- INIT_PROC(false, instance, GetPhysicalDeviceSparseImageFormatProperties2);
- INIT_PROC_EXT(KHR_get_physical_device_properties2, true, instance, GetPhysicalDeviceSparseImageFormatProperties2KHR);
- INIT_PROC(false, instance, GetPhysicalDeviceExternalBufferProperties);
- INIT_PROC_EXT(KHR_external_memory_capabilities, true, instance, GetPhysicalDeviceExternalBufferPropertiesKHR);
- INIT_PROC(false, instance, GetPhysicalDeviceExternalSemaphoreProperties);
- INIT_PROC_EXT(KHR_external_semaphore_capabilities, true, instance, GetPhysicalDeviceExternalSemaphorePropertiesKHR);
- INIT_PROC(false, instance, GetPhysicalDeviceExternalFenceProperties);
- INIT_PROC_EXT(KHR_external_fence_capabilities, true, instance, GetPhysicalDeviceExternalFencePropertiesKHR);
INIT_PROC(false, instance, EnumeratePhysicalDeviceGroups);
- INIT_PROC_EXT(KHR_device_group_creation, true, instance, EnumeratePhysicalDeviceGroupsKHR);
// clang-format on
return success;
@@ -669,53 +577,5 @@ bool InitDriverTable(VkDevice dev,
return success;
}
-const std::pair<const char*, uint32_t> g_promoted_instance_extensions[] = {
- // clang-format off
- std::make_pair("VK_KHR_device_group_creation", VK_API_VERSION_1_1),
- std::make_pair("VK_KHR_external_fence_capabilities", VK_API_VERSION_1_1),
- std::make_pair("VK_KHR_external_memory_capabilities", VK_API_VERSION_1_1),
- std::make_pair("VK_KHR_external_semaphore_capabilities", VK_API_VERSION_1_1),
- std::make_pair("VK_KHR_get_physical_device_properties2", VK_API_VERSION_1_1),
- // clang-format on
-};
-
-std::optional<uint32_t> GetInstanceExtensionPromotedVersion(const char* name) {
- auto begin = std::cbegin(g_promoted_instance_extensions);
- auto end = std::cend(g_promoted_instance_extensions);
- auto iter =
- std::lower_bound(begin, end, name,
- [](const std::pair<const char*, uint32_t>& e,
- const char* n) { return strcmp(e.first, n) < 0; });
- return (iter < end && strcmp(iter->first, name) == 0)
- ? std::optional<uint32_t>(iter->second)
- : std::nullopt;
-}
-
-uint32_t CountPromotedInstanceExtensions(uint32_t begin_version,
- uint32_t end_version) {
- auto begin = std::cbegin(g_promoted_instance_extensions);
- auto end = std::cend(g_promoted_instance_extensions);
- uint32_t count = 0;
-
- for (auto iter = begin; iter != end; iter++)
- if (iter->second > begin_version && iter->second <= end_version)
- count++;
-
- return count;
-}
-
-std::vector<const char*> GetPromotedInstanceExtensions(uint32_t begin_version,
- uint32_t end_version) {
- auto begin = std::cbegin(g_promoted_instance_extensions);
- auto end = std::cend(g_promoted_instance_extensions);
- std::vector<const char*> extensions;
-
- for (auto iter = begin; iter != end; iter++)
- if (iter->second > begin_version && iter->second <= end_version)
- extensions.emplace_back(iter->first);
-
- return extensions;
-}
-
} // namespace driver
} // namespace vulkan