nv50/ir: use moveSources to condense sources
This makes sure that rIndirectSrc and other things stay updated. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
This commit is contained in:
parent
879bd2ea0c
commit
be4caaf247
|
@ -2073,14 +2073,9 @@ RegAlloc::InsertConstraintsPass::condenseSrcs(Instruction *insn,
|
|||
merge->setDef(0, lval);
|
||||
for (int s = a, i = 0; s <= b; ++s, ++i) {
|
||||
merge->setSrc(i, insn->getSrc(s));
|
||||
insn->setSrc(s, NULL);
|
||||
}
|
||||
insn->moveSources(b + 1, a - b);
|
||||
insn->setSrc(a, lval);
|
||||
|
||||
for (int k = a + 1, s = b + 1; insn->srcExists(s); ++s, ++k) {
|
||||
insn->setSrc(k, insn->getSrc(s));
|
||||
insn->setSrc(s, NULL);
|
||||
}
|
||||
insn->bb->insertBefore(insn, merge);
|
||||
|
||||
insn->putExtraSources(0, save);
|
||||
|
|
Loading…
Reference in New Issue