radv: Delete unused local variables in optimization loop
authorConnor Abbott <cwabbott0@gmail.com>
Wed, 26 Jun 2019 12:03:31 +0000 (14:03 +0200)
committerConnor Abbott <cwabbott0@gmail.com>
Mon, 29 Jul 2019 09:37:46 +0000 (11:37 +0200)
Totals from affected shaders:
SGPRS: 376 -> 376 (0.00 %)
VGPRS: 620 -> 560 (-9.68 %)
Spilled SGPRs: 0 -> 0 (0.00 %)
Spilled VGPRs: 0 -> 0 (0.00 %)
Private memory VGPRs: 0 -> 0 (0.00 %)
Scratch size: 292 -> 292 (0.00 %) dwords per thread
Code Size: 20024 -> 20144 (0.60 %) bytes
LDS: 0 -> 0 (0.00 %) blocks
Max Waves: 25 -> 25 (0.00 %)
Wait states: 0 -> 0 (0.00 %)

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_shader.c

index 56f421026b75c8286568bbd3bb32d10a680e0304..0c3e375ee5e0fb1f9aaa1f26319538eca89b28cb 100644 (file)
@@ -153,6 +153,8 @@ radv_optimize_nir(struct nir_shader *shader, bool optimize_conservatively,
 
                NIR_PASS(progress, shader, nir_opt_copy_prop_vars);
                NIR_PASS(progress, shader, nir_opt_dead_write_vars);
+               NIR_PASS(progress, shader, nir_remove_dead_variables,
+                        nir_var_function_temp);
 
                 NIR_PASS_V(shader, nir_lower_alu_to_scalar, NULL);
                 NIR_PASS_V(shader, nir_lower_phis_to_scalar);