Mesa (master): nv50/ir/tgsi: handle TGSI_OPCODE_ARR
Ilia Mirkin
imirkin at kemper.freedesktop.org
Sat Nov 29 00:23:20 UTC 2014
Module: Mesa
Branch: master
Commit: f3b4b263c2f08f641c42a02bf3c57c3da2fc0414
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f3b4b263c2f08f641c42a02bf3c57c3da2fc0414
Author: Christoph Bumiller <christoph.bumiller at speed.at>
Date: Thu Jul 4 14:19:18 2013 +0200
nv50/ir/tgsi: handle TGSI_OPCODE_ARR
This instruction is used by st/nine.
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
Cc: "10.4" <mesa-stable at lists.freedesktop.org>
---
src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
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 39a70aa..9ee927f 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
@@ -2337,9 +2337,12 @@ Converter::handleInstruction(const struct tgsi_full_instruction *insn)
mkMov(dst0[c], val0);
break;
case TGSI_OPCODE_ARL:
+ case TGSI_OPCODE_ARR:
FOR_EACH_DST_ENABLED_CHANNEL(0, c, tgsi) {
+ const RoundMode rnd =
+ tgsi.getOpcode() == TGSI_OPCODE_ARR ? ROUND_N : ROUND_M;
src0 = fetchSrc(0, c);
- mkCvt(OP_CVT, TYPE_S32, dst0[c], TYPE_F32, src0)->rnd = ROUND_M;
+ mkCvt(OP_CVT, TYPE_S32, dst0[c], TYPE_F32, src0)->rnd = rnd;
}
break;
case TGSI_OPCODE_UARL:
More information about the mesa-commit
mailing list