diff options
author | Ilia Mirkin <[email protected]> | 2015-07-18 19:02:29 -0400 |
---|---|---|
committer | Ilia Mirkin <[email protected]> | 2015-07-18 19:03:07 -0400 |
commit | 8c8a71f0d125bb655b17a32914ffecf8d159593b (patch) | |
tree | a7809699c8e397d63cf9c70d835e8bf694343ece /src/gallium | |
parent | 346ce0b98832e33d5411200002571b3edea9e2bb (diff) |
gm107/ir: fix indirect txq emission
Signed-off-by: Ilia Mirkin <[email protected]>
Cc: [email protected]
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp index 399a6f1db13..65c1f23e101 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp @@ -2441,8 +2441,14 @@ CodeEmitterGM107::emitTXQ() break; } - emitInsn (0xdf4a0000); - emitField(0x24, 13, insn->tex.r); + if (insn->tex.rIndirectSrc >= 0) { + emitInsn (0xdf500000); + } else { + emitInsn (0xdf480000); + emitField(0x24, 13, insn->tex.r); + } + + emitField(0x31, 1, insn->tex.liveOnly); emitField(0x1f, 4, insn->tex.mask); emitField(0x16, 6, type); emitGPR (0x08, insn->src(0)); |