summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bitcode/Reader/MetadataLoader.cpp
diff options
context:
space:
mode:
authorMehdi Amini <mehdi.amini@apple.com>2016-12-23 02:20:09 +0000
committerMehdi Amini <mehdi.amini@apple.com>2016-12-23 02:20:09 +0000
commit5ae6170fc29271ea76c18c09ef102f8613ae70fa (patch)
treea8b00839bcfda24098687b950cb91ed6c8cf2555 /llvm/lib/Bitcode/Reader/MetadataLoader.cpp
parent70a9cd4cbe20dfdd26051c3683c5d0bf3b8a2ec0 (diff)
downloadbcm5719-llvm-5ae6170fc29271ea76c18c09ef102f8613ae70fa.tar.gz
bcm5719-llvm-5ae6170fc29271ea76c18c09ef102f8613ae70fa.zip
MetadataLoader: Add an assertion for the implicit invariant of PlaceHolder while loading Metadata (NFC)
llvm-svn: 290408
Diffstat (limited to 'llvm/lib/Bitcode/Reader/MetadataLoader.cpp')
-rw-r--r--llvm/lib/Bitcode/Reader/MetadataLoader.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/llvm/lib/Bitcode/Reader/MetadataLoader.cpp b/llvm/lib/Bitcode/Reader/MetadataLoader.cpp
index 1cfa1a82182..93212b0aa77 100644
--- a/llvm/lib/Bitcode/Reader/MetadataLoader.cpp
+++ b/llvm/lib/Bitcode/Reader/MetadataLoader.cpp
@@ -372,8 +372,14 @@ DistinctMDOperandPlaceholder &PlaceholderQueue::getPlaceholderOp(unsigned ID) {
void PlaceholderQueue::flush(BitcodeReaderMetadataList &MetadataList) {
while (!PHs.empty()) {
- PHs.front().replaceUseWith(
- MetadataList.getMetadataFwdRef(PHs.front().getID()));
+ auto *MD = MetadataList.getMetadataFwdRef(PHs.front().getID());
+#ifndef NDEBUG
+ if (auto MDN = dyn_cast<MDNode>(MD)) {
+ assert(MDN->isResolved() &&
+ "Flushing Placeholder while cycles aren't resolved");
+ }
+#endif
+ PHs.front().replaceUseWith(MD);
PHs.pop_front();
}
}
OpenPOWER on IntegriCloud