nir: Simplify nir_alu_instr_channel_used definition

Deduplicates the "get # of channels" logic which was the same between the
helpers.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26084>
This commit is contained in:
Alyssa Rosenzweig
2023-11-06 16:50:11 -04:00
parent 667de678a0
commit 6d73f62e42
2 changed files with 8 additions and 14 deletions

View File

@@ -2848,16 +2848,6 @@ nir_op_is_vec(nir_op op)
}
}
bool
nir_alu_instr_channel_used(const nir_alu_instr *instr, unsigned src,
unsigned channel)
{
if (nir_op_infos[instr->op].input_sizes[src] > 0)
return channel < nir_op_infos[instr->op].input_sizes[src];
return channel < instr->def.num_components;
}
nir_component_mask_t
nir_alu_instr_src_read_mask(const nir_alu_instr *instr, unsigned src)
{

View File

@@ -1575,10 +1575,6 @@ typedef struct nir_alu_instr {
void nir_alu_src_copy(nir_alu_src *dest, const nir_alu_src *src);
/* is this source channel used? */
bool
nir_alu_instr_channel_used(const nir_alu_instr *instr, unsigned src,
unsigned channel);
nir_component_mask_t
nir_alu_instr_src_read_mask(const nir_alu_instr *instr, unsigned src);
/**
@@ -1587,6 +1583,14 @@ nir_alu_instr_src_read_mask(const nir_alu_instr *instr, unsigned src);
unsigned
nir_ssa_alu_instr_src_components(const nir_alu_instr *instr, unsigned src);
/* is this source channel used? */
static inline bool
nir_alu_instr_channel_used(const nir_alu_instr *instr, unsigned src,
unsigned channel)
{
return channel < nir_ssa_alu_instr_src_components(instr, src);
}
bool
nir_alu_instr_is_comparison(const nir_alu_instr *instr);