Don't create undefined symbols for aliases.
authorNick Lewycky <nicholas@mxc.ca>
Thu, 9 Jul 2009 06:03:04 +0000 (06:03 +0000)
committerNick Lewycky <nicholas@mxc.ca>
Thu, 9 Jul 2009 06:03:04 +0000 (06:03 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75111 91177308-0d34-0410-b5e6-96231b3b80d8

tools/lto/LTOModule.cpp

index 9c8baef7d6a9a69a786c53c96975216f478183f0..c4980d6bf79bee615978cc390921ae007875ba9f 100644 (file)
@@ -325,7 +325,7 @@ void LTOModule::addDefinedDataSymbol(GlobalValue* v, Mangler& mangler)
 
 
 void LTOModule::addDefinedSymbol(GlobalValue* def, Mangler &mangler, 
-                                bool isFunction)
+                                 bool isFunction)
 {    
     // ignore all llvm.* symbols
     if ( strncmp(def->getNameStart(), "llvm.", 5) == 0 )
@@ -401,6 +401,10 @@ void LTOModule::addPotentialUndefinedSymbol(GlobalValue* decl, Mangler &mangler)
     if ( strncmp(decl->getNameStart(), "llvm.", 5) == 0 )
         return;
 
+    // ignore all aliases
+    if (isa<GlobalAlias>(decl))
+        return;
+
     const char* name = mangler.getValueName(decl).c_str();
 
     // we already have the symbol
@@ -539,4 +543,3 @@ const char* LTOModule::getSymbolName(uint32_t index)
     else
         return NULL;
 }
-