Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16203>
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT: {
VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT *features =
(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT *)ext;
- bool has_shader_buffer_float_minmax = ((pdevice->rad_info.chip_class == GFX6 ||
- pdevice->rad_info.chip_class == GFX7) &&
- !pdevice->use_llvm) ||
- pdevice->rad_info.chip_class >= GFX10;
+ bool has_shader_buffer_float_minmax = radv_has_shader_buffer_float_minmax(pdevice);
bool has_shader_image_float_minmax = pdevice->rad_info.chip_class != GFX8 &&
pdevice->rad_info.chip_class != GFX9;
features->shaderBufferFloat16Atomics = false;
return device->physical_device->use_llvm;
}
+static inline bool
+radv_has_shader_buffer_float_minmax(const struct radv_physical_device *pdevice)
+{
+ return (pdevice->rad_info.chip_class <= GFX7 && !pdevice->use_llvm) ||
+ pdevice->rad_info.chip_class >= GFX10;
+}
+
struct radv_acceleration_structure {
struct vk_object_base base;