<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [NVC0/Gallium] Unigine Heaven black and white boxes"
href="https://bugs.freedesktop.org/show_bug.cgi?id=89455#c2">Comment # 2</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [NVC0/Gallium] Unigine Heaven black and white boxes"
href="https://bugs.freedesktop.org/show_bug.cgi?id=89455">bug 89455</a>
from <span class="vcard"><a class="email" href="mailto:imirkin@alum.mit.edu" title="Ilia Mirkin <imirkin@alum.mit.edu>"> <span class="fn">Ilia Mirkin</span></a>
</span></b>
<pre>This patch seems to improve things for me (on a GF108). Pretty sure this is
incomplete though.
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
index 248f98d..0420bf2 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
@@ -2433,6 +2433,8 @@ Converter::handleInstruction(const struct
tgsi_full_instruction *insn)
src1 = fetchSrc(1, c);
geni = mkOp2(op, dstTy, dst0[c], src0, src1);
geni->subOp = tgsi::opcodeToSubOp(tgsi.getOpcode());
+ if (dstTy == TYPE_F32)
+ geni->ftz = true;
}
break;
case TGSI_OPCODE_MAD:
@@ -2442,7 +2444,9 @@ Converter::handleInstruction(const struct
tgsi_full_instruction *insn)
src0 = fetchSrc(0, c);
src1 = fetchSrc(1, c);
src2 = fetchSrc(2, c);
- mkOp3(op, dstTy, dst0[c], src0, src1, src2);
+ geni = mkOp3(op, dstTy, dst0[c], src0, src1, src2);
+ if (dstTy == TYPE_F32)
+ geni->ftz = true;
}
break;
case TGSI_OPCODE_MOV:</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>