[llvm-commits] [llvm] r53580 - /llvm/trunk/tools/lto/LTOModule.cpp

Devang Patel dpatel at apple.com
Mon Jul 14 17:00:11 PDT 2008


Author: dpatel
Date: Mon Jul 14 19:00:11 2008
New Revision: 53580

URL: http://llvm.org/viewvc/llvm-project?rev=53580&view=rev
Log:
LinkOnce definitions have default scope, like weak definitions. Otherwise, the linker may not be able to match LinkOnce definition from one module with an exteranl reference from other module.


Modified:
    llvm/trunk/tools/lto/LTOModule.cpp

Modified: llvm/trunk/tools/lto/LTOModule.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/lto/LTOModule.cpp?rev=53580&r1=53579&r2=53580&view=diff

==============================================================================
--- llvm/trunk/tools/lto/LTOModule.cpp (original)
+++ llvm/trunk/tools/lto/LTOModule.cpp Mon Jul 14 19:00:11 2008
@@ -224,7 +224,8 @@
     // set scope part
     if ( def->hasHiddenVisibility() )
         attr |= LTO_SYMBOL_SCOPE_HIDDEN;
-    else if ( def->hasExternalLinkage() || def->hasWeakLinkage() )
+    else if ( def->hasExternalLinkage() || def->hasWeakLinkage() 
+              || def->hasLinkOnceLinkage() )
         attr |= LTO_SYMBOL_SCOPE_DEFAULT;
     else
         attr |= LTO_SYMBOL_SCOPE_INTERNAL;





More information about the llvm-commits mailing list