Mesa (master): nv50/ir/gk110: handle derivAll flag, fix useOffsets for non-txf

Ilia Mirkin imirkin at kemper.freedesktop.org
Tue Mar 18 09:58:23 UTC 2014


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

Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Tue Mar 11 13:03:02 2014 -0400

nv50/ir/gk110: handle derivAll flag, fix useOffsets for non-txf

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>

---

 src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp |   12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp
index 7d188c9..3aedda4 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp
@@ -1035,8 +1035,8 @@ CodeEmitterGK110::emitTEX(const TexInstruction *i)
       code[1] |= 0x1000;
    }
 
-   // if (i->op != OP_TXD && i->tex.derivAll)
-   //   code[1] |= 1 << 13;
+   if (i->op != OP_TXD && i->tex.derivAll)
+      code[1] |= 0x200;
 
    emitPredicate(i);
 
@@ -1064,8 +1064,12 @@ CodeEmitterGK110::emitTEX(const TexInstruction *i)
       // ?
    }
 
-   if (i->tex.useOffsets)
-      code[1] |= 0x200;
+   if (i->tex.useOffsets) {
+      switch (i->op) {
+      case OP_TXF: code[1] |= 0x200; break;
+      default: code[1] |= 0x800; break;
+      }
+   }
 }
 
 void




More information about the mesa-commit mailing list