nir: use num_components wrappers in print/validate.

These wrappers were introduces, so start using them.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
Dave Airlie
2018-05-15 11:11:12 +10:00
parent bad7332f7c
commit 67eccd6aa2
2 changed files with 5 additions and 15 deletions

View File

@@ -199,9 +199,7 @@ print_alu_src(nir_alu_instr *instr, unsigned src, print_state *state)
} }
} }
unsigned live_channels = instr->src[src].src.is_ssa unsigned live_channels = nir_src_num_components(instr->src[src].src);
? instr->src[src].src.ssa->num_components
: instr->src[src].src.reg.reg->num_components;
if (print_swizzle || used_channels != live_channels) { if (print_swizzle || used_channels != live_channels) {
fprintf(fp, "."); fprintf(fp, ".");

View File

@@ -228,15 +228,9 @@ validate_alu_src(nir_alu_instr *instr, unsigned index, validate_state *state)
{ {
nir_alu_src *src = &instr->src[index]; nir_alu_src *src = &instr->src[index];
unsigned num_components; unsigned num_components = nir_src_num_components(src->src);
if (src->src.is_ssa) { if (!src->src.is_ssa && src->src.reg.reg->is_packed)
num_components = src->src.ssa->num_components;
} else {
if (src->src.reg.reg->is_packed)
num_components = 4; /* can't check anything */ num_components = 4; /* can't check anything */
else
num_components = src->src.reg.reg->num_components;
}
for (unsigned i = 0; i < 4; i++) { for (unsigned i = 0; i < 4; i++) {
validate_assert(state, src->swizzle[i] < 4); validate_assert(state, src->swizzle[i] < 4);
@@ -333,9 +327,7 @@ validate_alu_dest(nir_alu_instr *instr, validate_state *state)
{ {
nir_alu_dest *dest = &instr->dest; nir_alu_dest *dest = &instr->dest;
unsigned dest_size = unsigned dest_size = nir_dest_num_components(dest->dest);
dest->dest.is_ssa ? dest->dest.ssa.num_components
: dest->dest.reg.reg->num_components;
bool is_packed = !dest->dest.is_ssa && dest->dest.reg.reg->is_packed; bool is_packed = !dest->dest.is_ssa && dest->dest.reg.reg->is_packed;
/* /*
* validate that the instruction doesn't write to components not in the * validate that the instruction doesn't write to components not in the