From b8d9f860a02daa253213b216488941807e8ea79a Mon Sep 17 00:00:00 2001 From: Emma Anholt Date: Tue, 3 Jan 2023 14:33:44 -0800 Subject: [PATCH] zink: Only expose PIPE_CAP_SHADER_ATOMIC_INT64 if we can do shared and ssbos. Fixes: 3ac0706aa83b ("zink: export PIPE_CAP_SHADER_ATOMIC_INT64") Part-of: --- src/gallium/drivers/zink/ci/zink-anv-tgl-fails.txt | 14 -------------- src/gallium/drivers/zink/zink_screen.c | 4 +++- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/src/gallium/drivers/zink/ci/zink-anv-tgl-fails.txt b/src/gallium/drivers/zink/ci/zink-anv-tgl-fails.txt index 76901167290..2414a7ba682 100644 --- a/src/gallium/drivers/zink/ci/zink-anv-tgl-fails.txt +++ b/src/gallium/drivers/zink/ci/zink-anv-tgl-fails.txt @@ -894,17 +894,3 @@ spec@khr_texture_compression_astc@sliced-3d-miptree-gl srgb-fp,Fail spec@khr_texture_compression_astc@sliced-3d-miptree-gl srgb-fp@sRGB decode full precision,Fail spec@khr_texture_compression_astc@sliced-3d-miptree-gles srgb-fp,Fail spec@khr_texture_compression_astc@sliced-3d-miptree-gles srgb-fp@sRGB decode full precision,Fail - -# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20506 -spec@nv_shader_atomic_int64@execution@shared-atomicadd-int,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicand-int,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicand-uint,Fail -spec@nv_shader_atomic_int64@execution@shared-atomiccompswap-int,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicexchange-int,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicmax-int,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicmax-uint,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicmin-int,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicor-int,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicor-uint,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicxor-int,Fail -spec@nv_shader_atomic_int64@execution@shared-atomicxor-uint,Fail diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c index 48489a1fbff..d515ee8f470 100644 --- a/src/gallium/drivers/zink/zink_screen.c +++ b/src/gallium/drivers/zink/zink_screen.c @@ -599,7 +599,9 @@ zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param) screen->info.atomic_float_feats.shaderSharedFloat32AtomicAdd && screen->info.atomic_float_feats.shaderBufferFloat32AtomicAdd); case PIPE_CAP_SHADER_ATOMIC_INT64: - return screen->info.have_KHR_shader_atomic_int64; + return (screen->info.have_KHR_shader_atomic_int64 && + screen->info.atomic_int_feats.shaderSharedInt64Atomics && + screen->info.atomic_int_feats.shaderBufferInt64Atomics); case PIPE_CAP_MULTI_DRAW_INDIRECT_PARAMS: return screen->info.have_KHR_draw_indirect_count;