Mesa (10.2): nv50/ir: fix lowering of predicated instructions ( without defs)
Ian Romanick
idr at kemper.freedesktop.org
Thu May 29 22:39:55 UTC 2014
Module: Mesa
Branch: 10.2
Commit: 9ea859931ea67eeb8431303c71faa83ac394f2d5
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9ea859931ea67eeb8431303c71faa83ac394f2d5
Author: Christoph Bumiller <e0425955 at student.tuwien.ac.at>
Date: Wed Jun 12 21:00:41 2013 +0200
nv50/ir: fix lowering of predicated instructions (without defs)
Note that predicated instructions with defs are still not supported
because transformation to SSA doesn't handle them yet.
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
Cc: "10.2" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 452a4151aa1eebbc12b621a465fc452fdb95a08b)
---
src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nv50.cpp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nv50.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nv50.cpp
index 0fb7666..ed06def 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nv50.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nv50.cpp
@@ -1279,8 +1279,11 @@ NV50LoweringPreSSA::checkPredicate(Instruction *insn)
Value *pred = insn->getPredicate();
Value *cdst;
- if (!pred || pred->reg.file == FILE_FLAGS)
+ // FILE_PREDICATE will simply be changed to FLAGS on conversion to SSA
+ if (!pred ||
+ pred->reg.file == FILE_FLAGS || pred->reg.file == FILE_PREDICATE)
return;
+
cdst = bld.getSSA(1, FILE_FLAGS);
bld.mkCmp(OP_SET, CC_NEU, insn->dType, cdst, insn->dType, bld.loadImm(NULL, 0), pred);
More information about the mesa-commit
mailing list