radv: enable VK_SUBGROUP_FEATURE_ARITHMETIC_BIT
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Tue, 18 Sep 2018 13:27:52 +0000 (15:27 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 19 Sep 2018 11:36:10 +0000 (13:36 +0200)
All CTS pass on Polaris/Vega with LLVM 6, 7 and master, so
I think it's safe to enable the feature.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_device.c
src/amd/vulkan/radv_shader.c

index f9169d9..7e46a57 100644 (file)
@@ -1061,6 +1061,7 @@ void radv_GetPhysicalDeviceProperties2(
                        properties->subgroupSize = 64;
                        properties->supportedStages = VK_SHADER_STAGE_ALL;
                        properties->supportedOperations =
+                                                       VK_SUBGROUP_FEATURE_ARITHMETIC_BIT |
                                                        VK_SUBGROUP_FEATURE_BASIC_BIT |
                                                        VK_SUBGROUP_FEATURE_BALLOT_BIT |
                                                        VK_SUBGROUP_FEATURE_QUAD_BIT |
index c59b783..9c038a5 100644 (file)
@@ -212,6 +212,7 @@ radv_shader_compile_to_nir(struct radv_device *device,
                                .int64 = true,
                                .int16 = true,
                                .multiview = true,
+                               .subgroup_arithmetic = true,
                                .subgroup_ballot = true,
                                .subgroup_basic = true,
                                .subgroup_quad = true,