nv50/ir: handle insn not being there for definition of CVT arg
This can happen if it's e.g. a uniform or a function argument. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111217 Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Karol Herbst <kherbst@redhat.com> Cc: mesa-stable@lists.freedesktop.org
This commit is contained in:
@@ -2080,14 +2080,15 @@ void
|
||||
AlgebraicOpt::handleCVT_CVT(Instruction *cvt)
|
||||
{
|
||||
Instruction *insn = cvt->getSrc(0)->getInsn();
|
||||
RoundMode rnd = insn->rnd;
|
||||
|
||||
if (insn->saturate ||
|
||||
if (!insn ||
|
||||
insn->saturate ||
|
||||
insn->subOp ||
|
||||
insn->dType != insn->sType ||
|
||||
insn->dType != cvt->sType)
|
||||
return;
|
||||
|
||||
RoundMode rnd = insn->rnd;
|
||||
switch (insn->op) {
|
||||
case OP_CEIL:
|
||||
rnd = ROUND_PI;
|
||||
|
||||
Reference in New Issue
Block a user