From: Bas Nieuwenhuizen Date: Sat, 3 Aug 2019 23:29:53 +0000 (+0200) Subject: radv: Properly use Wave64 for non-NGG GS and copy shader. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ba8d3c362bf01640df9579ba65b32c1582d1ceea;p=mesa.git 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 --- diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c index ed62bf80543..c74bfa2e281 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;