Commit 920bd2c0 authored by Jason Ekstrand's avatar Jason Ekstrand

anv: Add a per-instance table of enabled extensions

Nothing needs this yet but we will want it later.
Reviewed-by: Samuel Iglesias Gonsálvez's avatarSamuel Iglesias Gonsálvez <siglesias@igalia.com>
parent ff5f3e2b
......@@ -539,6 +539,7 @@ VkResult anv_CreateInstance(
VK_VERSION_PATCH(client_version));
}
struct anv_instance_extension_table enabled_extensions = {};
for (uint32_t i = 0; i < pCreateInfo->enabledExtensionCount; i++) {
int idx;
for (idx = 0; idx < ANV_INSTANCE_EXTENSION_COUNT; idx++) {
......@@ -552,6 +553,8 @@ VkResult anv_CreateInstance(
if (!anv_instance_extensions_supported.extensions[idx])
return vk_error(VK_ERROR_EXTENSION_NOT_PRESENT);
enabled_extensions.extensions[idx] = true;
}
instance = vk_alloc2(&default_alloc, pAllocator, sizeof(*instance), 8,
......@@ -567,6 +570,7 @@ VkResult anv_CreateInstance(
instance->alloc = default_alloc;
instance->apiVersion = client_version;
instance->enabled_extensions = enabled_extensions;
instance->physicalDeviceCount = -1;
result = vk_debug_report_instance_init(&instance->debug_report_callbacks);
......
......@@ -794,6 +794,8 @@ struct anv_instance {
VkAllocationCallbacks alloc;
uint32_t apiVersion;
struct anv_instance_extension_table enabled_extensions;
int physicalDeviceCount;
struct anv_physical_device physicalDevice;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment