diff --git a/src/freedreno/ir3/ir3_shader.c b/src/freedreno/ir3/ir3_shader.c index a4bfd88dced..5f9d6799522 100644 --- a/src/freedreno/ir3/ir3_shader.c +++ b/src/freedreno/ir3/ir3_shader.c @@ -176,10 +176,13 @@ void * ir3_shader_assemble(struct ir3_shader_variant *v) if (compiler->gpu_id >= 400) v->constlen = align(v->constlen, 4); - /* Use the per-wave layout by default on a6xx. It should result in better - * performance when loads/stores are to a uniform index. + /* Use the per-wave layout by default on a6xx for compute shaders. It + * should result in better performance when loads/stores are to a uniform + * index. */ - v->pvtmem_per_wave = compiler->gpu_id >= 600 && !info->multi_dword_ldp_stp; + v->pvtmem_per_wave = + compiler->gpu_id >= 600 && !info->multi_dword_ldp_stp && + v->type == MESA_SHADER_COMPUTE; fixup_regfootprint(v);