search for: copycompound

Displaying 3 results from an estimated 3 matches for "copycompound".

2015 Jan 11
0
[PATCH 2/3] nv50/ir: For MAD, prefer SDST == SSRC2
...case 0xa0: - ret = doCoalesce(insns, JOIN_MASK_UNION | JOIN_MASK_TEX); + ret = doCoalesce(insns, JOIN_MASK_UNION | JOIN_MASK_TEX | JOIN_MASK_MAD); break; case 0xc0: case 0xd0: @@ -995,6 +996,13 @@ GCRA::doCoalesce(ArrayList& insns, unsigned int mask) copyCompound(insn->getSrc(0), insn->getDef(0)); } break; + case OP_MAD: + if (!(mask & JOIN_MASK_MAD)) + break; + if (insn->srcExists(2) && insn->src(2).getFile() == FILE_GPR && + insn->def(0).getFile() == FILE_GP...
2015 Jan 11
6
[PATCH 1/3] nv50/ir: Add support for MAD short+IMM notation
MAD IMM has a very specific SDST == SSRC2 requirement, so don't emit Signed-off-by: Roy Spliet <rspliet at eclipso.eu> --- .../drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp | 18 ++++++++++++------ .../drivers/nouveau/codegen/nv50_ir_target_nv50.cpp | 2 +- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_nv50.cpp
2014 Dec 02
0
[PATCH RESEND] nv50/ir: use unordered_set instead of list to keep track of var defs
...ll need this ? break; - i = insn->getSrc(0)->getUniqueInsn(); + i = insn->getSrc(0)->getUniqueInsnMerged(); if (i && !i->constrainedDefs()) { if (coalesceValues(insn->getDef(0), insn->getSrc(0), false)) copyCompound(insn->getSrc(0), insn->getDef(0)); @@ -1410,7 +1410,7 @@ GCRA::cleanup(const bool success) } else { for (Value::DefIterator d = lval->defs.begin(); d != lval->defs.end(); ++d) - lval->join->defs.remove(*d); + lval->join->...