aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/panfrost/midgard/midgard_print.c30
1 files changed, 21 insertions, 9 deletions
diff --git a/src/panfrost/midgard/midgard_print.c b/src/panfrost/midgard/midgard_print.c
index 60786fef53f..58d6cf67278 100644
--- a/src/panfrost/midgard/midgard_print.c
+++ b/src/panfrost/midgard/midgard_print.c
@@ -333,10 +333,13 @@ mir_print_instruction(midgard_instruction *ins)
printf(" ");
mir_print_index(ins->dest);
- pan_print_alu_type(ins->dest_type, stdout);
- if (ins->mask != 0xF)
- mir_print_mask(ins->mask);
+ if (ins->dest) {
+ pan_print_alu_type(ins->dest_type, stdout);
+
+ if (ins->mask != 0xF)
+ mir_print_mask(ins->mask);
+ }
printf(", ");
@@ -346,8 +349,11 @@ mir_print_instruction(midgard_instruction *ins)
mir_print_embedded_constant(ins, 0);
else {
mir_print_index(ins->src[0]);
- pan_print_alu_type(ins->src_types[0], stdout);
- mir_print_swizzle(ins->swizzle[0]);
+
+ if (ins->src[0] != ~0) {
+ pan_print_alu_type(ins->src_types[0], stdout);
+ mir_print_swizzle(ins->swizzle[0]);
+ }
}
printf(", ");
@@ -357,15 +363,21 @@ mir_print_instruction(midgard_instruction *ins)
mir_print_embedded_constant(ins, 1);
else {
mir_print_index(ins->src[1]);
- pan_print_alu_type(ins->src_types[1], stdout);
- mir_print_swizzle(ins->swizzle[1]);
+
+ if (ins->src[1] != ~0) {
+ pan_print_alu_type(ins->src_types[1], stdout);
+ mir_print_swizzle(ins->swizzle[1]);
+ }
}
for (unsigned c = 2; c <= 3; ++c) {
printf(", ");
mir_print_index(ins->src[c]);
- pan_print_alu_type(ins->src_types[c], stdout);
- mir_print_swizzle(ins->swizzle[c]);
+
+ if (ins->src[c] != ~0) {
+ pan_print_alu_type(ins->src_types[c], stdout);
+ mir_print_swizzle(ins->swizzle[c]);
+ }
}
if (ins->no_spill)