[llvm-commits] [llvm] r45848 - in /llvm/trunk/lib/Target: PowerPC/PPCAsmPrinter.cpp PowerPC/PPCTargetAsmInfo.cpp X86/X86AsmPrinter.cpp X86/X86TargetAsmInfo.cpp
Dale Johannesen
dalej at apple.com
Thu Jan 10 17:10:00 PST 2008
On Jan 10, 2008, at 4:59 PM, Evan Cheng wrote:
> How about ARM?
>
> Evan
Hadn't thought of that, but yeah, I should make the substantiative
changes there too.
> On Jan 10, 2008, at 4:54 PM, Dale Johannesen wrote:
>
>> Author: johannes
>> Date: Thu Jan 10 18:54:37 2008
>> New Revision: 45848
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=45848&view=rev
>> Log:
>> Weak things initialized to 0 don't go in bss on Darwin.
>> Cosmetic changes to spacing to match gcc (some dejagnu
>> tests actually care).
>>
>>
>> Modified:
>> llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp
>> llvm/trunk/lib/Target/PowerPC/PPCTargetAsmInfo.cpp
>> llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp
>> llvm/trunk/lib/Target/X86/X86TargetAsmInfo.cpp
>>
>> Modified: llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp?rev=45848&r1=45847&r2=45848&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp (original)
>> +++ llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cpp Thu Jan 10
>> 18:54:37 2008
>> @@ -767,7 +767,7 @@
>> case Function::InternalLinkage: return TAI->getTextSection();
>> case Function::WeakLinkage:
>> case Function::LinkOnceLinkage:
>> - return ".section
>> __TEXT,__textcoal_nt,coalesced,pure_instructions";
>> + return "\t.section
>> __TEXT,__textcoal_nt,coalesced,pure_instructions";
>> }
>> }
>>
>> @@ -869,13 +869,13 @@
>>
>> // Prime text sections so they are adjacent. This reduces the
>> likelihood a
>> // large data or debug section causes a branch to exceed 16M limit.
>> - SwitchToTextSection(".section __TEXT,__textcoal_nt,coalesced,"
>> + SwitchToTextSection("\t.section __TEXT,__textcoal_nt,coalesced,"
>> "pure_instructions");
>> if (TM.getRelocationModel() == Reloc::PIC_) {
>> - SwitchToTextSection(".section
>> __TEXT,__picsymbolstub1,symbol_stubs,"
>> + SwitchToTextSection("\t.section
>> __TEXT,__picsymbolstub1,symbol_stubs,"
>> "pure_instructions,32");
>> } else if (TM.getRelocationModel() == Reloc::DynamicNoPIC) {
>> - SwitchToTextSection(".section
>> __TEXT,__symbol_stub1,symbol_stubs,"
>> + SwitchToTextSection("\t.section
>> __TEXT,__symbol_stub1,symbol_stubs,"
>> "pure_instructions,16");
>> }
>> SwitchToTextSection(TAI->getTextSection());
>> @@ -917,8 +917,7 @@
>>
>> if (C->isNullValue() && /* FIXME: Verify correct */
>> !I->hasSection() &&
>> - (I->hasInternalLinkage() || I->hasWeakLinkage() ||
>> - I->hasLinkOnceLinkage() || I->hasExternalLinkage())) {
>> + (I->hasInternalLinkage() || I->hasExternalLinkage())) {
>> if (Size == 0) Size = 1; // .comm Foo, 0 is undefined, avoid
>> it.
>> if (I->hasExternalLinkage()) {
>> O << "\t.globl " << name << '\n';
>> @@ -941,7 +940,7 @@
>> case GlobalValue::WeakLinkage:
>> O << "\t.globl " << name << '\n'
>> << "\t.weak_definition " << name << '\n';
>> - SwitchToDataSection(".section
>> __DATA,__datacoal_nt,coalesced", I);
>> + SwitchToDataSection("\t.section
>> __DATA,__datacoal_nt,coalesced", I);
>> break;
>> case GlobalValue::AppendingLinkage:
>> // FIXME: appending linkage variables should go into a
>> section of
>> @@ -1008,7 +1007,7 @@
>> if (TM.getRelocationModel() == Reloc::PIC_) {
>> for (std::set<std::string>::iterator i = FnStubs.begin(), e =
>> FnStubs.end();
>> i != e; ++i) {
>> - SwitchToTextSection(".section
>> __TEXT,__picsymbolstub1,symbol_stubs,"
>> + SwitchToTextSection("\t.section
>> __TEXT,__picsymbolstub1,symbol_stubs,"
>> "pure_instructions,32");
>> EmitAlignment(4);
>> O << "L" << *i << "$stub:\n";
>> @@ -1036,7 +1035,7 @@
>> } else {
>> for (std::set<std::string>::iterator i = FnStubs.begin(), e =
>> FnStubs.end();
>> i != e; ++i) {
>> - SwitchToTextSection(".section
>> __TEXT,__symbol_stub1,symbol_stubs,"
>> + SwitchToTextSection("\t.section
>> __TEXT,__symbol_stub1,symbol_stubs,"
>> "pure_instructions,16");
>> EmitAlignment(4);
>> O << "L" << *i << "$stub:\n";
>>
>> Modified: llvm/trunk/lib/Target/PowerPC/PPCTargetAsmInfo.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCTargetAsmInfo.cpp?rev=45848&r1=45847&r2=45848&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/lib/Target/PowerPC/PPCTargetAsmInfo.cpp (original)
>> +++ llvm/trunk/lib/Target/PowerPC/PPCTargetAsmInfo.cpp Thu Jan 10
>> 18:54:37 2008
>> @@ -53,7 +53,7 @@
>> UsedDirective = "\t.no_dead_strip\t";
>> WeakDefDirective = "\t.weak_definition ";
>> WeakRefDirective = "\t.weak_reference ";
>> - HiddenDirective = "\t.private_extern\t";
>> + HiddenDirective = "\t.private_extern ";
>> SupportsExceptionHandling = true;
>> NeedsIndirectEncoding = true;
>> NeedsSet = true;
>>
>> Modified: llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp?rev=45848&r1=45847&r2=45848&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp (original)
>> +++ llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp Thu Jan 10 18:54:37
>> 2008
>> @@ -173,7 +173,7 @@
>> if (C->isNullValue() && !I->hasSection()) {
>> if (I->hasExternalLinkage()) {
>> if (const char *Directive = TAI->getZeroFillDirective()) {
>> - O << "\t.globl\t" << name << "\n";
>> + O << "\t.globl " << name << "\n";
>> O << Directive << "__DATA__, __common, " << name << ", "
>> << Size << ", " << Align << "\n";
>> continue;
>> @@ -181,8 +181,9 @@
>> }
>>
>> if (!I->isThreadLocal() &&
>> - (I->hasInternalLinkage() || I->hasWeakLinkage() ||
>> - I->hasLinkOnceLinkage())) {
>> + (I->hasInternalLinkage() ||
>> + (!Subtarget->isTargetDarwin() &&
>> + (I->hasWeakLinkage() || I->hasLinkOnceLinkage())))) {
>> if (Size == 0) Size = 1; // .comm Foo, 0 is undefined,
>> avoid it.
>> if (!NoZerosInBSS && TAI->getBSSSection())
>> SwitchToDataSection(TAI->getBSSSection(), I);
>> @@ -218,9 +219,9 @@
>> case GlobalValue::LinkOnceLinkage:
>> case GlobalValue::WeakLinkage:
>> if (Subtarget->isTargetDarwin()) {
>> - O << "\t.globl\t" << name << "\n"
>> + O << "\t.globl " << name << "\n"
>> << TAI->getWeakDefDirective() << name << "\n";
>> - SwitchToDataSection(".section
>> __DATA,__const_coal,coalesced", I);
>> + SwitchToDataSection("\t.section
>> __DATA,__datacoal_nt,coalesced", I);
>> } else if (Subtarget->isTargetCygMing()) {
>> std::string SectionName(".section\t.data$linkonce." +
>> name +
>> @@ -244,7 +245,7 @@
>> // their name or something. For now, just emit them as
>> external.
>> case GlobalValue::ExternalLinkage:
>> // If external or appending, declare as a global symbol
>> - O << "\t.globl\t" << name << "\n";
>> + O << "\t.globl " << name << "\n";
>> // FALL THROUGH
>> case GlobalValue::InternalLinkage: {
>> if (I->isConstant()) {
>> @@ -348,7 +349,7 @@
>> unsigned j = 1;
>> for (std::set<std::string>::iterator i = FnStubs.begin(), e =
>> FnStubs.end();
>> i != e; ++i, ++j) {
>> - SwitchToDataSection(".section
>> __IMPORT,__jump_table,symbol_stubs,"
>> + SwitchToDataSection("\t.section
>> __IMPORT,__jump_table,symbol_stubs,"
>> "self_modifying_code+pure_instructions,5",
>> 0);
>> O << "L" << *i << "$stub:\n";
>> O << "\t.indirect_symbol " << *i << "\n";
>> @@ -369,7 +370,7 @@
>> // Output stubs for external and common global variables.
>> if (!GVStubs.empty())
>> SwitchToDataSection(
>> - ".section
>> __IMPORT,__pointers,non_lazy_symbol_pointers");
>> + "\t.section
>> __IMPORT,__pointers,non_lazy_symbol_pointers");
>> for (std::set<std::string>::iterator i = GVStubs.begin(), e =
>> GVStubs.end();
>> i != e; ++i) {
>> O << "L" << *i << "$non_lazy_ptr:\n";
>>
>> Modified: llvm/trunk/lib/Target/X86/X86TargetAsmInfo.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86TargetAsmInfo.cpp?rev=45848&r1=45847&r2=45848&view=diff
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- llvm/trunk/lib/Target/X86/X86TargetAsmInfo.cpp (original)
>> +++ llvm/trunk/lib/Target/X86/X86TargetAsmInfo.cpp Thu Jan 10
>> 18:54:37 2008
>> @@ -78,7 +78,7 @@
>> UsedDirective = "\t.no_dead_strip\t";
>> WeakDefDirective = "\t.weak_definition ";
>> WeakRefDirective = "\t.weak_reference ";
>> - HiddenDirective = "\t.private_extern\t";
>> + HiddenDirective = "\t.private_extern ";
>>
>> // In non-PIC modes, emit a special label before jump tables so
>> that the
>> // linker can perform more accurate dead code stripping.
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list