Mesa (master): radv: Only expose subgroup shuffles on VI+.

Bas Nieuwenhuizen bnieuwenhuizen at kemper.freedesktop.org
Wed May 30 11:50:48 UTC 2018


Module: Mesa
Branch: master
Commit: c2799574eb104218ac4f6b8a3d64b8a0f8c89525
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c2799574eb104218ac4f6b8a3d64b8a0f8c89525

Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Wed May 30 08:50:03 2018 +0200

radv: Only expose subgroup shuffles on VI+.

The current implementation depends on bpermute, which
is VI+.

Fixes: f2c6a550611 "radv: enable subgroup capabilities"
Reviewed-by: Daniel Schürmann <daniel.schuermann at campus.tu-berlin.de>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>

---

 src/amd/vulkan/radv_device.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 61b4fba23f..93b6e61106 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -963,9 +963,12 @@ void radv_GetPhysicalDeviceProperties2(
 							VK_SUBGROUP_FEATURE_BASIC_BIT |
 							VK_SUBGROUP_FEATURE_BALLOT_BIT |
 							VK_SUBGROUP_FEATURE_QUAD_BIT |
-							VK_SUBGROUP_FEATURE_SHUFFLE_BIT |
-							VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT |
 							VK_SUBGROUP_FEATURE_VOTE_BIT;
+			if (pdevice->rad_info.chip_class >= VI) {
+				properties->supportedOperations |=
+							VK_SUBGROUP_FEATURE_SHUFFLE_BIT |
+							VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT;
+			}
 			properties->quadOperationsInAllStages = true;
 			break;
 		}




More information about the mesa-commit mailing list