diff options
author | Chris Lattner <sabre@nondot.org> | 2010-01-09 02:02:37 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-01-09 02:02:37 +0000 |
commit | 003143c582d7197661f5435f94a78c607096f651 (patch) | |
tree | 03d22bc36ab944446df71c9b0e614cf4556a574d /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | 71ff547575057d635b6ed40e6e71aa59186388dc (diff) | |
download | bcm5719-llvm-003143c582d7197661f5435f94a78c607096f651.tar.gz bcm5719-llvm-003143c582d7197661f5435f94a78c607096f651.zip |
clean up this code, add a fixme.
llvm-svn: 93042
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
-rw-r--r-- | llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp index bec9c50e301..87c4fd77f36 100644 --- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp @@ -789,18 +789,18 @@ bool BitcodeReader::ParseMetadata() { 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; } |