Mesa (master): nv50/ir: it appears that OP_DISCARD can' t take a join modifier

Ilia Mirkin imirkin at kemper.freedesktop.org
Sat Oct 22 16:19:34 UTC 2016


Module: Mesa
Branch: master
Commit: 7b7eb7170d16ddb0963900ccf59b39956219373c
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7b7eb7170d16ddb0963900ccf59b39956219373c

Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Wed Oct 19 23:59:15 2016 -0400

nv50/ir: it appears that OP_DISCARD can't take a join modifier

nvdisasm does not print a .S even though the bit is set.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>

---

 src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
index 0fb1a78..8494c88 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
@@ -2968,6 +2968,7 @@ FlatteningPass::visit(BasicBlock *bb)
          insn = insn->prev;
          if (insn && !insn->getPredicate() &&
              !insn->asFlow() &&
+             insn->op != OP_DISCARD &&
              insn->op != OP_TEXBAR &&
              !isTextureOp(insn->op) && // probably just nve4
              !isSurfaceOp(insn->op) && // not confirmed




More information about the mesa-commit mailing list