nvk: Advertise VK_KHR_shader_subgroup_uniform_control_flow

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28300>
This commit is contained in:
Faith Ekstrand 2024-03-18 18:50:06 -05:00 committed by Marge Bot
parent 79abb2aaff
commit 44cfc57062
4 changed files with 7 additions and 1 deletions

View file

@ -539,7 +539,7 @@ Khronos extensions that are not part of any Vulkan version:
VK_KHR_shader_expect_assume DONE (anv, dzn, hasvk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn)
VK_KHR_shader_maximal_reconvergence DONE (lvp, radv)
VK_KHR_shader_subgroup_rotate DONE (anv, radv)
VK_KHR_shader_subgroup_uniform_control_flow DONE (anv, hasvk, radv)
VK_KHR_shader_subgroup_uniform_control_flow DONE (anv, hasvk, nvk, radv)
VK_KHR_shader_quad_control DONE (radv)
VK_KHR_shared_presentable_image not started
VK_KHR_surface DONE (anv, dzn, hasvk, lvp, nvk, panvk, pvr, radv, tu, v3dv, vn)

View file

@ -10,3 +10,4 @@ OpenGL 4.6 on Asahi
OpenGL ES 3.2 on Asahi
Mali G610 and G310 on Panfrost
Mali T600 on Panfrost
VK_KHR_shader_subgroup_uniform_control_flow on NVK

View file

@ -149,6 +149,7 @@ nvk_get_device_extensions(const struct nvk_instance *instance,
.KHR_shader_maximal_reconvergence = true,
.KHR_shader_non_semantic_info = true,
.KHR_shader_subgroup_extended_types = true,
.KHR_shader_subgroup_uniform_control_flow = nvk_use_nak(info),
.KHR_shader_terminate_invocation =
(nvk_nak_stages(info) & VK_SHADER_STAGE_FRAGMENT_BIT) != 0,
.KHR_spirv_1_4 = true,
@ -569,6 +570,9 @@ nvk_get_device_features(const struct nv_device_info *info,
/* VK_EXT_shader_object */
.shaderObject = true,
/* VK_KHR_shader_subgroup_uniform_control_flow */
.shaderSubgroupUniformControlFlow = nvk_use_nak(info),
/* VK_EXT_texel_buffer_alignment */
.texelBufferAlignment = true,

View file

@ -156,6 +156,7 @@ nvk_get_spirv_options(struct vk_physical_device *vk_pdev,
.subgroup_basic = true,
.subgroup_quad = true,
.subgroup_shuffle = true,
.subgroup_uniform_control_flow = true,
.subgroup_vote = true,
.tessellation = true,
.transform_feedback = true,