GlobalValue with InternalLinkage may have operands with ExternalLinkage
authorDevang Patel <dpatel@apple.com>
Thu, 14 Sep 2006 01:35:13 +0000 (01:35 +0000)
committerDevang Patel <dpatel@apple.com>
Thu, 14 Sep 2006 01:35:13 +0000 (01:35 +0000)
type. Do not ignore these operands while finding external references.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30310 91177308-0d34-0410-b5e6-96231b3b80d8

tools/lto/lto.cpp

index 05114b7f329c47ea7e8236185fcab72d78d2833b..9dfc45676dfb1f1d9f6fb3b1cb21a956f3e85096 100644 (file)
@@ -93,7 +93,7 @@ findExternalRefs(Value *value, std::set<std::string> &references,
     if (lt != LTOInternalLinkage && strncmp (gv->getName().c_str(), "llvm.", 5))
       references.insert(mangler.getValueName(gv));
   }
-  else if (Constant *c = dyn_cast<Constant>(value))
+  if (Constant *c = dyn_cast<Constant>(value))
     // Handle ConstantExpr, ConstantStruct, ConstantArry etc..
     for (unsigned i = 0, e = c->getNumOperands(); i != e; ++i)
       findExternalRefs(c->getOperand(i), references, mangler);