There will need to be sources for depth and stencil writeout, so
something has to be moved to the dest of the writeout branch.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5065>
midgard_block *block = (midgard_block *) _block;
mir_foreach_instr_in_block_rev(block, ins) {
if (ins->writeout)
- r1w = ins->src[2];
+ r1w = ins->dest;
}
if (r1w != ~0)
if (ins->src[1] < ctx->temp_count)
l->solutions[ins->src[1]] = (16 * 1) + COMPONENT_Z * 4;
- if (ins->src[2] < ctx->temp_count)
- l->solutions[ins->src[2]] = (16 * 1) + COMPONENT_W * 4;
+ if (ins->dest < ctx->temp_count)
+ l->solutions[ins->dest] = (16 * 1) + COMPONENT_W * 4;
}
-
+
mir_compute_interference(ctx, l);
*spilled = !lcra_solve(l);
vadd->unit = UNIT_VADD;
vadd->mask = 0x1;
- branch->src[2] = vadd->dest;
- branch->src_types[2] = vadd->dest_type;
+ branch->dest = vadd->dest;
+ branch->dest_type = vadd->dest_type;
}
mir_choose_alu(&vadd, instructions, worklist, len, &predicate, UNIT_VADD);