nir: Split NIR_INTRINSIC_TYPE into separate src/dest indices

We're about to introduce conversion ops which are going to want two
different types.  We may as well just split the one we have rather than
end up with three.  There are a couple places where this is mildly
inconvenient but most of the time I find it to actually be nicer.

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6945>
This commit is contained in:
Jason Ekstrand
2020-09-30 21:20:53 -05:00
committed by Marge Bot
parent 4c70f1ba2f
commit 0aa08ae2f6
21 changed files with 93 additions and 61 deletions

View File

@@ -837,7 +837,8 @@ print_intrinsic_instr(nir_intrinsic_instr *instr, print_state *state)
[NIR_INTRINSIC_ALIGN_MUL] = "align_mul",
[NIR_INTRINSIC_ALIGN_OFFSET] = "align_offset",
[NIR_INTRINSIC_DESC_TYPE] = "desc_type",
[NIR_INTRINSIC_TYPE] = "type",
[NIR_INTRINSIC_SRC_TYPE] = "src_type",
[NIR_INTRINSIC_DEST_TYPE] = "dest_type",
[NIR_INTRINSIC_SWIZZLE_MASK] = "swizzle_mask",
[NIR_INTRINSIC_DRIVER_LOCATION] = "driver_location",
[NIR_INTRINSIC_MEMORY_SEMANTICS] = "mem_semantics",
@@ -898,9 +899,15 @@ print_intrinsic_instr(nir_intrinsic_instr *instr, print_state *state)
break;
}
case NIR_INTRINSIC_TYPE: {
fprintf(fp, " type=");
print_alu_type(nir_intrinsic_type(instr), state);
case NIR_INTRINSIC_SRC_TYPE: {
fprintf(fp, " src_type=");
print_alu_type(nir_intrinsic_src_type(instr), state);
break;
}
case NIR_INTRINSIC_DEST_TYPE: {
fprintf(fp, " src_type=");
print_alu_type(nir_intrinsic_dest_type(instr), state);
break;
}