[llvm-commits] [llvm-gcc-4.2] r51162 - /llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp

Dale Johannesen dalej at apple.com
Thu May 15 13:51:51 PDT 2008


Author: johannes
Date: Thu May 15 15:51:51 2008
New Revision: 51162

URL: http://llvm.org/viewvc/llvm-project?rev=51162&view=rev
Log:
Here we go; generate CommonLinkage for commons
and WeakLinkage for weaks.  Since the BEs all
treat these identically, there should be no
functional change.


Modified:
    llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp

Modified: llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp?rev=51162&r1=51161&r2=51162&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp Thu May 15 15:51:51 2008
@@ -986,11 +986,12 @@
   // Set the linkage.
   if (!TREE_PUBLIC(decl)) {
     GV->setLinkage(GlobalValue::InternalLinkage);
-  } else if (DECL_WEAK(decl) || DECL_ONE_ONLY(decl) ||
-             (DECL_COMMON(decl) &&  // DECL_COMMON is only meaningful if no init
-              (!DECL_INITIAL(decl) || DECL_INITIAL(decl) == error_mark_node))) {
-    // llvm-gcc also includes DECL_VIRTUAL_P here.
+  } else if (DECL_WEAK(decl) || DECL_ONE_ONLY(decl)) {
     GV->setLinkage(GlobalValue::WeakLinkage);
+  } else if (DECL_COMMON(decl) &&  // DECL_COMMON is only meaningful if no init
+              (!DECL_INITIAL(decl) || DECL_INITIAL(decl) == error_mark_node)) {
+    // llvm-gcc also includes DECL_VIRTUAL_P here.
+    GV->setLinkage(GlobalValue::CommonLinkage);
   } else if (DECL_COMDAT(decl)) {
     GV->setLinkage(GlobalValue::LinkOnceLinkage);
   }





More information about the llvm-commits mailing list