Using TrackingVH instead of WeakVH or WeakMetadataVH.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84884 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Bitcode/Writer/BitcodeWriter.cpp b/lib/Bitcode/Writer/BitcodeWriter.cpp
index 947b895..c8cb595 100644
--- a/lib/Bitcode/Writer/BitcodeWriter.cpp
+++ b/lib/Bitcode/Writer/BitcodeWriter.cpp
@@ -569,14 +569,12 @@
bool RecordedInstruction = false;
for (MetadataContext::MDMapTy::const_iterator PI = P->begin(),
PE = P->end(); PI != PE; ++PI) {
- if (MDNode *ND = dyn_cast_or_null<MDNode>(PI->second)) {
- if (RecordedInstruction == false) {
- Record.push_back(VE.getInstructionID(I));
- RecordedInstruction = true;
- }
- Record.push_back(PI->first);
- Record.push_back(VE.getValueID(ND));
+ if (RecordedInstruction == false) {
+ Record.push_back(VE.getInstructionID(I));
+ RecordedInstruction = true;
}
+ Record.push_back(PI->first);
+ Record.push_back(VE.getValueID(PI->second));
}
if (!Record.empty()) {
if (!StartedMetadataBlock) {
diff --git a/lib/Bitcode/Writer/ValueEnumerator.cpp b/lib/Bitcode/Writer/ValueEnumerator.cpp
index ca9fc77..4257281 100644
--- a/lib/Bitcode/Writer/ValueEnumerator.cpp
+++ b/lib/Bitcode/Writer/ValueEnumerator.cpp
@@ -103,8 +103,7 @@
if (MDs)
for (MetadataContext::MDMapTy::const_iterator MI = MDs->begin(),
ME = MDs->end(); MI != ME; ++MI)
- if (MDNode *MDN = dyn_cast_or_null<MDNode>(MI->second))
- EnumerateMetadata(MDN);
+ EnumerateMetadata(MI->second);
}
}