zink: VK_KHR_draw_indirect_count is a device extension

this fixes some testcases on CI.

Fixes: 1c01ad1b80 ("zink: add KHR_draw_indirect_count detection")
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8991>
This commit is contained in:
Hoe Hao Cheng
2021-02-12 00:35:15 +08:00
committed by Marge Bot
parent 335c8b68d2
commit 04df0cb4ae
4 changed files with 173 additions and 1687 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -68,6 +68,7 @@ EXTENSIONS = [
Extension("VK_KHR_driver_properties",
alias="driver",
properties=True),
Extension("VK_KHR_draw_indirect_count"),
Extension("VK_EXT_conditional_rendering",
alias="cond_render",
features=True,

View File

@@ -44,8 +44,6 @@ EXTENSIONS = [
Extension("VK_EXT_debug_utils"),
Extension("VK_KHR_get_physical_device_properties2",
functions=["GetPhysicalDeviceFeatures2", "GetPhysicalDeviceProperties2"]),
Extension("VK_KHR_draw_indirect_count",
functions=["CmdDrawIndexedIndirectCount", "CmdDrawIndirectCount"]),
Extension("VK_KHR_external_memory_capabilities"),
Extension("VK_MVK_moltenvk"),
]

View File

@@ -189,7 +189,7 @@ zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
return screen->info.feats.features.multiDrawIndirect;
case PIPE_CAP_MULTI_DRAW_INDIRECT_PARAMS:
return screen->instance_info.have_KHR_draw_indirect_count;
return screen->info.have_KHR_draw_indirect_count;
case PIPE_CAP_START_INSTANCE:
return screen->info.feats11.shaderDrawParameters;
@@ -946,6 +946,11 @@ load_device_extensions(struct zink_screen *screen)
GET_PROC_ADDR(CmdEndConditionalRenderingEXT);
}
if (screen->info.have_KHR_draw_indirect_count) {
GET_PROC_ADDR(CmdDrawIndexedIndirectCount);
GET_PROC_ADDR(CmdDrawIndirectCount);
}
if (screen->info.have_EXT_calibrated_timestamps) {
GET_PROC_ADDR_INSTANCE(GetPhysicalDeviceCalibrateableTimeDomainsEXT);
GET_PROC_ADDR(GetCalibratedTimestampsEXT);