From: Ilia Mirkin Date: Sun, 31 Jan 2016 03:08:06 +0000 (-0500) Subject: nv50/ir: use moveSources to condense sources X-Git-Tag: upstream/17.1.0~9600 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=be4caaf247d8a9908d50e31037421d22bed7a2d6;p=platform%2Fupstream%2Fmesa.git nv50/ir: use moveSources to condense sources This makes sure that rIndirectSrc and other things stay updated. Signed-off-by: Ilia Mirkin Reviewed-by: Samuel Pitoiset --- diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp index 30772e6..65d11f8 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp @@ -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);