Mesa (master): radv: use nir_opt_copy_prop_vars and nir_opt_dead_write_vars
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Oct 18 04:12:14 UTC 2018
Module: Mesa
Branch: master
Commit: 9d5b106b2efbd5a4bbbe54a5a00c8cebd642d960
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9d5b106b2efbd5a4bbbe54a5a00c8cebd642d960
Author: Timothy Arceri <tarceri at itsqueeze.com>
Date: Thu Oct 18 08:55:46 2018 +1100
radv: use nir_opt_copy_prop_vars and nir_opt_dead_write_vars
Totals from affected shaders:
SGPRS: 2856 -> 2856 (0.00 %)
VGPRS: 3236 -> 3248 (0.37 %)
Spilled SGPRs: 0 -> 0 (0.00 %)
Spilled VGPRs: 0 -> 0 (0.00 %)
Private memory VGPRs: 0 -> 0 (0.00 %)
Scratch size: 0 -> 0 (0.00 %) dwords per thread
Code Size: 236560 -> 233548 (-1.27 %) bytes
LDS: 0 -> 0 (0.00 %) blocks
Max Waves: 277 -> 283 (2.17 %)
Wait states: 0 -> 0 (0.00 %)
Even in the cases were we have increased VGPR use it appears
the NIR is improved significantly.
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
---
src/amd/vulkan/radv_shader.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index 3e3eb96a53..3b3422c8da 100644
--- a/src/amd/vulkan/radv_shader.c
+++ b/src/amd/vulkan/radv_shader.c
@@ -127,6 +127,10 @@ radv_optimize_nir(struct nir_shader *shader, bool optimize_conservatively)
NIR_PASS_V(shader, nir_lower_vars_to_ssa);
NIR_PASS_V(shader, nir_lower_pack);
+
+ NIR_PASS(progress, shader, nir_opt_copy_prop_vars);
+ NIR_PASS(progress, shader, nir_opt_dead_write_vars);
+
NIR_PASS_V(shader, nir_lower_alu_to_scalar);
NIR_PASS_V(shader, nir_lower_phis_to_scalar);
More information about the mesa-commit
mailing list