anv: only advertise 64b atomic floats if 64b floats are supported

Cc: 22.0 <mesa-stable>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15039>
(cherry picked from commit 11544435ad)
This commit is contained in:
Iván Briano 2022-02-15 14:30:14 -08:00 committed by Dylan Baker
parent 2a03c296fd
commit fa4d9f5934
2 changed files with 5 additions and 3 deletions

View file

@ -2083,7 +2083,7 @@
"description": "anv: only advertise 64b atomic floats if 64b floats are supported",
"nominated": true,
"nomination_type": 0,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null
},

View file

@ -1652,7 +1652,8 @@ void anv_GetPhysicalDeviceFeatures2(
VkPhysicalDeviceShaderAtomicFloatFeaturesEXT *features = (void *)ext;
features->shaderBufferFloat32Atomics = true;
features->shaderBufferFloat32AtomicAdd = pdevice->info.has_lsc;
features->shaderBufferFloat64Atomics = pdevice->info.has_lsc;
features->shaderBufferFloat64Atomics =
pdevice->info.has_64bit_float && pdevice->info.has_lsc;
features->shaderBufferFloat64AtomicAdd = false;
features->shaderSharedFloat32Atomics = true;
features->shaderSharedFloat32AtomicAdd = false;
@ -1671,7 +1672,8 @@ void anv_GetPhysicalDeviceFeatures2(
features->shaderBufferFloat16AtomicAdd = false;
features->shaderBufferFloat16AtomicMinMax = false;
features->shaderBufferFloat32AtomicMinMax = pdevice->info.ver >= 9;
features->shaderBufferFloat64AtomicMinMax = pdevice->info.has_lsc;
features->shaderBufferFloat64AtomicMinMax =
pdevice->info.has_64bit_float && pdevice->info.has_lsc;
features->shaderSharedFloat16Atomics = false;
features->shaderSharedFloat16AtomicAdd = false;
features->shaderSharedFloat16AtomicMinMax = false;