From: Ilia Mirkin Date: Tue, 19 Jan 2016 04:55:19 +0000 (-0500) Subject: gm107/ir: add carry emission to LOP and IADD X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=73c9ca754487fa5f39122119e1588e13ffcf5f47;p=mesa.git gm107/ir: add carry emission to LOP and IADD Signed-off-by: Ilia Mirkin --- diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp index 465319af5ce..1fa0eb6da6d 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp @@ -1554,11 +1554,13 @@ CodeEmitterGM107::emitLOP() break; } emitPRED (0x30); + emitX (0x2b); emitField(0x29, 2, lop); emitINV (0x28, insn->src(1)); emitINV (0x27, insn->src(0)); } else { emitInsn (0x04000000); + emitX (0x39); emitINV (0x38, insn->src(1)); emitINV (0x37, insn->src(0)); emitField(0x35, 2, lop); @@ -1626,9 +1628,11 @@ CodeEmitterGM107::emitIADD() emitNEG(0x31, insn->src(0)); emitNEG(0x30, insn->src(1)); emitCC (0x2f); + emitX (0x2b); } else { emitInsn(0x1c000000); emitSAT (0x36); + emitX (0x35); emitCC (0x34); emitIMMD(0x14, 32, insn->src(1)); }