[ThinLTO] Metadata linking for imported functions
[oota-llvm.git] / lib / IR / Metadata.cpp
index 80f18daa79b0a00d0f7dc90f8111530297db23e2..b1da0301ecfcf02573875e52d00d6583529ada2b 100644 (file)
@@ -517,7 +517,7 @@ void MDNode::decrementUnresolvedOperandCount() {
     resolve();
 }
 
-void MDNode::resolveCycles() {
+void MDNode::resolveCycles(bool MDMaterialized) {
   if (isResolved())
     return;
 
@@ -530,6 +530,8 @@ void MDNode::resolveCycles() {
     if (!N)
       continue;
 
+    if (N->isTemporary() && !MDMaterialized)
+      continue;
     assert(!N->isTemporary() &&
            "Expected all forward declarations to be resolved");
     if (!N->isResolved())