diff options
author | Daniel Schürmann <[email protected]> | 2018-05-15 17:10:12 +0200 |
---|---|---|
committer | Bas Nieuwenhuizen <[email protected]> | 2018-07-23 23:16:26 +0200 |
commit | 62024fa775058013a5a75f576f1129239c95de11 (patch) | |
tree | 2048f24c9cba8026e291e2b48938739e5ed85c04 /src/amd/vulkan/radv_device.c | |
parent | 4d0b02bb5a455eabd2caf3386c6ed17f164efff8 (diff) |
radv: enable VK_KHR_16bit_storage extension / 16bit storage features
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_device.c')
-rw-r--r-- | src/amd/vulkan/radv_device.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index 7dc65083331..f6cd6dd1131 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -740,6 +740,7 @@ void radv_GetPhysicalDeviceFeatures2( VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2KHR *pFeatures) { + RADV_FROM_HANDLE(radv_physical_device, pdevice, physicalDevice); vk_foreach_struct(ext, pFeatures->pNext) { switch (ext->sType) { case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR: { @@ -770,10 +771,11 @@ void radv_GetPhysicalDeviceFeatures2( case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: { VkPhysicalDevice16BitStorageFeatures *features = (VkPhysicalDevice16BitStorageFeatures*)ext; - features->storageBuffer16BitAccess = false; - features->uniformAndStorageBuffer16BitAccess = false; - features->storagePushConstant16 = false; - features->storageInputOutput16 = false; + bool enabled = HAVE_LLVM >= 0x0700 && pdevice->rad_info.chip_class >= VI; + features->storageBuffer16BitAccess = enabled; + features->uniformAndStorageBuffer16BitAccess = enabled; + features->storagePushConstant16 = enabled; + features->storageInputOutput16 = enabled; break; } case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: { |