From ba8d3c362bf01640df9579ba65b32c1582d1ceea Mon Sep 17 00:00:00 2001 From: Bas Nieuwenhuizen Date: Sun, 4 Aug 2019 01:29:53 +0200 Subject: [PATCH] radv: Properly use Wave64 for non-NGG GS and copy shader. Fixes: 8a86908e9a7 "radv/gfx10: add Wave32 support for vertex, tessellation and geometry shaders" Reviewed-by: Dave Airlie --- src/amd/vulkan/radv_shader.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c index ed62bf8..c74bfa2 100644 --- a/src/amd/vulkan/radv_shader.c +++ b/src/amd/vulkan/radv_shader.c @@ -1127,7 +1127,10 @@ shader_variant_compile(struct radv_device *device, options->tess_offchip_block_dw_size = device->tess_offchip_block_dw_size; options->address32_hi = device->physical_device->rad_info.address32_hi; - if (stage == MESA_SHADER_COMPUTE) + if ((stage == MESA_SHADER_GEOMETRY && !options->key.vs_common_out.as_ngg) || + gs_copy_shader) + options->wave_size = 64; + else if (stage == MESA_SHADER_COMPUTE) options->wave_size = device->physical_device->cs_wave_size; else if (stage == MESA_SHADER_FRAGMENT) options->wave_size = device->physical_device->ps_wave_size; -- 2.7.4