[FuzzMutate] Pick correct index for the insertvalue instruction

Differential Revision: https://reviews.llvm.org/D40395

llvm-svn: 319440
diff --git a/llvm/lib/FuzzMutate/Operations.cpp b/llvm/lib/FuzzMutate/Operations.cpp
index 083d9aa..8bc902e 100644
--- a/llvm/lib/FuzzMutate/Operations.cpp
+++ b/llvm/lib/FuzzMutate/Operations.cpp
@@ -240,9 +240,9 @@
   auto Pred = [](ArrayRef<Value *> Cur, const Value *V) {
     auto *CTy = cast<CompositeType>(Cur[0]->getType());
     if (auto *CI = dyn_cast<ConstantInt>(V))
-      if (CI->getBitWidth() == 32)
-        if (CTy->getTypeAtIndex(CI->getZExtValue()) == V->getType())
-          return true;
+      if (CI->getBitWidth() == 32 &&
+          CTy->getTypeAtIndex(CI->getZExtValue()) == Cur[1]->getType())
+        return true;
     return false;
   };
   auto Make = [](ArrayRef<Value *> Cur, ArrayRef<Type *> Ts) {