nvk: Advertise VK_KHR_shader_atomic_int64
Everything should be mostly wired up. Shared atomics don't seem to work, though, for some reason. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9603 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246>
This commit is contained in:
parent
c05ad7904f
commit
9b60a1c00e
3 changed files with 8 additions and 2 deletions
|
|
@ -458,7 +458,7 @@ Vulkan 1.2 -- all DONE: anv, tu, vn
|
|||
VK_KHR_imageless_framebuffer DONE (anv, dzn, hasvk, lvp, nvk, radv, tu, v3dv, vn)
|
||||
VK_KHR_sampler_mirror_clamp_to_edge DONE (anv, dzn, hasvk, lvp, nvk, radv, tu, v3dv, vn)
|
||||
VK_KHR_separate_depth_stencil_layouts DONE (anv, dzn, hasvk, lvp, nvk, radv, tu, v3dv, vn)
|
||||
VK_KHR_shader_atomic_int64 DONE (anv/gen9+, lvp, radv, vn)
|
||||
VK_KHR_shader_atomic_int64 DONE (anv/gen9+, lvp, nvk, radv, vn)
|
||||
VK_KHR_shader_float16_int8 DONE (anv/gen8+, dzn, hasvk, lvp, radv, tu, vn)
|
||||
VK_KHR_shader_float_controls DONE (anv/gen8+, dzn, hasvk, lvp, radv, tu, v3dv, vn)
|
||||
VK_KHR_shader_subgroup_extended_types DONE (anv/gen8+, hasvk, lvp, radv, tu, vn)
|
||||
|
|
|
|||
|
|
@ -112,6 +112,8 @@ nvk_get_device_extensions(const struct nv_device_info *info,
|
|||
.KHR_sampler_mirror_clamp_to_edge = true,
|
||||
.KHR_sampler_ycbcr_conversion = true,
|
||||
.KHR_separate_depth_stencil_layouts = true,
|
||||
.KHR_shader_atomic_int64 = info->cls_eng3d >= MAXWELL_A &&
|
||||
nvk_use_nak(info),
|
||||
.KHR_shader_clock = true,
|
||||
.KHR_shader_draw_parameters = true,
|
||||
.KHR_shader_float16_int8 = true,
|
||||
|
|
@ -251,12 +253,15 @@ nvk_get_device_features(const struct nv_device_info *info,
|
|||
|
||||
/* Vulkan 1.2 */
|
||||
.samplerMirrorClampToEdge = true,
|
||||
.descriptorIndexing = true,
|
||||
.drawIndirectCount = info->cls_eng3d >= TURING_A,
|
||||
.storageBuffer8BitAccess = true,
|
||||
.uniformAndStorageBuffer8BitAccess = true,
|
||||
.storagePushConstant8 = true,
|
||||
.shaderBufferInt64Atomics = info->cls_eng3d >= MAXWELL_A &&
|
||||
nvk_use_nak(info),
|
||||
.shaderSharedInt64Atomics = false, /* TODO */
|
||||
.shaderInt8 = true,
|
||||
.descriptorIndexing = true,
|
||||
.shaderInputAttachmentArrayDynamicIndexing = true,
|
||||
.shaderUniformTexelBufferArrayDynamicIndexing = true,
|
||||
.shaderStorageTexelBufferArrayDynamicIndexing = true,
|
||||
|
|
|
|||
|
|
@ -147,6 +147,7 @@ nvk_physical_device_spirv_options(const struct nvk_physical_device *pdev,
|
|||
.int8 = true,
|
||||
.int16 = true,
|
||||
.int64 = true,
|
||||
.int64_atomics = true,
|
||||
.min_lod = true,
|
||||
.multiview = true,
|
||||
.physical_storage_buffer_address = true,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue