Fix thinko: alias always defines new symbol. Even is aliasee itself is undefined.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48203 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Archive/Archive.cpp b/lib/Archive/Archive.cpp
index 7df5e48..6c95dbe 100644
--- a/lib/Archive/Archive.cpp
+++ b/lib/Archive/Archive.cpp
@@ -207,10 +207,8 @@
   // Loop over aliases
   for (Module::alias_iterator AI = M->alias_begin(), AE = M->alias_end();
        AI != AE; ++AI) {
-    const GlobalValue *Aliased = AI->getAliasedGlobal();
-    if (!Aliased->isDeclaration())
-      if (AI->hasName())
-        symbols.push_back(AI->getName());
+    if (AI->hasName())
+      symbols.push_back(AI->getName());
   }
 }
 
diff --git a/lib/Linker/LinkArchives.cpp b/lib/Linker/LinkArchives.cpp
index 308a775..6cab77c 100644
--- a/lib/Linker/LinkArchives.cpp
+++ b/lib/Linker/LinkArchives.cpp
@@ -71,13 +71,8 @@
 
   for (Module::alias_iterator I = M->alias_begin(), E = M->alias_end();
        I != E; ++I)
-    if (I->hasName()) {
-      const GlobalValue *Aliased = I->getAliasedGlobal();
-      if (Aliased->isDeclaration())
-        UndefinedSymbols.insert(I->getName());
-      else
-        DefinedSymbols.insert(I->getName());
-    }
+    if (I->hasName())
+      DefinedSymbols.insert(I->getName());
 
   // Prune out any defined symbols from the undefined symbols set...
   for (std::set<std::string>::iterator I = UndefinedSymbols.begin();