diff options
author | Tanya Lattner <tonic@nondot.org> | 2008-01-18 19:13:34 +0000 |
---|---|---|
committer | Tanya Lattner <tonic@nondot.org> | 2008-01-18 19:13:34 +0000 |
commit | b755295fdb460d0eeb7ea9dfb54d7cf43d487880 (patch) | |
tree | d4756dfa4cd6af158c28337c725697433ae4f68b | |
parent | 707e8b8267f3a748ef8ec53cfd25397810815c85 (diff) | |
download | llvm-b755295fdb460d0eeb7ea9dfb54d7cf43d487880.tar.gz |
Merge from mainline.
Revert the part of 45848 that treated weak globals
as weak globals rather than commons. While not wrong,
this change tickled a latent bug in Darwin's strip,
so revert it for now as a workaround.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_22@46167 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/PowerPC/PPCAsmPrinter.cpp | 3 | ||||
-rw-r--r-- | lib/Target/X86/X86AsmPrinter.cpp | 5 |
2 files changed, 4 insertions, 4 deletions
diff --git a/lib/Target/PowerPC/PPCAsmPrinter.cpp b/lib/Target/PowerPC/PPCAsmPrinter.cpp index fb8418157d96..d5367dca3503 100644 --- a/lib/Target/PowerPC/PPCAsmPrinter.cpp +++ b/lib/Target/PowerPC/PPCAsmPrinter.cpp @@ -917,7 +917,8 @@ bool DarwinAsmPrinter::doFinalization(Module &M) { if (C->isNullValue() && /* FIXME: Verify correct */ !I->hasSection() && - (I->hasInternalLinkage() || I->hasExternalLinkage())) { + (I->hasInternalLinkage() || I->hasWeakLinkage() || + I->hasLinkOnceLinkage() || I->hasExternalLinkage())) { if (Size == 0) Size = 1; // .comm Foo, 0 is undefined, avoid it. if (I->hasExternalLinkage()) { O << "\t.globl " << name << '\n'; diff --git a/lib/Target/X86/X86AsmPrinter.cpp b/lib/Target/X86/X86AsmPrinter.cpp index b0e8165ad1c8..f9756f046f62 100644 --- a/lib/Target/X86/X86AsmPrinter.cpp +++ b/lib/Target/X86/X86AsmPrinter.cpp @@ -181,9 +181,8 @@ bool X86SharedAsmPrinter::doFinalization(Module &M) { } if (!I->isThreadLocal() && - (I->hasInternalLinkage() || - (!Subtarget->isTargetDarwin() && - (I->hasWeakLinkage() || I->hasLinkOnceLinkage())))) { + (I->hasInternalLinkage() || I->hasWeakLinkage() || + I->hasLinkOnceLinkage())) { if (Size == 0) Size = 1; // .comm Foo, 0 is undefined, avoid it. if (!NoZerosInBSS && TAI->getBSSSection()) SwitchToDataSection(TAI->getBSSSection(), I); |