nv50/ir: replace zeros in movs as well

The original change to put zeroes directly into instructions created
conditional mov's with the zero immediate. However that can't be
emitted, so make sure to replace the zero with r63.

Fixes: 52a800a68 (nv50/ir: allow immediate 0 to be loaded anywhere)
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
Ilia Mirkin
2015-12-03 23:43:44 -05:00
parent a3722b81f5
commit 204f803ce0
@@ -293,8 +293,7 @@ NV50LegalizePostRA::visit(BasicBlock *bb)
next = hi;
}
if (i->op != OP_MOV && i->op != OP_PFETCH &&
i->op != OP_BAR &&
if (i->op != OP_PFETCH && i->op != OP_BAR &&
(!i->defExists(0) || i->def(0).getFile() != FILE_ADDRESS))
replaceZero(i);
}