nv50/ir: avoid looking at uninitialized srcMods entries
authorIlia Mirkin <imirkin@alum.mit.edu>
Fri, 4 Dec 2015 03:37:22 +0000 (22:37 -0500)
committerIlia Mirkin <imirkin@alum.mit.edu>
Fri, 4 Dec 2015 04:02:57 +0000 (23:02 -0500)
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org>
src/gallium/drivers/nouveau/codegen/nv50_ir_target_nv50.cpp
src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp

index a0fb14444d2d875c370aa558799d212f028a4e31..2d5baede2e0444c36dae34bf2ca27a045a80062a 100644 (file)
@@ -460,7 +460,7 @@ TargetNV50::isModSupported(const Instruction *insn, int s, Modifier mod) const
          return false;
       }
    }
-   if (s >= 3)
+   if (s >= opInfo[insn->op].srcNr || s >= 3)
       return false;
    return (mod & Modifier(opInfo[insn->op].srcMods[s])) == mod;
 }
index 8f59d86a72f2705c1a0e50a58da70c8f5047bff4..0f1f4f8d8579654a0bbf0ffb4dfa0b621f8a7f6d 100644 (file)
@@ -439,7 +439,7 @@ TargetNVC0::isModSupported(const Instruction *insn, int s, Modifier mod) const
          return false;
       }
    }
-   if (s >= 3)
+   if (s >= opInfo[insn->op].srcNr || s >= 3)
       return false;
    return (mod & Modifier(opInfo[insn->op].srcMods[s])) == mod;
 }