Generate correct stubs for weak-linked symbols
authorNate Begeman <natebegeman@mac.com>
Sun, 17 Oct 2004 23:01:34 +0000 (23:01 +0000)
committerNate Begeman <natebegeman@mac.com>
Sun, 17 Oct 2004 23:01:34 +0000 (23:01 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17101 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/PPCAsmPrinter.cpp

index fdb7831fe84297527da0b330cafae2e4edbe785d..929538efae2611260cdf71b3539bc33949ba4ba7 100644 (file)
@@ -366,8 +366,9 @@ void PowerPCAsmPrinter::printOp(const MachineOperand &MO,
       return;
     }
     
-    // External global variables need a non-lazily-resolved stub
-    if (GV->isExternal() && getTM().AddressTaken.count(GV)) {
+    // External or weakly linked global variables need non-lazily-resolved stubs
+    if ((GV->isExternal() || GV->hasWeakLinkage()) && 
+        getTM().AddressTaken.count(GV)) {
       GVStubs.insert(Name);
       O << "L" << Name << "$non_lazy_ptr";
       return;