summaryrefslogtreecommitdiff
path: root/vulkan/scripts/driver_generator.py
diff options
context:
space:
mode:
Diffstat (limited to 'vulkan/scripts/driver_generator.py')
-rw-r--r--vulkan/scripts/driver_generator.py118
1 files changed, 6 insertions, 112 deletions
diff --git a/vulkan/scripts/driver_generator.py b/vulkan/scripts/driver_generator.py
index 6a73023193..a64a7026db 100644
--- a/vulkan/scripts/driver_generator.py
+++ b/vulkan/scripts/driver_generator.py
@@ -40,10 +40,6 @@ _KNOWN_EXTENSIONS = _INTERCEPTED_EXTENSIONS + [
'VK_ANDROID_external_memory_android_hardware_buffer',
'VK_KHR_bind_memory2',
'VK_KHR_get_physical_device_properties2',
- 'VK_KHR_device_group_creation',
- 'VK_KHR_external_memory_capabilities',
- 'VK_KHR_external_semaphore_capabilities',
- 'VK_KHR_external_fence_capabilities',
]
# Functions needed at vulkan::driver level.
@@ -75,41 +71,12 @@ _NEEDED_COMMANDS = [
'vkDestroyImage',
'vkGetPhysicalDeviceProperties',
+ 'vkGetPhysicalDeviceProperties2',
+ 'vkGetPhysicalDeviceProperties2KHR',
# VK_KHR_swapchain v69 requirement
'vkBindImageMemory2',
'vkBindImageMemory2KHR',
-
- # For promoted VK_KHR_device_group_creation
- 'vkEnumeratePhysicalDeviceGroupsKHR',
-
- # For promoted VK_KHR_get_physical_device_properties2
- 'vkGetPhysicalDeviceFeatures2',
- 'vkGetPhysicalDeviceFeatures2KHR',
- 'vkGetPhysicalDeviceProperties2',
- 'vkGetPhysicalDeviceProperties2KHR',
- 'vkGetPhysicalDeviceFormatProperties2',
- 'vkGetPhysicalDeviceFormatProperties2KHR',
- 'vkGetPhysicalDeviceImageFormatProperties2',
- 'vkGetPhysicalDeviceImageFormatProperties2KHR',
- 'vkGetPhysicalDeviceQueueFamilyProperties2',
- 'vkGetPhysicalDeviceQueueFamilyProperties2KHR',
- 'vkGetPhysicalDeviceMemoryProperties2',
- 'vkGetPhysicalDeviceMemoryProperties2KHR',
- 'vkGetPhysicalDeviceSparseImageFormatProperties2',
- 'vkGetPhysicalDeviceSparseImageFormatProperties2KHR',
-
- # For promoted VK_KHR_external_memory_capabilities
- 'vkGetPhysicalDeviceExternalBufferProperties',
- 'vkGetPhysicalDeviceExternalBufferPropertiesKHR',
-
- # For promoted VK_KHR_external_semaphore_capabilities
- 'vkGetPhysicalDeviceExternalSemaphoreProperties',
- 'vkGetPhysicalDeviceExternalSemaphorePropertiesKHR',
-
- # For promoted VK_KHR_external_fence_capabilities
- 'vkGetPhysicalDeviceExternalFenceProperties',
- 'vkGetPhysicalDeviceExternalFencePropertiesKHR',
]
# Functions intercepted at vulkan::driver level.
@@ -139,24 +106,6 @@ _INTERCEPTED_COMMANDS = [
# VK_KHR_swapchain v69 requirement
'vkBindImageMemory2',
'vkBindImageMemory2KHR',
-
- # For promoted VK_KHR_get_physical_device_properties2
- 'vkGetPhysicalDeviceFeatures2',
- 'vkGetPhysicalDeviceProperties2',
- 'vkGetPhysicalDeviceFormatProperties2',
- 'vkGetPhysicalDeviceImageFormatProperties2',
- 'vkGetPhysicalDeviceQueueFamilyProperties2',
- 'vkGetPhysicalDeviceMemoryProperties2',
- 'vkGetPhysicalDeviceSparseImageFormatProperties2',
-
- # For promoted VK_KHR_external_memory_capabilities
- 'vkGetPhysicalDeviceExternalBufferProperties',
-
- # For promoted VK_KHR_external_semaphore_capabilities
- 'vkGetPhysicalDeviceExternalSemaphoreProperties',
-
- # For promoted VK_KHR_external_fence_capabilities
- 'vkGetPhysicalDeviceExternalFenceProperties',
]
@@ -213,8 +162,6 @@ def gen_h():
#include <vulkan/vulkan.h>
#include <bitset>
-#include <optional>
-#include <vector>
namespace vulkan {
namespace driver {
@@ -282,12 +229,6 @@ bool InitDriverTable(VkDevice dev,
PFN_vkGetDeviceProcAddr get_proc,
const std::bitset<ProcHook::EXTENSION_COUNT>& extensions);
-std::optional<uint32_t> GetInstanceExtensionPromotedVersion(const char* name);
-uint32_t CountPromotedInstanceExtensions(uint32_t begin_version,
- uint32_t end_version);
-std::vector<const char*> GetPromotedInstanceExtensions(uint32_t begin_version,
- uint32_t end_version);
-
} // namespace driver
} // namespace vulkan
@@ -523,9 +464,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;
@@ -597,54 +539,6 @@ bool InitDriverTable(VkDevice dev,
return success;
}
-const std::pair<const char*, uint32_t> g_promoted_instance_extensions[] = {
- // clang-format off\n""")
-
- for key, value in sorted(gencom.promoted_inst_ext_dict.items()):
- f.write(gencom.indent(1) + 'std::make_pair("' + key + '", ' + value + '),\n')
-
- f.write("""\
- // 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\n""")