From 25707b57bcd8b67cde4f82f154c9dad2f25a7512 Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Wed, 4 Dec 2024 13:20:29 -0500 Subject: [PATCH] lvp: set subgroupQuadOperationsInAllStages to true This enables them for task and mesh shaders, which for lvp are just fancy compute shaders, and it's not like gallivm has any real awareness of the stage it's emitting code for anyway. Reviewed-by: Konstantin Seurer Part-of: --- src/gallium/frontends/lavapipe/lvp_device.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/frontends/lavapipe/lvp_device.c b/src/gallium/frontends/lavapipe/lvp_device.c index 2f1c28a3856..ed2f796c804 100644 --- a/src/gallium/frontends/lavapipe/lvp_device.c +++ b/src/gallium/frontends/lavapipe/lvp_device.c @@ -927,7 +927,7 @@ lvp_get_properties(const struct lvp_physical_device *device, struct vk_propertie .subgroupSize = lp_native_vector_width / 32, .subgroupSupportedStages = VK_SHADER_STAGE_FRAGMENT_BIT | VK_SHADER_STAGE_COMPUTE_BIT | VK_SHADER_STAGE_TASK_BIT_EXT | VK_SHADER_STAGE_MESH_BIT_EXT, .subgroupSupportedOperations = VK_SUBGROUP_FEATURE_BASIC_BIT | VK_SUBGROUP_FEATURE_VOTE_BIT | VK_SUBGROUP_FEATURE_ARITHMETIC_BIT | VK_SUBGROUP_FEATURE_BALLOT_BIT, - .subgroupQuadOperationsInAllStages = false, + .subgroupQuadOperationsInAllStages = true, .pointClippingBehavior = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES, .maxMultiviewViewCount = 6,