Trying to write to overlapping register ranges from a single
instruction is undefined behaviour, so add interference between the
nodes to avoid this.
Hit in a dual-texture instruction in LIMBO.
Fixes:
9146bafbb42 ("pan/bi: Add dual texture fusing pass")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15250>
bi_writemask(ins, d), i, live[i]);
}
}
+
+ unsigned node_first = bi_get_node(ins->dest[0]);
+ if (d == 1 && node_first < node_count) {
+ lcra_add_node_interference(l, node, bi_writemask(ins, 1),
+ node_first, bi_writemask(ins, 0));
+ }
}
/* Valhall needs >= 64-bit staging reads to be pair-aligned */