mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-06 20:50:31 +01:00
nir/copy_prop_vars: Record progress in more places
Fixes: 96c32d7776 "nir/copy_prop_vars: handle load/store of vector..."
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5170>
This commit is contained in:
parent
db6d9cdf06
commit
f0e075ce6e
1 changed files with 3 additions and 0 deletions
|
|
@ -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,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue