diff options
author | Rob Clark <[email protected]> | 2016-09-08 14:07:06 -0400 |
---|---|---|
committer | Rob Clark <[email protected]> | 2016-09-14 13:45:32 -0400 |
commit | 1a8424cebaeaf46a01000624a46764f3e84dad85 (patch) | |
tree | fe7d57ce69ee32fd14163128db63e524409ef9c1 /src/compiler/nir/nir_lower_tex.c | |
parent | 2c3f9662762f6e45b47ea5d3047f5596b555f29c (diff) |
nir: move tex_instr_remove_src
I want to re-use this in a different pass, so move to nir.h
Signed-off-by: Rob Clark <[email protected]>
Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/compiler/nir/nir_lower_tex.c')
-rw-r--r-- | src/compiler/nir/nir_lower_tex.c | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/src/compiler/nir/nir_lower_tex.c b/src/compiler/nir/nir_lower_tex.c index b5705985f82..a40575806cb 100644 --- a/src/compiler/nir/nir_lower_tex.c +++ b/src/compiler/nir/nir_lower_tex.c @@ -39,22 +39,6 @@ #include "nir_builder.h" static void -tex_instr_remove_src(nir_tex_instr *tex, unsigned src_idx) -{ - assert(src_idx < tex->num_srcs); - - /* First rewrite the source to NIR_SRC_INIT */ - nir_instr_rewrite_src(&tex->instr, &tex->src[src_idx].src, NIR_SRC_INIT); - - /* Now, move all of the other sources down */ - for (unsigned i = src_idx + 1; i < tex->num_srcs; i++) { - tex->src[i-1].src_type = tex->src[i].src_type; - nir_instr_move_src(&tex->instr, &tex->src[i-1].src, &tex->src[i].src); - } - tex->num_srcs--; -} - -static void project_src(nir_builder *b, nir_tex_instr *tex) { /* Find the projector in the srcs list, if present. */ @@ -114,7 +98,7 @@ project_src(nir_builder *b, nir_tex_instr *tex) nir_src_for_ssa(projected)); } - tex_instr_remove_src(tex, proj_index); + nir_tex_instr_remove_src(tex, proj_index); } static bool @@ -159,7 +143,7 @@ lower_offset(nir_builder *b, nir_tex_instr *tex) nir_instr_rewrite_src(&tex->instr, &tex->src[coord_index].src, nir_src_for_ssa(offset_coord)); - tex_instr_remove_src(tex, offset_index); + nir_tex_instr_remove_src(tex, offset_index); return true; } |