From 724371c6b990d3a66ecebbe4bd1802c53e89ed46 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Fri, 22 Feb 2019 22:10:55 -0600 Subject: [PATCH] nir/split_vars: Don't compact vectors unnecessarily MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Alejandro PiƱeiro --- src/compiler/nir/nir_split_vars.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/compiler/nir/nir_split_vars.c b/src/compiler/nir/nir_split_vars.c index 244ffd6dcf0..96b6042e6d9 100644 --- a/src/compiler/nir/nir_split_vars.c +++ b/src/compiler/nir/nir_split_vars.c @@ -1423,6 +1423,12 @@ shrink_vec_var_access_impl(nir_function_impl *impl, continue; } + /* If we're not dropping any components, there's no need to + * compact vectors. + */ + if (usage->comps_kept == usage->all_comps) + continue; + if (intrin->intrinsic == nir_intrinsic_load_deref) { b.cursor = nir_after_instr(&intrin->instr);