aboutsummaryrefslogtreecommitdiffstats
path: root/src/compiler
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2019-05-28 14:40:35 -0500
committerMarge Bot <[email protected]>2020-05-22 18:41:15 +0000
commitf0e075ce6eca7bdb26d8e55cf7d4dd459199363f (patch)
treeee114aa299a5d17e3b7a10411b8e04b92e2d17d6 /src/compiler
parentdb6d9cdf0661fbe25b1bc767920a5f6a0944935b (diff)
nir/copy_prop_vars: Record progress in more places
Fixes: 96c32d7776 "nir/copy_prop_vars: handle load/store of vector..." Reviewed-by: Dave Airlie <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5170>
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/nir/nir_opt_copy_prop_vars.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/compiler/nir/nir_opt_copy_prop_vars.c b/src/compiler/nir/nir_opt_copy_prop_vars.c
index 77bf2c94dde..d471c89fbb6 100644
--- a/src/compiler/nir/nir_opt_copy_prop_vars.c
+++ b/src/compiler/nir/nir_opt_copy_prop_vars.c
@@ -868,6 +868,7 @@ copy_prop_vars_block(struct copy_prop_var_state *state,
b->cursor = nir_instr_remove(instr);
nir_ssa_def *u = nir_ssa_undef(b, 1, intrin->dest.ssa.bit_size);
nir_ssa_def_rewrite_uses(&intrin->dest.ssa, nir_src_for_ssa(u));
+ state->progress = true;
break;
}
}
@@ -948,6 +949,7 @@ copy_prop_vars_block(struct copy_prop_var_state *state,
/* Storing to an invalid index is a no-op. */
if (vec_index >= vec_comps) {
nir_instr_remove(instr);
+ state->progress = true;
break;
}
}
@@ -965,6 +967,7 @@ copy_prop_vars_block(struct copy_prop_var_state *state,
* store is redundant so remove it.
*/
nir_instr_remove(instr);
+ state->progress = true;
} else {
struct value value = {0};
value_set_ssa_components(&value, intrin->src[1].ssa,