summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2018-07-25 08:54:09 -0700
committerJason Ekstrand <[email protected]>2018-08-23 21:46:56 -0500
commita4a9c075496c64ac333e6c0b930d8c2eb5175e8e (patch)
treecb0e1146d3a323a57139080ce2b80c41461c596d /src
parentbe8d009908ed32e3d15a9192b67a2020b99496a8 (diff)
intel/nir: Use nir_shrink_vec_array_vars
Shader-db results on Kaby Lake: total instructions in shared programs: 15177605 -> 15176765 (<.01%) instructions in affected programs: 4259 -> 3419 (-19.72%) helped: 1 HURT: 0 total spills in shared programs: 10954 -> 10855 (-0.90%) spills in affected programs: 295 -> 196 (-33.56%) helped: 1 HURT: 0 total fills in shared programs: 22222 -> 22117 (-0.47%) fills in affected programs: 417 -> 312 (-25.18%) helped: 1 HURT: 0 The helped shader is from the OglCSDof synmark test. On my Kaby Lake laptop, the actual framerate of the benchmark didn't appear to improve beyond the noise. Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/intel/compiler/brw_nir.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/intel/compiler/brw_nir.c b/src/intel/compiler/brw_nir.c
index cb5f18eb69b..c9a92c8aeb6 100644
--- a/src/intel/compiler/brw_nir.c
+++ b/src/intel/compiler/brw_nir.c
@@ -542,6 +542,7 @@ brw_nir_optimize(nir_shader *nir, const struct brw_compiler *compiler,
do {
progress = false;
OPT(nir_split_array_vars, nir_var_local);
+ OPT(nir_shrink_vec_array_vars, nir_var_local);
OPT(nir_lower_vars_to_ssa);
OPT(nir_opt_copy_prop_vars);