clean up this code, add a fixme.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93042 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Bitcode/Reader/BitcodeReader.cpp b/lib/Bitcode/Reader/BitcodeReader.cpp
index bec9c50..87c4fd7 100644
--- a/lib/Bitcode/Reader/BitcodeReader.cpp
+++ b/lib/Bitcode/Reader/BitcodeReader.cpp
@@ -789,18 +789,18 @@
       unsigned Size = Record.size();
       SmallVector<MDNode *, 8> Elts;
       for (unsigned i = 0; i != Size; ++i) {
-        if (Record[i] == ~0U)
+        if (Record[i] == ~0U) {
           Elts.push_back(NULL);
-        else {
-          Value *MD = MDValueList.getValueFwdRef(Record[i]);
-          if (MDNode *B = dyn_cast<MDNode>(MD))
-            Elts.push_back(B);
-          else
-            return Error("Malformed metadata record");
+          continue;
         }
+        MDNode *MD = dyn_cast<MDNode>(MDValueList.getValueFwdRef(Record[i]));
+        if (MD == 0)
+          return Error("Malformed metadata record");
+        Elts.push_back(MD);
       }
       Value *V = NamedMDNode::Create(Context, Name.str(), Elts.data(),
                                      Elts.size(), TheModule);
+      // FIXME: This shouldn't poke NextValueNo?
       MDValueList.AssignValue(V, NextValueNo++);
       break;
     }