Mesa (10.2): nvc0/ir: use manual TXD when offsets are involved

Carl Worth cworth at kemper.freedesktop.org
Mon Jul 14 20:58:36 UTC 2014


Module: Mesa
Branch: 10.2
Commit: 1e6620997f7576de01acbf268a7f424bbf91ddf7
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1e6620997f7576de01acbf268a7f424bbf91ddf7

Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Sat Jul  5 00:52:15 2014 -0400

nvc0/ir: use manual TXD when offsets are involved

Something about how we're implementing offsets for TXD is wrong, just
flip to the generic quadop-based implementation in that case.

This is the minimal fix appropriate for backporting.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
Cc: <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 114d46829d10c826927cabc1ca14884a4ee249f7)

---

 src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp
index 12237fe..767cc02 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp
@@ -871,7 +871,8 @@ NVC0LoweringPass::handleTXD(TexInstruction *txd)
    if (dim > 2 ||
        txd->tex.target.isCube() ||
        arg > 4 ||
-       txd->tex.target.isShadow())
+       txd->tex.target.isShadow() ||
+       txd->tex.useOffsets)
       return handleManualTXD(txd);
 
    for (int c = 0; c < dim; ++c) {




More information about the mesa-commit mailing list