nir: Handle memcpy in copy_prop_vars and combine_stores
Fixes: b2899f7265
"nir: Add a new memcpy intrinsic"
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6871>
This commit is contained in:

committed by
Marge Bot

parent
100a5ace63
commit
e363da3bdd
@@ -356,7 +356,8 @@ combine_stores_block(struct combine_stores_state *state, nir_block *block)
|
||||
break;
|
||||
}
|
||||
|
||||
case nir_intrinsic_copy_deref: {
|
||||
case nir_intrinsic_copy_deref:
|
||||
case nir_intrinsic_memcpy_deref: {
|
||||
nir_deref_instr *dst = nir_src_as_deref(intrin->src[0]);
|
||||
nir_deref_instr *src = nir_src_as_deref(intrin->src[1]);
|
||||
combine_stores_with_deref(state, dst);
|
||||
|
@@ -195,7 +195,8 @@ gather_vars_written(struct copy_prop_var_state *state,
|
||||
case nir_intrinsic_deref_atomic_exchange:
|
||||
case nir_intrinsic_deref_atomic_comp_swap:
|
||||
case nir_intrinsic_store_deref:
|
||||
case nir_intrinsic_copy_deref: {
|
||||
case nir_intrinsic_copy_deref:
|
||||
case nir_intrinsic_memcpy_deref: {
|
||||
/* Destination in all of store_deref, copy_deref and the atomics is src[0]. */
|
||||
nir_deref_instr *dst = nir_src_as_deref(intrin->src[0]);
|
||||
|
||||
@@ -1056,6 +1057,7 @@ copy_prop_vars_block(struct copy_prop_var_state *state,
|
||||
break;
|
||||
}
|
||||
|
||||
case nir_intrinsic_memcpy_deref:
|
||||
case nir_intrinsic_deref_atomic_add:
|
||||
case nir_intrinsic_deref_atomic_imin:
|
||||
case nir_intrinsic_deref_atomic_umin:
|
||||
|
Reference in New Issue
Block a user