radv/llvm: enable 8-bit storage features on GFX6-GFX7
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 29 Jan 2020 09:45:40 +0000 (10:45 +0100)
committerMarge Bot <eric+marge@anholt.net>
Fri, 3 Apr 2020 08:01:28 +0000 (08:01 +0000)
It's now supported and all CTS tests pass.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4339>

src/amd/vulkan/radv_device.c

index e95d6f1..7bbc8be 100644 (file)
@@ -1103,10 +1103,9 @@ void radv_GetPhysicalDeviceFeatures2(
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES: {
                        VkPhysicalDevice8BitStorageFeatures *features =
                            (VkPhysicalDevice8BitStorageFeatures *)ext;
-                       bool enabled = pdevice->rad_info.chip_class >= GFX8 && !pdevice->use_aco;
-                       features->storageBuffer8BitAccess = enabled;
-                       features->uniformAndStorageBuffer8BitAccess = enabled;
-                       features->storagePushConstant8 = enabled;
+                       features->storageBuffer8BitAccess = !pdevice->use_aco;
+                       features->uniformAndStorageBuffer8BitAccess = !pdevice->use_aco;
+                       features->storagePushConstant8 = !pdevice->use_aco;
                        break;
                }
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES: {
@@ -1240,9 +1239,9 @@ void radv_GetPhysicalDeviceFeatures2(
                                (VkPhysicalDeviceVulkan12Features *)ext;
                        features->samplerMirrorClampToEdge = true;
                        features->drawIndirectCount = true;
-                       features->storageBuffer8BitAccess = pdevice->rad_info.chip_class >= GFX8 && !pdevice->use_aco;
-                       features->uniformAndStorageBuffer8BitAccess = pdevice->rad_info.chip_class >= GFX8 && !pdevice->use_aco;
-                       features->storagePushConstant8 = pdevice->rad_info.chip_class >= GFX8 && !pdevice->use_aco;
+                       features->storageBuffer8BitAccess = !pdevice->use_aco;
+                       features->uniformAndStorageBuffer8BitAccess = !pdevice->use_aco;
+                       features->storagePushConstant8 = !pdevice->use_aco;
                        features->shaderBufferInt64Atomics = LLVM_VERSION_MAJOR >= 9;
                        features->shaderSharedInt64Atomics = LLVM_VERSION_MAJOR >= 9;
                        features->shaderFloat16 = pdevice->rad_info.chip_class >= GFX8 && !pdevice->use_aco;