gk110/ir: fix quadop dall emission
authorIlia Mirkin <imirkin@alum.mit.edu>
Sun, 4 Sep 2016 22:21:29 +0000 (18:21 -0400)
committerIlia Mirkin <imirkin@alum.mit.edu>
Sun, 4 Sep 2016 22:28:29 +0000 (18:28 -0400)
We recently starting to always emit the NDV (== dall) bit for quadops.
However it was folded into the wrong code word.

Fixes: e0a067ed48 (nv50/ir: always emit the NDV bit for OP_QUADOP)
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Cc: <mesa-stable@lists.freedesktop.org>
src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gk110.cpp

index 570b4a9cc6f87cb972e9db26d69d53103ca1aa1c..8d36799bad450019213f8a32ffed37b65c007c97 100644 (file)
@@ -1320,8 +1320,8 @@ CodeEmitterGK110::emitTXQ(const TexInstruction *i)
 void
 CodeEmitterGK110::emitQUADOP(const Instruction *i, uint8_t qOp, uint8_t laneMask)
 {
-   code[0] = 0x00000202 | ((qOp & 1) << 31); // dall
-   code[1] = 0x7fc00000 | (qOp >> 1) | (laneMask << 12);
+   code[0] = 0x00000002 | ((qOp & 1) << 31);
+   code[1] = 0x7fc00200 | (qOp >> 1) | (laneMask << 12); // dall
 
    defId(i->def(0), 2);
    srcId(i->src(0), 10);