Mesa (master): nvc0/ir: Only store viewport in scratch register for GP

Ilia Mirkin imirkin at kemper.freedesktop.org
Fri Apr 21 03:27:01 UTC 2017


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

Author: Lyude <lyude at redhat.com>
Date:   Wed Apr 19 18:38:01 2017 -0400

nvc0/ir: Only store viewport in scratch register for GP

EMIT only applies to geometry shaders. For everything else, we want to
export the viewport normally.

Signed-off-by: Lyude <lyude at redhat.com>
Reviewed-by: Boyan Ding <boyan.j.ding at gmail.com>
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>

---

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

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 92cc13d611..b583001131 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
@@ -2156,6 +2156,7 @@ Converter::storeDst(const tgsi::Instruction::DstRegister dst, int c,
          /* Save the viewport index into a scratch register so that it can be
             exported at EMIT time */
          if (info->out[idx].sn == TGSI_SEMANTIC_VIEWPORT_INDEX &&
+             prog->getType() == Program::TYPE_GEOMETRY &&
              viewport != NULL)
             mkOp1(OP_MOV, TYPE_U32, viewport, val);
          else




More information about the mesa-commit mailing list